The requirements and use cases we gather for a domain provide an external view of its required behavior. Once we have a handle on a good number of use cases, we can begin abstraction of those requirements into a model that formalizes knowledge about the domain. The resulting model is an internal view: It expresses our solution to meeting the requirements. Many possible executable formalisms could be used to model the domain. Executable UML is an abstract, object-oriented formalism; hence, it employs classes, attributes, and other object-oriented constructs as a way to organize abstractions. |