2.2. Modeling a Single Domain

After gathering and understanding requirements for a domain, we select or invent the appropriate abstractions and make detailed decisions about how the domain works. (This abstraction step is often overlooked, but it is critical to success.) The result is an executable UML model that defines the behavioral requirements for a domain in excruciating detail.

Models are both abstract and detailed at the same time. The abstraction Order, for example, abstracts away all sorts of detail, but the total cost of the order and the delivery address can't be vague, wishy-washy, or incompletely specified.

We abstract away irrelevant ...

Get Executable UML: A Foundation for Model-Driven Architecture now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.