CS446
Assignment 2: Design Model
updated Oct. 11, 17:50
Tools:
see assignment 1.
Problem Statement:
see assignment 1.
Deliverables for assignment 2:
-
Detailed class diagram:
-
Diagram showing all essential classes needed, associations with navigability.
Use subsystems as appropriate. Add constraints or comments as appropriate.
You do not have to model low-level classes like simple lists, vectors,
user interface elements (buttons, menu, menu item, dialog boxes).
-
For each class either in a separate listing or on diagram: attributes with
visibility and type, operations with full signature (input parameters and
result values), responsibility of the class, description for each operation
or attribute where necessary (not for operations where the name says it
all like in 'set_name(String name)').
-
If appropriate, add a package diagram, showing the overall architecture
you have chosen.
For the detailed class diagram start from the class diagram you have developed
in assignment 1, but change it where necessary. Though only interaction
diagrams for two use cases have to be turned in, making interaction diagrams
also for the other use cases helps you to straighten out your class diagram.
-
Interaction diagrams:
-
Interaction diagrams for the following two use cases (These are not necessarily
the use cases that would be designed and implemented first!):
-
An order gets canceled by a customer.
-
A book has arrived at EBook from a publisher.
-
Planning:
-
We assume the project would be implemented in four or five iterations over
the phases elaboration and construction. Make a preliminary plan as to
what you suggest the objective of each of the iterations could be concerning
prototypes/executable system and what you would implement in which iteration
(which classes or packages, which scenarios from which use cases). Explain
for each item why it appears in this iteration.
Grading:
see assignment 1.