The UML diagram for the application is shown in Figure Q1. Subscription _nextld = 1 _subscriptionRate = 69 Client _subscriptionld: int _startDate:...
View the step-by-step solution to:

Question

Screenshot 2019-10-16 at 12.57.55 AM.png


Develop

the specification by describing the classes and their relationships. Note that you are NOT required to write Python code.

  • Highlight the relationships between classes such as inheritance and object composition, and abstract superclasses, if any.
  •  Suggest a few instance (or object) variables and class variables, instance (or object) methods, class methods, abstract methods and overriding methods, if applicable, for each class.
  •  Justify your design by giving reason(s) for your design.


Analyse the above UML and explain the bullet points.

Screenshot 2019-10-16 at 12.57.55 AM.png

The UML diagram for the application is shown in Figure Q1.
Subscription
_nextld = 1
_subscriptionRate = 69
Client
_subscriptionld: int
_startDate: datetime
Clothes
_clientld: int
_client: Client
_name: str
_clothes:Clothes
clothesld: int
_deliveredDate date time
_brand: str
_address: str
balance: float
_returnedDate: datetime
_size: int
init_(self, clientld, name, address)
_init_(self, startDate, client)
_price: float
clientld(self): int
getSubscriptionRate (cls):int
onLoan: book
_init_(self, clothesld, brand, size, price)
name(self):str
subscriptionld(self): int
startDate(self):datetime
clothesld (self): int
address(self):str
address(self, newValue)
client(self):Client
brand(self):str
clothes(self): Clothes
size (self) :int
balance(self):float
addPayment(self, amt) :bool
clothes(self, newValue)
price(self):float
returnedDate(self):datetime
onLoan(self):bool
makePayment(self, amt): bool
onLoan(self, newValue)
str_(self):str
returnedDate(self, newValue)
deliveredDate(self):datetime
str_(self):str
deliveredDate(self, newValue)
returnClothes(self, returnDate):book
requestClothes(self, requestDate, clothes):bool
str_(self):str
A.
Company
clothes: _clients: {}
subscriptions: init_(self)
searchClient(self, clientld): Client
searchClothes(self): Clothes
searchSubscriptionByClientld(self, clientld):Subscription
addClient(self, cientld, name. address) :boo
addSubscription(self, clientld, startDate):bool
addClothes(self, clothe) :bool
cancelSubscription(self, clientld, cancelDate) :bool
returnClothes(self, clientld, returnDate)
requestClothes(self, clientld, requestDate,
clothes) :book
clothesStr(self):str
availableClothesStr(self):str
clientStr(self):st
subscriptionSrr(self):str
str (self):str

Recently Asked Questions

Why Join Course Hero?

Course Hero has all the homework and study help you need to succeed! We’ve got course-specific notes, study guides, and practice tests along with expert tutors.

  • -

    Study Documents

    Find the best study resources around, tagged to your specific courses. Share your own to gain free Course Hero access.

    Browse Documents
  • -

    Question & Answers

    Get one-on-one homework help from our expert tutors—available online 24/7. Ask your own questions or browse existing Q&A threads. Satisfaction guaranteed!

    Ask a Question
Ask Expert Tutors You can ask You can ask ( soon) You can ask (will expire )
Answers in as fast as 15 minutes