BM by States class / System

Slides:



Advertisements
Similar presentations
State Charts Mehran Najafi. Reactive Systems A reactive, event-driven, object is one whose behavior is best characterized by its response to events dispatched.
Advertisements

SYSTEMS ANALYSIS AND DESIGN TOOLS
ESE Einführung in Software Engineering 7. Modeling Behaviour Prof. O. Nierstrasz.
Using Dataflow Diagrams
UML (Sequence Diagrams, Collaboration and State Chart Diagrams) Presentation By - SANDEEP REDDY CHEEDEPUDI (Student No: ) - VISHNU CHANDRADAS (Student.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
ZEIT2301 Design of Information Systems Behavioural Design: State Machines School of Engineering and Information Technology Dr Kathryn Merrick.
Introduction to Software Engineering 7. Modeling Behaviour.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
1 Lecture 4 Behaviour Modelling Requirement Specification Object-Oriented Paradigm.
SE 555 Software Requirements & Specification 1 Activity Diagrams.
Ch5: Software Specification. 1 Dynamic modeling using UML  Static models:  Dynamic models:
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.
Chapter 8 Analysis Modeling
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.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Unified Modeling Language
CS451 Introduction to Software Engineering Behavioral Modeling.
Fundamentals of Software Engineering
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Real-Time Systems time dependent control oriented driven by events rather than data.
Chapter 7 Structuring System Process Requirements
1 Object-Oriented Modeling Using UML (2) CS 3331 Fall 2009.
Software Requirements Part 2 Requirements Engineering Modeling.
Behavioral diagrams Lecture p4 T120B pavasario sem.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 Object-oriented and Structured System Models.
SYSTEMS ANALYSIS AND DESIGN TOOLS DATA FLOW DIAGRAMS.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 8: Analysis Modeling Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Chapter 8 Analysis & Modeling. Data Modeling examines data objects independently of processing focuses attention on the data domain creates a model at.
Activity diagrams. Introduction ● Activity diagrams are a behavioural model that represent the dynamics of the system. ● An activity diagram is essentially.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Sequence Models.
Information System Design IT60105
Object Oriented Analysis & Design & UML (Unified Modeling Language)1 Part VI: Design Continuous Activity Diagams State Diagrams.
State Modeling. Events An event is an occurrence at a point in time, such as user depresses left button or.
Software Requirements Engineering Elaboration Process Lecture-14.
Dynamic Models Sequence Diagrams Collaboration Diagrams Activity Diagrams.
UML: State Chart Diagrams
Using Dataflow Diagrams – Part 1 Systems Analysis and Design, 7e Kendall & Kendall 7 © 2008 Pearson Prentice Hall.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
 Class diagrams show the classes of the system, their interrelationships (including inheritance, aggregation, and association), and the operations and.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 10: Statecharts.
Statechart diagrams  Przemysław Kostyra  Jakub Rypina.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 6: Restaurant.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
 The Sequence Diagram models the collaboration of objects based on a time sequence.  It shows how the objects interact with others in a particular scenario.
Chapter 7 Behavioral Modeling Brandon A. Jones Stand and Deliver ITEC March 6, 2011.
Ondřej Přibyl Faculty of Transportation Sciences, CTU DESIGN OF ITS SYSTEMS Project support 1 3 PROJECT SUPPORT Use cases.
1 Object Oriented Analysis and Design System Events & Contracts.
1 Object Oriented Analysis System modeling = Functional modeling + Object modeling + Dynamic modeling Functional modeling = Use cases Object modeling =class.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 8 Analysis Modeling copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Object-oriented and Structured System Models
State Machine Diagrams
Problem Solving How do we attack a large problem?
Unified Modeling Language
Requirements Modeling: Flow, Behavior, Patterns, and WebApps
Chapter 8 Analysis & Modeling
Chapter 8 Building the Analysis Model (2) Analysis Modeling
UML State Diagrams.
CS251 – Software Engineering Lectures 11 State Diagrams
Activity Diagrams Activity diagrams describe the workflow behavior of a system.  The diagrams describe the state of activities by showing the sequence.
Object Oriented System Design
Chapter 11 Requirements Modeling: Behavior, Patterns, and Web/Mobile Apps Slide Set to accompany Software Engineering: A Practitioner’s Approach, 8/e by.

Chapter 7 Requirements Modeling: Flow, Behavior, Patterns, and WebApps
Software Engineering: A Practitioner’s Approach, 6/e Chapter 8 Analysis Modeling copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University.
Software design and architecture
Sample Test Questions Please identify the use cases of the system that cover all the behaviors described in the system specification. Please identify.
Presentation transcript:

BM by States class / System In the context of behavioral modeling, two different characterizations of states must be considered: the state of each class as the system performs its function and the state of the system as observed from the outside as the system performs its function The state of a class takes on both passive and active characteristics . A passive state is simply the current status of all of an object’s attributes. The active state of an object indicates the current status of the object as it undergoes a continuing transformation or processing.

State Diagrams State diagrams are used to describe the behavior of a system. State diagrams describe all of the possible states of an object as events occur. 

BM by States Concepts state—a set of observable circum-stances that characterizes the behavior of a class/system at a given time state transition—the movement from one state to another event—an occurrence that causes the class/system to exhibit some predictable form of behavior action—process that occurs as a consequence of making a transition

BM by States a method make a list of the different states of a class/system (How does the class/ system behave?) indicate how the class/system makes a transition from one state to another (How does the class/system change state?) indicate event indicate action draw a state diagram or a sequence diagram

When to Use State Diagrams Use state diagrams to demonstrate the behavior of an object through many use cases of the system.  Only use state diagrams for classes where it is necessary to understand the behavior of the object through the entire system.  Not all classes will require a state diagram and state diagrams are not useful for describing the collaboration of all objects in a use case.  State diagrams are other combined with other diagrams such as interaction diagrams and activity diagrams

How to Draw State Diagrams State diagrams have very few elements.  The basic elements are rounded boxes representing the state of the object and arrows indicting the transition to the next state. The activity section of the state symbol depicts what activities the object will be doing while it is in that state.   

Examples: State Diagram for the Stack Class Push[N=Size]/N=N+1+1 Push[N<Size]/N=N+1+1 Pop[N > 0]/N=N-1 Push/N=N+1 Pop/ N=N-1 Pop[N = 0]/N=N-1 Empty Entry: N = 0 Not Empty Full

State Diagram for the System Inverse Push [N<Size]/N=N+1+1 Pop [N > 0]/N=N-1 Push/N=N+1 Enquing Printing Pushing Preparing N = 0 Push [N=Size]/N=N+1+1 Pop [N = 0]/N=N-1

Example of a state diagram for an Order object When the object enters the Checking state it performs the activity "check items."  After the activity is completed the object transitions to the next state based on the conditions [all items available] or [an item is not available].  If an item is not available the order is canceled.  If all items are available then the order is dispatched.  When the object transitions to the Dispatching state the activity "initiate delivery" is performed.  After this activity is complete the object transitions again to the Delivered state.

Example of a state diagram for an Order object

Example: ordinary two-position light switch Practice: Draw a state diagram for the following behaviour A light switch will have two states: up and down. (We could call them "on" and "off" if we liked.) A light switch only has one possible event: the switch gets flipped. We could call this two different events (gets flipped up, gets flipped down)