ZEIT2301 Design of Information Systems Behavioural Design: State Machines School of Engineering and Information Technology Dr Kathryn Merrick.

Slides:



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

©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Prof. Dr. Nizamettin AYDIN
1 Behavioral Modeling Chapter 8. 2 Key Ideas Behavioral models describe the internal dynamic aspects of an information system that supports business processes.
Chapter 6: Behavioral Modeling
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Slide 1 Systems Analysis & Design CS183 Spring Semester Dr. Jonathan Y. Clark Course Website:
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)
IMS1805 Systems Analysis Topic 3: Doing Analysis (continued from previous weeks)
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
1/31 CS 426 Senior Projects Chapter 1: What is UML? Chapter 2: What is UP? [Arlow and Neustadt, 2005] January 22, 2009.
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.
Slide 1 Chapter 8 Behavioral Modeling. Slide 2 Key Ideas Behavioral models describe the internal dynamic aspects of an information system that supports.
Object-Oriented Analysis and Design
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
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.
ZEIT2301 Design of Information Systems
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 8: Modelling Interactions and Behaviour.
ZEIT2301 Design of Information Systems
1 SAD2 - UML 2 nd Lecture Sequence Diagram and other dynamic views Lecturer: Dr Dimitrios Makris
1 SAD2 - UML 4 th Lecture Class Diagram in Construction Phase Patterns Case Study Lecturer: Dr Dimitrios Makris
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
Dynamic Modeling Chapter 11 Part of Analysis Modeling Designing Concurrent, Distributed, and Real-Time Applications with UML Hassan Gomaa (2001)
UML Diagrams: Sequence Diagrams The Requirements Model, and The Dynamic Analysis Model Instructor: Dr. Hany H. Ammar Dept. of Computer Science and Electrical.
Approaching a Problem Where do we start? How do we proceed?
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
For accurate communication, since a project can have several participants, each from different background. Represent a given aspect of the system We will.
Requirements as Usecases Capturing the REQUIREMENT ANALYSIS DESIGN IMPLEMENTATION TEST.
Behavioral Modeling Chapter 8.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
7 Systems Analysis and Design in a Changing World, Fifth Edition.
The Unified Modeling Language Part II Omar Meqdadi SE 2730 Lecture 9 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Discovering object interaction. Use case realisation The USE CASE diagram presents an outside view of the system. The functionality of the use case is.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Behavioral Modeling Chapter 8
SWT - Diagrammatics Lecture 4/4 - Diagramming in OO Software Development - partB 4-May-2000.
CSCI-383 Object-Oriented Programming & Design Lecture 12.
OMT Modeling 1. Object Model : presented by the object model and the data dictionary. 2. Dynamic Model: presented by the state diagrams and event flow.
Systems Analysis and Design in a Changing World, Fourth Edition
Testing OO software. State Based Testing State machine: implementation-independent specification (model) of the dynamic behaviour of the system State:
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 3rd Edition Copyright © 2009 John Wiley & Sons, Inc. All rights.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 26. Review UML behavioral Diagrams – Sequence diagram.
Scis.regis.edu ● CS-432: Modern Software Engineering Week 4 Dr. Jesús Borrego Lead Faculty, COS Regis University 1.
1. 2 Purpose of This Presentation ◆ To explain how spacecraft can be virtualized by using a standard modeling method; ◆ To introduce the basic concept.
PowerPoint Presentation for Dennis, Wixom, & Tegarden Systems Analysis and Design with UML, 5th Edition Copyright © 2015 John Wiley & Sons, Inc. All rights.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
Slide 1 Systems Analysis and Design with UML Version 2.0, Second Edition Alan Dennis, Barbara Wixom, and David Tegarden Chapter 8: Behavioral Modeling.
Chapter 7 Behavioral Modeling Brandon A. Jones Stand and Deliver ITEC March 6, 2011.
Unified Modeling Language. What is UML? Standard language for specifying, visualizing, constructing, and documenting the artifacts of software systems,
1 Systems Analysis and Design Behavioral Modeling Chapter 8 (Last one before the Midterm!)
UML Diagrams By Daniel Damaris Novarianto S..
Roberta Roth, Alan Dennis, and Barbara Haley Wixom
The Movement To Objects
Systems Analysis and Design with UML Version 2.0, Second Edition
TIM 58 Chapter 6, continued: Behavioral Modeling
PHÂN TÍCH THIẾT KẾ HƯỚNG ĐỐI TƯỢNG
UML Diagrams Jung Woo.
Behavioral Modeling.
UML dynamic Modeling (Behavior Diagram)
Princess Nourah bint Abdulrahman University
Princess Nourah bint Abdulrahman University
Unified Modeling Language
UML State Diagrams.
Presentation transcript:

