I. Use Case Model: Drawing System Sequence Diagrams (Larman Ch. 9) ------------------------------------------ SYSTEM SEQUENCE DIAGRAMS (SSDs) (CH. 9) Goal: - identify system events - frame system as a "black box" - understand system behavior better Do these for: - main success scenario - frequent or complex alternatives Example: O \|/ |---------| / \ Add File | :System | :User Main Success Scenario |---------| | addFile(fileName) | |------------------------------->| ------------------------------------------ ------------------------------------------ ANOTHER SSD O \|/ |---------| / \ Propagate File Change | :System | :User Main Success Scenario |---------| | selectPMSD(name) | |------------------------------->| | | | selectSynchPartner(name) | |------------------------------->| | | | synchFile(fileName) | |------------------------------->| ------------------------------------------ ------------------------------------------------- ITERATION POS SSD EXAMPLE FOR PROCESS SALE Example: O \|/ |---------| / \ Process Sale Scenario | :System | :Cashier |---------| | makeNewSale() | |------------------------------->| | | | enterItem(itemID, quantity) | |------------------------------->| | | | description, total | |<-------------------------------| | *[more items] | | | | endSale() | |------------------------------->| | | | totalWithTaxes | |<-------------------------------| | | | makePayment(amount) | |------------------------------->| | | | changeDue, receipt | |<-------------------------------| ------------------------------------------------- A. System boundary (9.6) Where's the system boundary here? B. Naming system events and operations (9.7) Which is better as a system event name: "enterItem" or "scan"? C. practice ------------------------------------------ FOR YOU TO DO (IN PAIRS) Create one SSDs for the alternative in StickSync's "Propagate File Change" use case. ------------------------------------------ D. Showing use case text (9.8) E. Questions Is a necessary to create SSDs for all scenarios of all use cases? how long should you spend creating SSDs?