1 Design Methods for Reactive Systems, R.J. Wieringa Part IV: Behavior Notations Jens Bæk Jørgensen, University of Aarhus.

Slides:



Advertisements
Similar presentations
Software system modeling
Advertisements

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.
5/24/2015CPSC , CPSC , Lecture 71 Software Engineering, CPSC , CPSC , Lecture 7.
Activity Diagrams [Arlow and Neustadt, 2005] CS 425 / 625 Seminar on Software Engineering University of Nevada, Reno Department of Computer Science & Engineering.
Temporal Specification Chris Patel Vinay Viswanathan.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 8 Slide 1 System models.
1 Specification of IT Systems – Introduction. 2 Book and web pages zIn the course we use the following litterature: yDesign Methods for Reactive Systems.
©1998, 1999, 2000 Rational Software - All rights reserved Session VM08 Structuring Your Rational Rose Model Robert Bretall Rational Software.
Communication Notation Part V Chapter 15, 16, 18 and 19.
1 Specification of IT Systems Mandatory Exercise Week 4.
CS 425/625 Software Engineering System Models
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models September 29, 2008.
1 CPN Models as Enhancements to a Traditional Software Specification for an Elevator Controller Jens Bæk Jørgensen Department of Computer Science University.
Executable UML The Models are the Code - Executable UML Lecture 2 - Using Executable UML Paul Krause.
1 Specification of IT Systems – Introduction. 2 Book and web pages zIn the course we use the following litterature: yDesign Methods for Reactive Systems.
1 Modeldrevet softwareudvikling – 16. november 2004 Design Methods for Reactive Systems, R.J. Wieringa Part IV: Software Specification Methods Jens Bæk.
1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations Jens Bæk Jørgensen, University of Aarhus.
THE OBJECT-ORIENTED DESIGN WORKFLOW Statechart Diagrams.
Modeling the Processes and Logic
Advanced Behavioral Modeling
Detailed Object-Oriented Requirements Definitions
SE-565 Software System Requirements More UML Diagrams.
7M822 UML Sequence Diagrams 5 October 2009.
1 Modeldrevet softwareudvikling – 7. september 2004 Design Methods for Reactive Systems, R.J. Wieringa Part II: Function Notations Jens Bæk Jørgensen,
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Chapter 2 - Overview of the Systems Engineering Design Process1 Aerospace Systems Engineering Chapter 2 - Overview of the Systems Engineering Design Process.
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
02/06/05 “Investigating a Finite–State Machine Notation for Discrete–Event Systems” Nikolay Stoimenov.
Software Engineering 8. System Models.
Lecture 4 Finite State Machine CS6133 Software Specification and Verification.
The Models are the Code - Executable UML
State Diagrams / System Sequence Diagrams (SSDs)
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 7 Slide 1 System models l Abstract descriptions of systems whose requirements are being.
Chapter 4 System Models A description of the various models that can be used to specify software systems.
System models Abstract descriptions of systems whose requirements are being analysed Abstract descriptions of systems whose requirements are being analysed.
1 Object-Oriented Modeling Using UML (2) CS 3331 Fall 2009.
Software Engineering 1 Object-oriented Analysis and Design Chap 29 UML State Machine Diagrams and Modeling.
University of Toronto Department of Computer Science © Steve Easterbrook. This presentation is available free for non-commercial use with attribution.
Behavioral diagrams Lecture p4 T120B pavasario sem.
Object-Oriented Modeling Using UML CS 3331 Section 2.3 of Jia 2003.
Chapter 7 System models.
Selected Topics in Software Engineering - Distributed Software Development.
System models l Abstract descriptions of systems whose requirements are being analysed.
Modified by Juan M. Gomez Software Engineering, 6th edition. Chapter 7 Slide 1 Chapter 7 System Models.
Modeling Shari L. Pfleeger and Joanne M. Atlee, Software Engineering: Theory and Practice, 4 th edition, Prentice Hall, Hans Van Vliet, Software.
Software Engineering, 8th edition Chapter 8 1 Courtesy: ©Ian Somerville 2006 April 06 th, 2009 Lecture # 13 System models.
Sommerville 2004,Mejia-Alvarez 2009Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
1 Qualitative Reasoning of Distributed Object Design Nima Kaveh & Wolfgang Emmerich Software Systems Engineering Dept. Computer Science University College.
1 Kyung Hee University Statecharts Spring Kyung Hee University Specifying Objects’ Behaviour  Interaction diagrams show message-passing behaviour.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 System models.
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.
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.
Chapter 5 – System Modeling Lecture 9 Section A 27/4/2015 Section B 29/4/2015 1Chapter 5 System modeling.
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.
McGraw-Hill/Irwin Copyright © 2006 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 5 Modeling the Processes and Logic.
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 14 Slide 1 Object-Oriented Design.
Object-oriented and Structured System Models
Abstract descriptions of systems whose requirements are being analysed
Lesson 16: State-Based Sequential Design
UML Activity Diagrams & State Charts
System models October 5, 2005.
Object Oriented System Design
Dynamic Modeling Lecture # 37.
Software system modeling
UML Diagrams: StateCharts The Dynamic Analysis Model
Modeling Behavior in Statechart Diagrams
State-Transition Diagrams
Presentation transcript:

