UML Class Diagram

Hello everyone,

I was asked to produce UML Class diagram (for charity), but I am new to it and I found allot of ways of doing them. I would like to get some comments from experienced people. Basically what are logical question to ask when link classes and other tips to produce them.
Here is mine first: class diagram
LVL 16
Who is Participating?
TommySzalapskiConnect With a Mentor Commented:
Ah, we call them Shopping Carts out here in the West.

Okay. I would rename Address Book to just Address, so it will make sense for a customer to have multiple addresses.

I would use the open diamond (aggregation) to show that the trolley contains products and have 1 trolley to 0...* items.

There should be a one to one between trolley and order. I agree with the closed diamond (containment). From what you say, there should also be a one to one from order to payment not many to many.

Other than that, it looks great.
TommySzalapskiConnect With a Mentor Commented:
It looks pretty good to me. I don't know what a Trolley is.
Can one payment cover multiple orders? I could see how that could be the case (that is how you currently have it)

Do the orders have a shipping address separate from the customer? I'm doubting that association line between the order and address book (especially since I don't see the shipping address listed in the variables for Order).
SSupremeAuthor Commented:
Thanks for response.
Trolley is shopping trolley like, you put all goods there and then go to check out, is it called "order line"?
I think one payment for each trolley as as trolley per order.

Customer can have his own list of addresses for shipment. S/He can add new address by entering postcode and flat or house number, some customers can have identical addresses.
Probably, database with addresses will be outsourced from another company, which could provide this service.

Does it sound  relative to diagram?
SSupremeAuthor Commented:
Thanks a lot for comments.
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.