Earlier in the course, we defined four views of the software development lifecycle:
- the use case view,
- the logical view,
- the component view, and
- the deployment view.
This module begins our coverage of the logical view.
Once you define the expectations of the users in the use case view
, you then do most of your work in the logical view. Six different diagrams are included in the logical view:
- the class diagram,
- the object diagram,
- the dynamic models,
- the sequence diagram,
- collaboration diagrams, and
- the activity diagram.
Each diagram is a tool for discovering and describing different aspects of the system. Together they provide a complete description of your software solution. The class diagram is the most important by far, but every model needs to be tested. Use cases provide the high-level test plan.
The object diagram is ideal for testing the class diagram. The dynamic models, sequence, and collaboration diagrams are excellent for describing object interactions. The activity diagram is very good for describing the functional behavior implemented by objects.
This module will describe the class diagram and its notation and usage. We'll cover how to define individual classes and how to assemble classes to build models. Remember that although the notation and techniques may be standard, their application in real-world projects may vary widely.
After completing this module, you will be able to:
- Describe the purpose and function of the class diagram
- Define attributes and operations
- Model a class
- Model associations between classes
- Model aggregation and composition
- Model generalization
- Model composition context
In the next lesson, you will learn about the function and purpose of the class diagram.