1 Design Methods for Reactive Systems, R.J. Wieringa Part IV: Behavior Notations Jens Bæk Jørgensen, University of Aarhus

2 Behaviour descriptions – in context

3 Behaviour descriptions – road map

4 behaviour descriptions – basics zRoadmap: Find required system behaviour by yAnalyzing required system services or yModeling desired environment behavior zMake behaviour descriptions of yDesired behaviour of composite system yDesired behaviour of SuD itself yAssumed behaviour of environment zFormat of behaviour descriptions yLists and tables yDiagrams (Mealy diagrams and statecharts)

5 State transitions lists and tables – basics zRange from informal to formal zCan be used at system level down to component or software object level z Different kinds of lists and tables yEvent lists yStimulus-response lists yState transition tables yDecision tables

6 State transitions lists and tables – event lists zList of event descriptions and, for each event, a description of its effect zExample: Assumed device behaviour in environment of elevator controller yLight on(b): If b is not already in state On(b), then it enters state On(b); otherwise, nothing changes yLight off(b): If b is not already in state Off(b), then it enters state Off(b); otherwise, nothing changes

7 State transitions lists and tables – event list for desired subject domain behaviour for an elevator cage zEvent: A passenger pushes a destination button in cage c zDesired effect yThe request is confirmed to the passenger by lighting up the button yIf c is idle at another floor, its motor starts in the direction of the requested floor. While c moves, its location indicator is set to the current floor. When c arrives at the requested floor, it stops and its doors open yIf c is idle at the requested floor, its doors are opened yWhen no one has passed the doors for some time, the doors close zCompare with a corresponding service description

8 State transitions lists and tables – effect descriptions zTransactional yDescription of one state transition yIntermediate states abstracted away (i.e., atomic) yPassage of time abstracted away (instantaneous) z Scenario yDescription of several state transitions yWith intermediate states (i.e. not atomic) yProgress of time zTo transform a scenario description into a transactional list, we introduce states

9 State transitions lists and tables – state transition table (STT) for elevator controller General format of STT entry: (event, current state, actions, next state)

10 State transitions lists and tables – transformation table for elevator controller

11 State transitions lists and tables – decision table for elevator controller

12 State transition diagrams – Mealy diagram for desired behaviour of heating tank controller

13 State transition diagrams – Mealy diagram for desired behaviour of heating tank controller; with variables and interface description

14 State transition diagrams – Mealy diagram constructs

15 State transition diagrams – statecharts zExtends Mealy diagrams with yState reactions yState hierarchy yParallelism zHarel, 1987 zPart of UML yUML state machines yUML activity diagrams zExecution and code generation supported by tools, e.g. yStatemate yRhapsody yIBM Rational Rose Real Time

16 State transition diagrams – statecharts: state reaction example

17 State transition diagrams – statecharts: state reaction with entry and exit events

18 State transition diagrams – statecharts: state reaction with semantic ambiguity

19 State transition diagrams – statecharts: state hierarchy example

20 State transition diagrams – statecharts: parallelism example

21 State transition diagrams – statecharts: example using broadcasting

22 Guidelines – training information system example: goal tree of training department

23 Guidelines – training information system example: workflow at the registration desk

24 Guidelines – training information system example: desired emergent behaviour

25 Guidelines – training information system example: embedding the system in its environment

26 Guidelines – training information system example: desired stimulus-response behaviour of the system Assumptions? How to make the system engineering argument?

27 Guidelines – finding states and events zFinding states yLook for states in which the behaviour is waiting for something to occur yLook for modes of behaviour (e.g. normal-standby- emergency etc.) zFinding events yLook for named events, condition changes, temporal events to which the system must respond yLook for desired effects of the system. What triggers the system to produce such an effect? zDeal with parallelism and hierarchy …

28 Guidelines – find desired system behaviour via road map

29 Guidelines – through desired causality to system transactions: steps in the road map zIdentify business solution goals zIdentify solution activities in subject domain and user workflow zIdentify desired event-action pairs in subject domain and user workflow zMap to stimulus-response pairs of SuD; introduce connection domain if necessary zRefine to transactions by introducing SuD states

30 Summary zEvent lists zState transition tables zMealy diagrams zStatecharts zGuidelines for behaviour modelling and system design