The Entity-Control-Boundary Pattern

The analysis object model instantiates the Entity-Control-Boundary Pattern (ECB)

ECB is a simplification of the Model-View-Controller Pattern.

ECB partitions the system into three types of classes: entities, controls, and boundaries.

entity, control, and boundary are official UML class stereotypes. UML has some special icons to represent them:

Here's the same diagram without the special icons:

Entities

Entities are objects representing system data: Customer, Product, Transaction, Cart, etc.

Boundaries

Boundaries are objects that interface with system actors: UserInterface, DataBaseGateway, ServerProxy, etc.

Controls

Controls are objects that mediate between boundaries and entities. They orchestrate the execution of commands coming from the boundary by interacting with entity and boundary objects. Controls often correspond to use cases and map to use case controllers in the design model.

Internal Dynamics

Associated with every control in the analysis model is a statechart diagram representing the control's internal logic.

For example:

External Dynamics

Associated with every control is a sequence diagram representing the control's interactions with boundaries, entities, and other controls.

For example:

Examples

Analysis Model for Simple ATM

Analysis Model for a Simple Web Browser