Using SUCD to Describe Use Cases ECE 621
Authoring Styles Many authoring styles exist Tailored for specific domains Real-Time systems Safety critical systems Most authoring styles use templates Overwhelming majority only use unstructured natural language Very little structure
SUCD Provides rigor Helps clarify the flow of use cases Helps avoid common mistakes Can be used to automatically generate the corresponding use case diagrams, hence ensures consistency
Headers an actions {BEGIN enter member information} Librarian enters member’s name Librarian enters member’s address Librarian enters member’s phone number {END enter member information} The Same A Header Actions The Actor
Basic Flow {BEGIN Use Case} … Headers and Actions …. {END Use Case} Reserved only for the Basic Flow
Alternative Flow AT {enter ticket order information} PERFORM search tickets IF tickets not available … Headers and Actions … The condition The Header in the Basic Flow The action in that header from the Basic Flow
Subflows SUBFLOW print receipt {BEGIN print transaction information} SYSTEM prints Customer information SYSTEM prints team hockey card information SYSTEM print items information and total price {END print transaction information} Subflow name
Extension Points – At The Base Use Case Extension Points: PUBLIC EXTENSION POINT Grand Prize Giveaway Name of the extension point
Extension Points – At The Extension Use Case PUBLIC EXTENSION POINT BEHAVIOR EXTENDING {Buy Team Merchandise : Grand Prize Giveaway} FLOW Basic Flow AT {a chance to win} IF winning ticket was entered {BEGIN grand prize giveaway} SYSTEM notifies Customer the he/she won the grand prize Customer enters phone number for a Customer service representative to call {END grand prize giveaway} CONTINUE {END Use Case} Name of the extended UC Name of the extension Point The flow inside the base UC Where to continue at base UC
Abstraction, Implementation and Specialization Keywords used in the Name section: ABSTRACT IMPLEMENTS SPECIALIZES
More Keywords (2) INCLUDE – to perform an inclusion UC PERFORM – to performed a Subflow RESUME – what to perform next AFTER – what needs to be performed first AT/IF – what condition to evaluate and where BEGIN/END – PUBLIC EXTENSION POINT – at the base UC PUBLIC EXTENSION POINT BEHAVIOR – at the extension UC PRIVATE EXTENSION POINT – private to the UC FLOW – which flow in the base UC CONTINUE – where to go back in the base UC