ZEIT2301 Design of Information Systems Behavioural Design: State Machines School of Engineering and Information Technology Dr Kathryn Merrick

2 Topic 06: Behavioural Design Objectives To discuss the role of behavioural models in IS development. To understand the notation, rules and style guidelines for creating behavioural models: This week we will look at state machines Next week we will look at a subset of behavioural models called interaction diagrams: Sequence diagrams communication diagrams To appreciate the relationship between behavioural models and structural and functional models. Reference: Text Ch 7

3 Behavioural Models Behavioural models describe the internal dynamic aspects of an IS that supports business processes in an organization As distinct from: Functional models which depict the external behavioural view Structural models which depict the static view Behavioural modelling focuses on objects whereas structural modelling focuses on classes.

4 Behavioural Models During the analysis phase, behavioural models capture a basic understanding of the dynamic aspects of the underlying business process. Later, behavioural models are enhanced and refined during design phase and implementation details are added. Creating behavioural models, like other models already discussed, is an iterative process. As the behavioural models develop, it may be necessary to re-visit the structural and functional models.

5 Revision: Objects Objects are instantiations (particular instances) of a class: An object has attributes that describe it An object’s state is determined by the value of its attributes An object’s behaviour is described by the operations it can perform (later called methods) Objects can send and receive messages Messages are sent to other objects to tell the object to execute a behaviour – these behaviours become operations of the recipient object

6 State Machines State machines represent the changes in an object’s state (i.e. changes in the values of its attributes).

7 State Machine Diagram State machine diagram – a dynamic model that shows the different states of an object and the events that cause the object to transition from one state to another. State machine are useful for understanding the objects of classes that are very dynamic and complex. It is not necessary to produce state diagrams for objects of every class

8 State Machine Diagram In addition to modelling the states of an object in a class, a state machine diagram may also be used to model changes in the states of: a set of classes a subsystem an entire system (e.g. off, standby, on)

9 Elements of a State Machine Diagram The elements of a state machine are: States Events or actions Transitions

Session 2, States State – the state of an object is defined by the value of its attributes and its relationships with other objects at a particular point in time. Example: possible states of Patient class: checked-in, admitted, under- observation, released Note: not all attributes or attribute changes will make a difference (e.g. a change in the patient’s address should not determine how the patient is treated.)

11 Events Event – something that takes place at a certain point in time and changes a value(s) that describes an object, which in turn changes the object’s state. An event can be: a condition becoming true receiving a message from another object to execute an operation (a method call) the passage of a designated period of time The state of an object determines exactly what the response to the event will be. Example: patient (current state ‘under observation’) is diagnosed as healthy, status changes to ‘released’.

12 Transitions Transition – the movement of an object from one state to another. A guard condition is a True/False expression. Transition only takes place if expression is True. Expression includes attributes values Example: a patient transitions from the state ‘under- observation’ to ‘released’ when [Diagnosis = Healthy]

State Machine Diagrams - Syntax 13

14 State Machine Diagram – Example

15 Building a State Machine Diagram Steps for building a state machine diagram: Set the context Identify the initial, final, and stable states of the object (class) Determine the order in which the object will pass through the stable states Identify the events, actions, and guard conditions associated with the transitions Validate the state machine diagram

16 State Machine for the Order Class Exercise: Spend a few minutes studying this model. Look for: States, Events, Transitions, Guards

17 State Machine for the Order Class Event State Transition Guard

18 Summary After today’s lecture you should be able to Construct state machine diagrams