文档介绍:Object Oriented Analysis and Design Using UML
A Whitepaper by Mark Collins-Cope of Ratio Group.
Introduction
You're proficient in C++, Java or another OO language, you're designing class hierarchies, using inheritance, and plex pointer relationships to store the necessary links between your classes.
You've probably drawn blobs (representing classes in some way) on whiteboards, with connecting lines to indicate the relationships between classes (inheritance or other). Perhaps you're feeling the need for a
more formal notation to express your designs - using something that is language independent, and that enables you to consider the important aspects of design leaving the detail for later.
Alternatively, perhaps you're a Project Manager, looking to formalise the OO design process a little to make sure you're getting the most from your move to C++/Java or a similar language.
In this paper, I take a look at the UML (Unified Modelling Language) notation for Object Oriented Analysis and Design - the emerging standard designed by Booch, Rumbaugh and Jacobson, each of whom
previously had their own notations published independently.
The starting point is Object Modelling, a technique that enables you to focus on class structure, inheritance, etc., whilst avoiding language specifics such as pointer dereferencing.
Object Modelling In UML
Figure 1 - Subset of UML Object Modelling Notation - A Summary
Object Modelling is the central technique in UML. It is a language independent notation allowing the specification of classes, their data or attributes(private) and methods (public), inheritance, and other more
general relationships between classes. The notation itself is fairly simple to grasp (see figure 1), however this hides the somewhat more subtle thought processes underlying a good model.
Figure 3 - Instance Diagram Showing Branch and Account objects
By now, you may be beginning to see how Object Models can assist the analysis/design process. The