Download presentation
Presentation is loading. Please wait.
1
1 Design Methods for Reactive Systems, R.J. Wieringa Part IV: Behavior Notations Jens Bæk Jørgensen, University of Aarhus
2
2 Behaviour descriptions – in context
3
3 Behaviour descriptions – road map
4
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
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
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
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
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
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
10 State transitions lists and tables – transformation table for elevator controller
11
11 State transitions lists and tables – decision table for elevator controller
12
12 State transition diagrams – Mealy diagram for desired behaviour of heating tank controller
13
13 State transition diagrams – Mealy diagram for desired behaviour of heating tank controller; with variables and interface description
14
14 State transition diagrams – Mealy diagram constructs
15
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
16 State transition diagrams – statecharts: state reaction example
17
17 State transition diagrams – statecharts: state reaction with entry and exit events
18
18 State transition diagrams – statecharts: state reaction with semantic ambiguity
19
19 State transition diagrams – statecharts: state hierarchy example
20
20 State transition diagrams – statecharts: parallelism example
21
21 State transition diagrams – statecharts: example using broadcasting
22
22 Guidelines – training information system example: goal tree of training department
23
23 Guidelines – training information system example: workflow at the registration desk
24
24 Guidelines – training information system example: desired emergent behaviour
25
25 Guidelines – training information system example: embedding the system in its environment
26
26 Guidelines – training information system example: desired stimulus-response behaviour of the system Assumptions? How to make the system engineering argument?
27
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
28 Guidelines – find desired system behaviour via road map
29
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
30 Summary zEvent lists zState transition tables zMealy diagrams zStatecharts zGuidelines for behaviour modelling and system design
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.