Chapter 9 Domain Model
The most important OAA object, attribute, association
Domain Model
- illustrate meaningful conceptual classes in the problem domain
- is a source of inspiration for design software objects
Avoid XXDatabase or function in Domain Model
How to Create a Domain Model
- Find the conceptual classes(List the candidate conceptural classes)
- Draw them as classes in a UML class diagram
- Add associations and attributes
How to find Conceptual Classes
- Reuse or modify existing models
- Use a category list
- Identify noun phrases
Domain Modeling Guidelines
- On Naming and Modeling things
- The Mapmaker Strategy or Use the Domain Vocabulary strategy
- Use the existing names in the territory
- exclude irrelevant features
- do not add things that are not there
- The Mapmaker Strategy or Use the Domain Vocabulary strategy
- A common mistake : represent something as an attribute when it should have been a concept
- If X cant be thought as number or text, X is probably a conceptual class
Description Classes
When there is a need to be a description about an item or service, independent or the current existence
Deleting instances of things they describe results in a loss of info that needs to be maintained
The UML Association Notation
Common Association List