Information Systems Analysis and Design CSC340 IV State and Activity Diagrams State Diagrams Events and States Superstates Activity Diagrams Petri Nets 2002 Jaelson Castro and John Mylopoulos Statechart Diagrams 1 Information Systems Analysis and Design CSC340 State Diagrams Statecharts These are state transition diagrams with some interesting additions which can be used to describe the operating environment of the system interactions of the system with that environment also the lifetime of some object a person a student within or without the system Transitions are supposed to represent actions which occur quickly and are not interruptible A transition can have an associated triple Event Condition Action all parts of this triple are optional States are supposed to represent longer running activities or other things What constitutes quickly and longer running depends on the application 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 2 1 Information Systems Analysis and Design CSC340 State Diagram for Purchase Order condition get order Checking Dispatching all items in stock Do check items Do package items start some item not In stock event action deliver package Item received all items in stock Item received some item not In stock Waiting 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 3 Information Systems Analysis and Design CSC340 Events An event is a happening that the system needs to know about For example completing an assignment failing an exam or a system crash are all events An event may trigger an action by an actor or the system being developed In UML there are four types of events Change events occur when a condition becomes true e g when balance 0 Signal events designate the receipt of an explicit real time signal from one object or actor to another Call events indicate the receipt of a call for an operation by an object or actor Time events mark the passage of a designated period of time e g after 10 seconds 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 4 2 Information Systems Analysis and Design CSC340 Course Lifetimes Initialization offerNewCourse set count 0 create CourseRoster addStudent count 10 count 10 Open Closed quarterStarted cancel cancel end state Lochovsky98 Cancelled delete CourseRoster 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 5 Information Systems Analysis and Design CSC340 States A state represents a time period during which A predicate is true e g budget expenses 0 An action is being performed e g check inventory for order items or Someone waits for an event to happen e g arrival of a missing order item A state can be on or off When a state is on all its outgoing transitions are eligible to fire For a transition to fire its event must occur and its condition must be true When a transition does fire its action is carried out States can have associated activities Special activity constructs include do stateDiagramName parameterList calls another state diagram entry action carry out the action when entering the activity exit action carry out the action when exiting 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 6 3 Information Systems Analysis and Design CSC340 Course Lifetimes Again Initialization do Initialize addStudent count 0 CourseRoster Create addStudent count 10 Open entry RegisterStudent exit CourseRoster AddStudent student count 10 cancel cancel Cancelled Closed do FinalizeCourse CourseRoster Delete quarterStarted 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 7 Information Systems Analysis and Design CSC340 Superstates State transition diagrams can be very hard to read once they grow to more than a few dozen states For UML state diagrams states can be composed into nested states or superstates Such compositions make it possible to view a state diagram at different levels of abstraction A superstate consists of one or more states When an AND superstate is on all its states are also on When an OR superstate is on one of its states is on 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 8 4 Information Systems Analysis and Design CSC340 An OR Superstate Transmission select R Neutral Reverse select N select N select F Forward 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 9 Information Systems Analysis and Design CSC340 More on Transmission Transmission select R Neutral Reverse select N select N select F Forward upshift stop First downshift 2001 Jaelson Castro and John Mylopoulos upshift Second Third downshift State and Activity Diagrams 10 5 Information Systems Analysis and Design CSC340 An AND Superstate Cancelled Waiting Checking Dispatching Delivered Authorizing Authorized Rejected 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 11 Information Systems Analysis and Design CSC340 State Diagram for Purchase Order get order Checking all items in stock Item received some item not In stock Dispatching Do package items Do check items some item not In stock Item received all items in stock Waiting deliver package cancel OR Superstate Cancelled 2001 Jaelson Castro and John Mylopoulos Delivered State and Activity Diagrams 12 6 Information Systems Analysis and Design CSC340 Bridge Vulnerability Rules Playing Bridge Rubber N S vulnerability N S game Not vulnerable Vulnerable N S game N S wins E W vulnerability E W game Not vulnerable Vulnerable E W game 2001 Jaelson Castro and John Mylopoulos E W wins State and Activity Diagrams 13 Information Systems Analysis and Design CSC340 Auto Transmission Ignition Off turn key to start Transmission in Neutral release key Starting On turn key off turn key off Transmission select R Neutral Reverse select N select F select N Forward stop upshift First downshift 2001 Jaelson Castro and John Mylopoulos upshift Second Third downshift State and Activity Diagrams 14 7 Information Systems Analysis and Design CSC340 Activity Diagrams Activity diagrams describe activities which involve concurrency and synchronization Activity diagrams are a variation of state diagrams that focuses on the flow of actions and events Can be used To model a human task a business process for instance To describe a system function that is represented by a use case In operation specifications to describe the logic of an operation 2001 Jaelson Castro and John Mylopoulos State and Activity Diagrams 15 Information Systems Analysis and Design CSC340 Firing a
View Full Document
Unlocking...