PRJ566
description
Transcript of PRJ566
PRJ566System Sequence Diagrams
System Sequence Diagrams A system sequence diagram …. Illustrates input
and output events related to the system under discussion.
Larman, APPLYING UML AND PATTERNS, p. 173
System Sequence Diagrams The use case text and its implied system events
are input to a SSD (system sequence diagram).
Larman, APPLYING UML AND PATTERNS, p. 17
System Sequence Diagrams Use cases describe how external actors interact
with the software system… An actor generates system events to a system,
requesting some system operation to handle the event.
The use case text implies the event…the SSD makes it concrete and explicit.
Larman, APPLYING UML AND PATTERNS, p. 176
System Sequence Diagrams A system sequence diagram is a picture that
shows, for one particular scenario of a use case, the events that external actors generate, their order and the inter-system events.
All systems are treated as a black box.
Larman, APPLYING UML AND PATTERNS, p. 176
Fig. 10.2
enterItem(itemID, quantity)
:System: Cashier
endSale
makePayment(amount)
a UML loop interaction frame , with a boolean guard expression
external actor to system
Process Sale Scenario
system as black box
the name could be "NextGenPOS" but "System" keeps it simple
the ":" and underline imply an instance , and are explained in a later chapter on sequence diagram notation in the UML
a message with parameters
it is an abstraction representing the system event of entering the payment data by some mechanism
description, total
return value(s) associated with the previous message
an abstraction that ignores presentation and medium
the return line is optional if nothing is returned
total with taxes
change due , receipt
makeNewSale
[ more items ]loop
Why Draw System Sequence Diagrams? The external input events—the system events are an
important part of analyzing system behavior. System behavior is a description of what a system
does, without explaining how it does it.
Larman, APPLYING UML AND PATTERNS, p. 173
System Sequence Diagrams System events should be expressed at the
abstract level of intention rather than in terms of the physical input device.
Larman, APPLYING UML AND PATTERNS, p. 178
System Sequence Diagrams How to name system events and operations
describe at a high level i.e. enterItem instead of scanItem ‘enter’ captures the intent of the operations without
specifying a design choice (i.e. scanning)
Fig. 10.4
e n te r I te m ( ite m ID , q u a n t ity )
s c a n ( ite m ID , q u a n t ity )
: C a s h ie r
w o rs e n a m e
b e t te r n a m e
:S y s te m
System Sequence Diagram Shows the external actors that interact directly with
the system Shows the ‘system’ Shows the system events that the actors generate Done in a chronological sequence (from first to last
event over time) Order of events should follow the order of the
scenario
System Sequence Diagrams Validates use cases
helps identify processing that has not been covered by the process described in the use case
Helps us identify objects and classes
Browse Catalog SSD
ActorSystem
Selects the Browse Catalog option on the Online Auction Main Page.
Retrieves the list of categories and displays the Category Page with a drop down list of categories and an Exit Button.
Selects an option from the drop down list
Retrieves all the items for that category and displays an Item List Page showing a table with item names with a Display Button and an Exit Button.
Selects an item and clicks the Display Button.
Retrieves the product name, it’s picture and a description and displays the information on the Item Information Page with a Place Bid Button and an Exit Button.
Clicks the Place Bid Button. Use case ends and starts the Place Bid use case.
: Shopper : System
browseCatalog
catalogName
enterCatalogName(catalogName)
itemName
enterItem(ItemName)
itemDescription,itemPrice
How Many System Sequence Diagrams?
One for each of the HD scenarios in the use case specification
Larman, APPLYING UML AND PATTERNS, p. 176