Sequence diagrams

advertisement
Sequence diagrams
Chapter 5
Sommerville
Sequence diagrams
• Sequence diagrams are part of the UML and are
used to model the interactions between the
actors and the objects within a system.
• A sequence diagram shows the sequence of
interactions that take place during a particular
use case or use case instance.
• The objects and actors involved are listed along
the top of the diagram, with a dotted line drawn
vertically from these.
• Interactions between objects are indicated by
annotated arrows.
Chapter 5 System modeling
2
Sequence diagram for View patient
information
Chapter 5 System modeling
3
Sequence diagram for Transfer Data
Chapter 5 System modeling
4
Sequence Diagrams
• Detail how operations are carried out
• Dynamic Diagrams
• Organized according to time
– The time progresses as you go down the page
– The objects involved in the operation are listed
from left to right according to when they take part
in the message sequence.
• Create a sequence diagram for each scenario
Sequence Diagrams
: Customer
1. CreateOrder
2. request
: Order
: item
3. addToOrder(:item)
4. Checkout
4.1. CreatePayment
4.1.1. GetPaymentInfo
4.1.1.1. PaymentInfo
4.1.1.1.1. Success
4.2. Save or decline
4.3. Order Result
: payment
Sequence Diagrams
• Sequence diagrams show how instance
exchange messages.
• An instance can be:
– An object, not a class
– An actor
• Object-Types in sequence Diagram
– 1- interface object
– 2-entity object
– 3-control object
• Sequence diagrams contain the same
Sequence Diagrams
• Messages can be Simple like
– One object sends a message to a passive object
– The sender does not care what happens to the
message
– Useful when the recipient can not be controlled
• Messages can be Return messages
– Results of procedure calls
‫د‪ .‬محمود القوتلي‬
‫تحليل النظم‬
Sequence Diagrams
• Messages can be Constructors, the message
creates the recipient
• Messages can be Destructors, the message
destroys the recipient.
: Customer
: Customer
1. Create
1. Create
: Order
2. Destroy
: Order
Sequence Diagrams
• Messages have sequence numbers
– The numbers represent the order of interaction
: Customer
1. Create
2. Destroy
: Order
Sequence Diagrams
• Messages have sequence numbers
– Sequence number can be hierarchical
: Customer
: store
1. Create
: Item
1.1. CheckStock
1.1.1. Yes
Sequence Diagrams
• Messages have a specific format
[Condition] Sequence Number. Return value := MessageName(Arguments)
[Condition] Sequence Number.
*[iteration]
Return value := MessageName(Arguments)
Effective Sequence Diagrams
• Use only instances and actors
• Concentrate on actions, not on instance static
details
• Imaging as much real time scenarios as you can,
and model them
• Keep in mind that a programmer will read your
design, so make it as clear as possible.
• Sequence diagrams contain the same information
as Collaboration diagrams, but emphasize the
sequence of the messages instead of the
relationships between the objects.
Behavioral models
• Behavioral models are models of the dynamic
behavior of a system as it is executing. They show
what happens or what is supposed to happen
when a system responds to a stimulus from its
environment.
• You can think of these stimuli as being of two
types:
– Data Some data arrives that has to be processed by
the system.
– Events Some event happens that triggers system
processing. Events may have associated data,
although this is not always the case.
Chapter 5 System modeling
15
Data-driven modeling
• Many business systems are data-processing
systems that are primarily driven by data. They
are controlled by the data input to the system,
with relatively little external event processing.
• Data-driven models show the sequence of actions
involved in processing input data and generating
an associated output.
• They are particularly useful during the analysis of
requirements as they can be used to show endto-end processing in a system.
Chapter 5 System modeling
16
An activity model of the insulin pump’s
operation
Chapter 5 System modeling
17
Download