1 design methods for reactive systems, r.j. wieringa part v: communication notations
Post on 20-Dec-2015
217 views
TRANSCRIPT
![Page 1: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/1.jpg)
1
Design Methods for Reactive Systems, R.J. WieringaPart V: Communication Notations
![Page 2: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/2.jpg)
2
Outline
Data flow diagrams (DFDs)Communication diagramsContext modellingRequirements-level architectures
![Page 3: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/3.jpg)
3
Where are we?
![Page 4: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/4.jpg)
4
Data flow diagrams (DFDs): heating controller example
A collection of communicating data stores and processes
![Page 5: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/5.jpg)
5
Data flow diagrams (DFDs): hierarchical structuring; tank control process
Data processspecification:
Lower-levelDFD
![Page 6: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/6.jpg)
6
Data flow diagrams (DFDs): basic concepts (1)
Flow: Instantaneous and reliable communication channel
![Page 7: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/7.jpg)
7
Data flow diagrams (DFDs): basic concepts (2)
Stores: Remembers the data written to it
![Page 8: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/8.jpg)
8
Data flow diagrams (DFDs): basic concepts (2)
Process: Some system activity Data process Control process Composite process
Stateless or stateful processesSyntax:
![Page 9: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/9.jpg)
9
Data flow diagrams (DFDs): control process specification; STD for heater control process
Note consistency with DFD
![Page 10: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/10.jpg)
10
Communication diagrams: basics
DFDs instance-level; communication diagrams possibly type-level
Used to represent requirements-level architectures ”Language”
![Page 11: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/11.jpg)
11
Communication diagrams: heating controller example
Nodes ~ componentsEdges ~ communication channels
![Page 12: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/12.jpg)
12
Communication diagrams: heating controller; instance-level
![Page 13: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/13.jpg)
13
Communication diagrams: components
![Page 14: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/14.jpg)
14
Communication diagrams: decomposition
![Page 15: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/15.jpg)
15
Communication diagrams: decomposition and closely coupled components
![Page 16: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/16.jpg)
16
Communication diagrams: decomposition and closely coupled components; elevator controller
![Page 17: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/17.jpg)
17
Communication diagrams: allocation of functions to components (allocation table)
![Page 18: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/18.jpg)
18
Communication diagrams: flowdown
![Page 19: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/19.jpg)
19
Context modelling: motivation
![Page 20: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/20.jpg)
20
Context modelling: alternative system boundaries for the elevator controller
![Page 21: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/21.jpg)
21
Contex modelling: context boundary
![Page 22: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/22.jpg)
22
Context modelling: context diagram for the training information system
We need not only worry about the system boundary,but also about the context boundary … see guidelines
![Page 23: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/23.jpg)
23
Context modelling: structuring the context
![Page 24: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/24.jpg)
24
Context modelling: structure in the context of a information-provision system
![Page 25: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/25.jpg)
25
Context modelling: structure in the context of a directive system
![Page 26: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/26.jpg)
26
Context modelling: structure in the context of manipulative system
![Page 27: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/27.jpg)
27
Requirements-level architectures: architectures in general
We now move from modelling what is given to designing the SuD
![Page 28: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/28.jpg)
28
Requirements-level architectures: input sources
![Page 29: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/29.jpg)
29
Requirements-level architectures: encapsulation versus layering
![Page 30: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/30.jpg)
30
Requirements-level architectures: architectural styles
Data flow style: Not applicable to reactive
systems
Von Neumann style Strict separation of data
storage and data processing Database and
applicationprograms
Object-oriented style Processing and storage
encapsulated in objects
![Page 31: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/31.jpg)
31
Requirements-level architectures: comparison with implementation-level architectures
![Page 32: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/32.jpg)
32
Requirements-level architectures: main decomposition approaches
Functional decomposition each system function is allocated to a different component
Subject-oriented decomposition each group of subject domain entities corresponds to a
system component
![Page 33: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/33.jpg)
33
Requirements-level architectures: functional decomposition, object-oriented style; the ticket system example
![Page 34: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/34.jpg)
34
Requirements-level architectures: subject-oriented decomposition, object-oriented style; the ticket system example
![Page 35: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/35.jpg)
35
Requirements-level architectures: mixed architecture
![Page 36: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/36.jpg)
36
Requirements-level architectures: communication-oriented decomposition
![Page 37: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/37.jpg)
37
Requirements-level architectures: evaluation criteria
![Page 38: 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations](https://reader036.vdocuments.us/reader036/viewer/2022062421/56649d485503460f94a23047/html5/thumbnails/38.jpg)
38
Summary
Data flow diagrams (DFDs)Communication diagramsContext modellingRequirements-level architectures