Problem analysis defines the resources used by the problem domain. These resources are defined as encapsulated entities, that is, exposing only their purposes and interfaces.
We will not define the implementations of these resources until their purpose and interfaces have been fully defined. So far, you have translated the vocabulary of the problem domain into class definitions. Those definitions have included only a name and the purpose of the class. In the following lessons, you will learn how to identify the required interfaces.
In this module, you learned:
- The purpose and scope of the problem analysis phase
- The two diagrams of the object model: class diagram and object diagram
- How to recognize classes and objects in the problem domain
- The UML class diagram notation (this was a review for those of you who took the UML Fundamentals course)
- How to apply basic modeling using the UML class diagram
- How to apply aggregation and composition
- How to apply generalization
- How to apply advanced associations, such as qualifiers, association classes, and reflexive associations