The Computation Independent Model

Each use case elaboration machine can be viewed as a submachine that represents the entire system.

For example, here's a statechart machine representing the entire ATM:

In effect, this machine represents the ultimate goal of the analysis phase: the computation-independent model or CIM.

Scenarios as an activity diagram

The CIM loses some of the interaction with the user. We can restore this using the close cousin of the statechart diagram: the activity diagram.

First read the Activity Diagram Lecture.

In this case the actors and use cases are mapped to swim lanes. States represent actions such as "display prompt", "enter data", and "compute result". Transitions are triggered by the completion of an activity:

Here's an activity diagram representing our transfer funds use case:

Of course we can take this one step further and model the entire system using an activity diagram: