This page illustrates basic UML notation as shown in
It also illustrates a domain diagram in that there are no types, constructors, setters, getters, or other details. Note also that objects with associations do not show up in the list of attributes; eliminate redundant notation.The description of this problem would be: An order is made of multiple order lines, each order line is for an item with a description and quantity. There are two items that require special treatment: perishable items (which must be stored below a given temperature) and lithium-powered items (which must be stored below 140°C and must be kept dry). Each order has a destination which can be to an apartment or a house. Apartments have admit codes for the apartment mailroom, houses can have special directions recorded as text. When scheduling an order for delivery, the system must check that all items are in stock as well as confirm that a mailroom code exists for apartments.
senditnow.zip
;
individual files:
Main.java
is not on the class diagram. This is
typical; the main class is just a requirement for Java and often does not
show up in a domain diagram.
To "test" the class diagram - that is, to check that all domain elements
are captured - we write up a simple sequence diagram for scheduling an
order for delivery. The part of the system that makes the request is
generically marked as "controller". We aren't analyzing it at this stage,
so we just need a placeholder for whatever makes the method call on an
order. A possible diagram is here, and
the resulting class model
is senditnow-sequence.qea
. Normally
you would put both the sequence and the class model in a single file, but
we wanted to keep the original diagram in place so we can illustrate
creating this sequence diagram in class.