How do we convince people that in programming simplicity and clarity —in short: what mathematicians call "elegance"— are not a dispensable luxury, but a crucial matter that decides between success and failure? - Dijkstra
System Sequence Diagrams
System Behavior What does the system do? System Sequence Diagram (SSD) One technique to clarify input and output system events Typically interaction between actor and system has form of a dialog – a request event followed by a response event
System Sequence Diagram A picture that shows, for a particular scenario of a use case, the events that external actors generate, their order, and inter-system events Systems are treated as black box (don’t care how) Emphasis is on events/communication between external actors and system
Fig. 10.2
System Sequence Diagram Notation Iteration with box and continuation clause Return values Message with parameters Naming events Use action-direct object style SSD is part of use case model A visualization of the interactions in use case
Fig. 10.1
System Sequence Diagrams Guideline: Draw an SSD for main success scenario of each use case, possibly for frequent or complex alternative scenarios SSD answers question: What (external) events are coming into our system? System software reacts to: External events from actors Timer events Faults or exceptions (from external sources)
System Sequence Diagrams System behavior – what system does – not how Diagrams – UML has sequence diagrams, SSD is a particular form of a sequence diagram