90-754 Homework #6: Criteria and Comments
14 April 1999 
A sample solution to is provided here.

Overall criteria for the individual assignment:
Score Description
10 Grasp of the core concepts demonstrated and all parts of assignment completed
9 Mostly complete, but missed more than one important feature of UML, or incorrectly applied some transformations
8 Attempted, but did not complete some parts of the problem.
0 No attempt made

Part 1
Part 2
Part 3

Part 1: UML Versions of the E10.2a and b diagrams

Number Description
1.1 UML does indeed have association classes, so there was no need to convert the diagram's association classes to another form.
1.2 Incorrect multiplicity; a solid circle in OMT indicates zero or more, which is "*" or "0...*"; an open circle indicates optional, which is "0...1" in UML.  An unmarked line indicates "1" in UML.
1.3 UML's association classes work the same way as the OMT versions, so there was no need to do anything different.
1.4 Qualifiers on associations work the same way in UML as they do in OMT, so there was no need to do anything different.
1.5 OMT class diagrams are best represented in UML by UML Class Diagrams, not object or instance diagrams.
Back to top

Part 2: UML Versions of the transformations

Number Description
2.1 UML has no way of representing derived associations, attributes, or classes, so rules involving them have no UML equivalent.
2.2 The question asked that these translation rules be translated into UML; at minimum we expected you to explicitly show the pattern rules for the transformations that you used to answer part 3.  You were still awarded partial credit based on your answer to part 3, because I am pathetically lenient and generous.
2.3 The arrows in these transformation rules have a very specific meaning, and are not bidirectional.  The arrows indicate the direction in which the transformation causes a diagram to become more restrictive, specific, and precise.  It does NOT indicate the direction in which the transformation can be applied; all of the transformations can be applied either right-to-left or left-to-right.
Back to top

Part 3: Applying a sequence of UML transformations to E10.2a to make it look like E10.2b

Number Description
3.1 It would have been nice if you could have shown these steps more explicitly.  Specifically, it would be useful for you to show the complete diagram after each transformation, instead of just the affected part.  But I understood what you meant.

Back to top