Previous Page  29 / 56 Next Page
Information
Show Menu
Previous Page 29 / 56 Next Page
Page Background

27

One Model, Many Interests, Many Views

The arrows on a sequence diagram represent messages sent and received between interactions. These

can be synchronizing messages (triggers) or simple data exchanges (inputs). Often, basic inputs (data

stores) are not shown on the sequence diagram in order to focus on interactions which synchronize

activities across blocks. An arrow exiting the node is an output that is input to or triggers another

function. Arrows entering from the left edge of the diagram are external messages that originate

outside of this decomposition. Arrows that exit the right edge of the diagram are outputs that are

consumed elsewhere in the system model.

Given its long history of use and rather simple semantics, the sequence diagram is an effective

representation when used with any audience to convey message passing and interactions between

systems or blocks. The sequence diagram is particularly useful in developing logical threads to elaborate

use cases. (As logic becomes more complex, complete sequence diagrams often become overloaded.)

The sequence diagram is frequently a diagram of choice in communicating behavioral dimensions with

software engineers, but it must be used with care. The diagram is an incomplete specification of the

logical architecture and should always be used in conjunction with a more complete representation

(classically an activity diagram) when used as a specification for implementation.

Activity Diagram

The activity diagram (and the Enhanced Functional Flow Block Diagram, or EFFBD, its cousin in

traditional representations) are the most complete representations of behavior. The activity diagram

unambiguously represents the flow of control through sequencing of activities and control constructs

as well as the data interactions overlaid to present a more complete picture.

Level of Detail:

Highest

Audience:

System and software engineers

Content:

Composition, triggering, and allocation

Use:

Full specification of system behavior; best at lower levels of decomposition

(design view)