Topics

Activity Diagrams To top of page

The activity diagram notation is further explained in Guidelines: Activity Diagram in the Business Use Case Model. This page exemplifies how the notation is applied to describe a business use case realization.

An activity diagram of a business use case realization explores the ordering of tasks or activities that accomplish business goals, and that satisfy commitments between external business actors and internal business workers. An activity may be a manual or automated task that completes a unit of work. 

Activity diagrams help:

  • Provide a rationale for and understanding of the introduction of information systems into the business. 
  • Establish objectives for system development projects to implement business transformation initiatives. 
  • Justify automation investment based on detailed business process metrics. 

Compared to a sequence diagram, which could be perceived as having a similar purpose, an activity diagram with swimlanes and object flows focuses on how you divide responsibilities into classes, whereas the sequence diagram helps you understand how objects interact and in what sequence. Activity diagrams focus on the workflow, while sequence diagrams focus on handling business entities. Activity diagrams and sequence diagrams could be used as complementary techniques, where a sequence diagram shows what happens in an activity state.

Using Swimlanes To top of page

If you are using swimlanes and the swimlanes are coupled to classes (mainly business workers) in the business analysis model, you are using the activity diagram to document business use case realizations, rather than business use cases.

As an example, we show an activity diagram of the realization of the business use case Proposal process, which you can find described Guidelines: Business Use Case.

Diagram described in accompanying text.

The realization of the business use case Proposal Process

The activity diagram provides the details of what happens within the business by examining people playing specific roles (the business workers) and the activities they perform. For application-development projects, these diagrams provide a detailed understanding of the business area that will be supported or impacted by the new application. They help establish connection points to the proposed new system, and these connection points give rise to system use cases. 

Using Object Flows To top of page

In this context, object flows are used to show how business entities are created and used in a workflow. Object flows allow you to show inputs and outputs from activity states in an activity graph. There are two elements to the notation: 

  • The object flow state represents an object of a class that participates in the workflow the activity graph represents. The object may be the output of one activity and the input of many other activities. 
  • The object flow is a kind of control flow with an object flow state as input or an output. 

The object flow symbol represents the existence of an object in a particular state, not just the object itself. The same object can be manipulated by a number of successive activities that change the object's state. The object can then be displayed multiple times in an activity graph, with each appearance representing a different state during its life. The object's state at each point may be placed in brackets and appended to the name of the class. 

Diagram described in accompanying text.

A generic sales process presented using object flows to show how an order changes it state while executing the workflow.  See Guidelines: Activity Diagram in the Business Use Case Model

An object flow state may appear as the target of one object flow (transition) and the source of multiple object flows (transitions). 

Diagram described in accompanying text.

An activity diagram for the Proposal process, using object flows to show key business entities involved

Object flows can be compared to data flows within the workflow of a business use case. Unlike traditional data flows, however, object flows exist at a definite point within an activity graph.

Class Diagrams To top of page

Class diagrams show associations, aggregations and generalizations between business workers and business entities. The following kinds of class diagrams might be of interest:

  • Inheritance hierarchies.
  • Aggregates of business workers and business entities.
  • How business workers and entities are related by means of associations.
Class diagrams show generic structures in the business domain model, but can also be part of the documentation of a business use case realization (see Guidelines: Business Use Case Realization) by showing it participating business workers and business entities. 


Diagram described in accompanying text.

A class diagram showing participating business workers and business entities in the business use case Individual Check-in.

Communication Diagrams To top of page

A communication diagram is semantically identical to a sequence diagram, but focuses on the objects, while the latter focuses on the interactions. A communication diagram should present the subset of objects relevant to the affected working sequence, including their links, messages, and message sequences.

Sequence Diagrams To top of page

A sequence diagram graphically depicts the details of the interaction among business workers, business actors, and how business entities are accessed, during the performance of a business use case. A sequence diagram briefly describes what the participating business workers do, and how the business entities are manipulated, in terms of activations, and how they communicate by sending messages to one another.

Diagram described in accompanying text.

A sequence diagram of part of an Individual Check-in business use case.

The same information that can be found in a sequence diagram can be presented in a communication diagram instead.

Statechart Diagrams To top of page

Generally, you can use a state diagram to illustrate which states a business worker or a business entity can have - the events that cause a transition from one state to another; and the actions that result from a state change. A statechart diagram often simplifies the validation of the class design.

For each state that an object of the class can enter, a diagram shows the messages it can receive, the actions to be carried out, and the state the object of the class will be in thereafter.

Diagram described in accompanying text.

The business entity Baggage described with a statechart diagram.



Rational Unified Process   2003.06.13