State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review...
Transcript of State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review...
![Page 1: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/1.jpg)
State Machine Diagram
Identifying Object Behaviour
![Page 2: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/2.jpg)
State Machine Diagram
• State machine diagram is UML 2.0 diagram that models object states and transitions
• Complex problem domain classes can be modelled
• State of an object
• A condition that occurs during its life when it satisfies some criterion, performs some action, or waits for an event
• Each state has unique name and is a semi permanent condition or status
• Transition
• The movement of an object from one state to another state
Systems Analysis and Design in a Changing World, 5th Edition 2
![Page 3: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/3.jpg)
Simple State Machine Diagram for a Printer
3
![Page 4: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/4.jpg)
State Machine Terminology• Pseudo state – the starting point of a state machine, indicated
by a black dot
• Origin state – the original state of an object from which the transition occurs
• Destination state – the state to which an object moves after the completion of a transition
• Message event – the trigger for a transition, which causes the object to leave the origin state
• Guard condition – a true/false test to see whether a transitioncan fire
• Action expression – a description of the activities performed as part of a transition
4
![Page 5: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/5.jpg)
Composite States and Concurrency—States within a State
5
![Page 6: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/6.jpg)
Concurrent Paths for Printer in the On State
6
![Page 7: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/7.jpg)
Rules for Developing State Machine Diagram
• Review domain class diagram, select important ones, and list all state and exit conditions
• Begin building state machine diagram fragments for each class
• Sequence fragments in correct order and review for independent and concurrent paths
• Expand each transition with message event, guard-condition, and action-expression
• Review and test each state machine diagram
7
![Page 8: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/8.jpg)
State machine for Ticket Object
![Page 9: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/9.jpg)
State machine for Lift
![Page 10: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/10.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 10
RMO Domain Class States for SaleItemObject
![Page 11: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/11.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 11
Final State Machine Diagram for SaleItem Object
• addItem() and archive() transitions added
• markBackOrdered() transition added
![Page 12: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/12.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 12
RMO Domain Class States for SaleObject
![Page 13: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/13.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 13
Initial State Machine Diagram for RMO Sale Object
![Page 14: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/14.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 14
Final State Machine Diagram for SaleObject
![Page 15: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/15.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 15
Extending and IntegratingRequirements Models
• Use cases• Use case diagram
• Use case description
• Activity diagram
• System sequence diagram (SSD)
• Domain Classes • Domain model class diagram
• State machine diagram
![Page 16: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/16.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 16
Integrating Requirements Models
![Page 17: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/17.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 17
Summary
Chapters 3 and 4 identified and modeled the two primary
aspects of functional requirements: use cases and
domain classes
This chapter focuses on additional techniques and
models to extend the requirements models to show more
detail
Fully developed use case descriptions provide
information about each use case, including actors,
stakeholders, preconditions, post conditions, the flow of
activities and exceptions conditions
Activity diagrams (first shown in Chapter 2) can also be
used to show the flow of activities for a use case
![Page 18: State Machine Diagram Shoubra/Electrical... · Rules for Developing State Machine Diagram •Review domain class diagram, select important ones, and list all state and exit conditions](https://reader031.fdocuments.in/reader031/viewer/2022013020/5eae58248637eb350e63b5ca/html5/thumbnails/18.jpg)
Systems Analysis and Design in a Changing World, 6th Edition 18
Summary (continued)
System sequence diagrams (SSDs) show the inputs and
outputs for each use case as messages
State machine diagrams show the states an object can
be in over time between use cases
Use cases are modeled in more detail using fully
developed use case descriptions, activity diagrams, and
system sequence diagrams
Domain classes are modeled in more detail using state
machine diagrams
Not all use cases and domain classes are modeled at
this level of detail. Only model when there is complexity
and a need to communicate details