Behavioral Modeling: State Diagrams CIS 4800 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College Copyright © 2009 John Wiley & Sons,

Slides:



Advertisements
Similar presentations
1 Behavioral Modeling Chapter 8. 2 Key Ideas Behavioral models describe the internal dynamic aspects of an information system that supports business processes.
Advertisements

ZEIT2301 Design of Information Systems Behavioural Design: State Machines School of Engineering and Information Technology Dr Kathryn Merrick.
Chapter 6: Behavioral Modeling
© 2006 ITT Educational Services Inc. SE350 System Analysis for Software Engineers: Unit 9 Slide 1 Appendix 3 Object-Oriented Analysis and Design.
Objectives Detailed Object-Oriented Requirements Definitions
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
1 Chapter 4 Dynamic Modeling and Analysis (Part I) Object-Oriented Technology From Diagram to Code with Visual Paradigm for UML Curtis H.K. Tsang, Clarence.
Slide 1 Systems Analysis & Design CS183 Spring Semester Dr. Jonathan Y. Clark Course Website:
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design Copyright 2000 © John Wiley & Sons, Inc. All rights reserved. Slide 1 The.
State Diagram. What is State Diagram?  State diagram is used to show the state space of a given class, the events that cause a transition from one state.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
State Machine Diagrams (State Chart in UML 1) Specifying Control (ref: Chapter 11 Bennett, Mc Robb and Farmer)
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
THE OBJECT-ORIENTED DESIGN WORKFLOW Statechart Diagrams.
State Change Modelling. Aim: To introduce the concept and techniques for describing the changes in state that may occur to an object in its lifetime.
UML Sequence Diagrams Eileen Kraemer CSE 335 Michigan State University.
7. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Detailed Object-Oriented Requirements Definitions  System Processes—A Use.
Systems Analysis and Design in a Changing World, 6th Edition
UML an overview Compiled by:Dr. Avi Rosenfeld Based on:
Advanced Behavioral Modeling
Detailed Object-Oriented Requirements Definitions
Slide 1 Chapter 8 Behavioral Modeling. Slide 2 Key Ideas Behavioral models describe the internal dynamic aspects of an information system that supports.
SE-565 Software System Requirements More UML Diagrams.
UML Sequence Diagrams Michael L. Collard, Ph.D. Department of Computer Science Kent State University.
State and Sequence Diagrams Modelling dynamic information So far we have seen: Use Case Diagrams – requirements capture, interface.
Chapter 10 State Machine Diagrams
State Diagrams / System Sequence Diagrams (SSDs)
Systems Analysis and Design in a Changing World, Fifth Edition
Systems Analysis and Design in a Changing World, 6th Edition
Dynamic Modeling Chapter 11 Part of Analysis Modeling Designing Concurrent, Distributed, and Real-Time Applications with UML Hassan Gomaa (2001)
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
Behavioral Modeling: Sequence and Communication Diagrams Copyright © 2009 John Wiley & Sons, Inc. Copyright © 2005 Pearson Education Copyright © 2009 Kannan.
Behavioral Modeling Chapter 8.
CSIS3600 System Analysis and Design Statechart Diagrams.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
PowerPoint Presentation for Dennis & Haley Wixom, Systems Analysis and Design, 2 nd Edition Copyright 2003 © John Wiley & Sons, Inc. All rights reserved.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 state charts 1 object states an object state is a condition or situation during the life.
Information System Design IT60105
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
Behavioral Modeling Chapter 8
Design CIS 4800 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College Copyright © 2009 John Wiley & Sons, Inc. Copyright © 2008 Course.
Systems Analysis and Design in a Changing World, 6th Edition 1 Chapter 5 INTRODUCTION TO SYSTEMS ANALYSIS AND DESIGN: AN AGILE, ITERATIVE APPROACH CHAPTER.
12 Chapter 12: Advanced Topics in Object-Oriented Design Systems Analysis and Design in a Changing World, 3 rd Edition.
State Modeling. Events An event is an occurrence at a point in time, such as user depresses left button or.
Systems Analysis and Design in a Changing World, Fourth Edition
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
States.
State Chart diagram Week objective Describe State chart Diagrams in Dynamic Modelling 2.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 26. Review UML behavioral Diagrams – Sequence diagram.
 Engineering Quality Software.  Today o State Diagrams Jerry Kotuba SYST30009-Engineering Quality Software 2.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
