Modeling attributes
Modeling attribute dissection involves examining all of the elements
Derived attribute indicator: Optional
Attribute name: Required
Data type: Required
Assignment operator and default value: Optional
Constraints: Optional
Visibility: Required before code generation
Class attribute: Optional
Attribute Modeling
System of Objects
Objects do not exist in isolation, but as part of a larger system of objects that must interact with each other. The most fundamental relationship between objects is the has a relationship.
The Java implementation of the Book class has three String attributes: title, author, and ISBN. String is a class, and the relationship between the Book class and the String class is illustrated in Figure 4-3.
Figure 4-3: The 'has a' relationship
The preceding figure is an example of a Booch class diagram. Grady Booch developed this notation for representing the relationships between the classes that comprise a software system. The simplest relationship is the has a relationship. The filled-in circle at one end of the connecting line indicates that it is the Book that has the String.