What’s a Domain Model?
A domain model is a project dictionary of all the terms used in your project.
It shows graphically how all these different terms relate to each other.
It’s a simplified class diagram
It shows aggregation and generalization relationships (has-a and is-a relationships) between the domain classes.
Top 10 Domain Modeling Guidelines
1. Focus on real-world (problem domain) objects.
2. Use generalization (is-a) and aggregation (has-a) relationships to show how the objects relate to each other.
3. Limit your initial domain modeling efforts to a couple of hours.
4. Organize your classes around key abstractions in the problem domain.
5. Don’t mistake your domain model for a data model.
6. Don’t confuse an object (which represents a single instance) with a database table (which contains a collection of things).
7. Use the domain model as a project glossary.
8. Do your initial domain model before you write your use cases, to avoid name ambiguity.
9. Don’t expect your final class diagrams to precisely match your domain model, but there should be some resemblance between them.
10. Don’t put screens and other GUI-specific classes on your domain model.
Reference
Use Case Driven Object Modeling with UML: A Practical Approach. Exists at amazon.com
No comments:
Post a Comment