1 7 Systems Analysis and Design in a Changing World, 2 nd Edition, Satzinger, Jackson, & Burd Chapter 7 The Object-Oriented Approach to Requirements.
Chapter 7 Behavioral Modeling Brandon A. Jones Stand and Deliver ITEC March 6, 2011.
Activity Diagrams Copyright © 2009 John Wiley & Sons, Inc. Copyright © 2005 Pearson Education Copyright © 2009 Kannan Mohan CIS 4800 Kannan Mohan Department.
1 Object Oriented Analysis System modeling = Functional modeling + Object modeling + Dynamic modeling Functional modeling = Use cases Object modeling =class.
PowerPoint Presentation for Dennis, Wixom & Tegarden Systems Analysis and Design Copyright 2001 © John Wiley & Sons, Inc. All rights reserved. Slide 1.
Systems Analysis and Design in a Changing World, Fourth Edition
The Movement To Objects
Systems Analysis and Design with UML Version 2.0, Second Edition
Systems Analysis and Design
PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG
Systems Analysis and Design
State Machine Diagrams
States.
Unified Modeling Language
States.
Sample Test Questions Please identify the use cases of the system that cover all the behaviors described in the system specification. Please identify.
State Machine Diagram.
Presentation transcript:

Behavioral Modeling: State Diagrams CIS 4800 Kannan Mohan Department of CIS Zicklin School of Business, Baruch College Copyright © 2009 John Wiley & Sons, Inc. Copyright © 2005 Pearson Education Copyright © 2009 Kannan Mohan

Learning Objectives Explain how statecharts can be used to describe system behaviors Use statecharts to model object and system behaviors Explain how state charts are different from other diagrams that we have seen so far

Analysis and Design so far… Use case diagrams – What? Shows functionalities of the system that provides measurable value to actors – Why? Must understand functionality of the system from the perspective of one or more actors that interact with the system Class diagrams – What? Shows elements in the system, static structure, things and relations – Why? Must represent elements that are to be remembered by the system; Used to understand the system structure; Interaction of classes fulfill functionalities

Analysis and Design so far… Interaction diagrams (Sequence and communication) – What? Represents sequence of interactions among a set of objects – Why? Must capture interactions among objects in a chronological order – this represents how a use case is executed in a particular scenario; Use case realization State diagrams – What? Show the possible interesting states that objects of a class can have and the events that cause the transitions to and from those states – Why? Must capture ‘temporal’ evolution of an object in response to interactions

State Diagrams A dynamic model that shows the different states through which a single object passes during its life in response to events, along with its responses and actions Typically not used for all objects – Just for complex ones Does an object behave differently to stimuli from environment and other objects when it is in different states?

Simple Statechart for a Printer

Sample State Diagram for Patient Class

Parts of a State Chart Pseudo state – starting point of a statechart State – condition that occurs during an object’s life when it satisfies some criteria, performs some action, or waits for an event Transition – movement of object from one state to another state Message event – trigger for the transition

Vending Machine Example

Seminar

State Details Based on attribute values Specifies the response of an object to input events – Response qualitatively different in different states – E.g.: Solvent customer places order

State Details Response to input events may be an action or change of state – E.g.: Place order, become insolvent Often associated with value of an object satisfying some condition – Customer credit limit balance – change in the value of this attribute might dictate state of solvency

State Transition Details If an event occurs, the transition is fired A transition can lead to the same state A state transition may have an action and/or a guard condition associated with it An ACTION is behavior that occurs when the state transition occurs A GUARD CONDITION is a Boolean expression of attribute values that allows a state transition only if the condition is true

Concurrency Concurrency – condition of being in more than one state at a time Objects in a system are inherently concurrent Concurrency within an object can be represented by multiple subsets of states, each with their own initial state Differentiated by different state variables

Concurrent States for a Printer in the On State

Nested States Composite states – state containing multiple levels and transitions – Can contain nested states and transition paths

Developing State charts Review class diagram and select classes that require statecharts For each selected class in group, brainstorm to list all status conditions you can identify Begin building statechart fragments by identifying transitions that cause object to leave identifying state Sequence these state-transition combinations in correct order

Developing State charts (contd.) Review paths and look for independent, concurrent paths Look for additional transitions – Take every pairwise combination of states and look for valid transition between states Expand each transition with the appropriate message event, guard-condition, and action- expression Review and test each statechart

Summary What is the purpose of state diagrams? Develop state diagrams for specific classes in a given case. What are concurrent and nested state diagrams? What are the relationships between the diagrams that we have seen so far? – For example, how is a transition in a state chart related to a message in a sequence diagram?