1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations.

Post on 20-Dec-2015

217 views 1 download

Tags:

Transcript of 1 Design Methods for Reactive Systems, R.J. Wieringa Part V: Communication Notations.

1

Design Methods for Reactive Systems, R.J. WieringaPart V: Communication Notations

2

Outline

Data flow diagrams (DFDs)Communication diagramsContext modellingRequirements-level architectures

3

Where are we?

4

Data flow diagrams (DFDs): heating controller example

A collection of communicating data stores and processes

5

Data flow diagrams (DFDs): hierarchical structuring; tank control process

Data processspecification:

Lower-levelDFD

6

Data flow diagrams (DFDs): basic concepts (1)

Flow: Instantaneous and reliable communication channel

7

Data flow diagrams (DFDs): basic concepts (2)

Stores: Remembers the data written to it

8

Data flow diagrams (DFDs): basic concepts (2)

Process: Some system activity Data process Control process Composite process

Stateless or stateful processesSyntax:

9

Data flow diagrams (DFDs): control process specification; STD for heater control process

Note consistency with DFD

10

Communication diagrams: basics

DFDs instance-level; communication diagrams possibly type-level

Used to represent requirements-level architectures ”Language”

11

Communication diagrams: heating controller example

Nodes ~ componentsEdges ~ communication channels

12

Communication diagrams: heating controller; instance-level

13

Communication diagrams: components

14

Communication diagrams: decomposition

15

Communication diagrams: decomposition and closely coupled components

16

Communication diagrams: decomposition and closely coupled components; elevator controller

17

Communication diagrams: allocation of functions to components (allocation table)

18

Communication diagrams: flowdown

19

Context modelling: motivation

20

Context modelling: alternative system boundaries for the elevator controller

21

Contex modelling: context boundary

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

23

Context modelling: structuring the context

24

Context modelling: structure in the context of a information-provision system

25

Context modelling: structure in the context of a directive system

26

Context modelling: structure in the context of manipulative system

27

Requirements-level architectures: architectures in general

We now move from modelling what is given to designing the SuD

28

Requirements-level architectures: input sources

29

Requirements-level architectures: encapsulation versus layering

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

31

Requirements-level architectures: comparison with implementation-level architectures

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

33

Requirements-level architectures: functional decomposition, object-oriented style; the ticket system example

34

Requirements-level architectures: subject-oriented decomposition, object-oriented style; the ticket system example

35

Requirements-level architectures: mixed architecture

36

Requirements-level architectures: communication-oriented decomposition

37

Requirements-level architectures: evaluation criteria

38

Summary

Data flow diagrams (DFDs)Communication diagramsContext modellingRequirements-level architectures