Project Organization

A typical project RAD (Requirements Analysis Document) contains two top-level packages:

The Analysis model instantiates the Entity-Controller-Boundary Pattern:

Note that the entities package does not depend on boundaries or controllers. Generally, the controllers do not depend on the boundaries. (Although they may define interfaces that are implemented by classes in these other packages.)

Each package may contain multiple diagrams. Diagrams may include classes and interfaces from other packages.

There should be at least one boundary object for each actor. Boundary objects to secondary actors are usually called gateways, and usually implement some convenient interface that can be used by other objects to interact with actors.

Primary actors interact with the system through control panels which contains menus and views.

The controllers package instantiates the Use Case Controller Pattern. Each controller has an associated collaboration containing one or more sequence diagrams (interactions).