Chapter 5:Data Flow Architecture
What is data flow architecture?
Whole system as transformation of successive sets of data
System decomposed into modules.
No interaction between modules
Modules do not need to know identity of each other
Connection can be
IO Stream
Files, Buffers, Pipes
Batch Sequential
Pipe & Filter
Process Control
Traditional data processing model
Widely used in 1950’s – 1970’s
Example: mainframe computers using COBOL
implement
Usually done in batch processing language or shell script
DOS Batch File
Direct implementation in coding
Similar to Batch Sequence
Independent modules
Data connectors
Difference
Connectors are stream oriented
Concurrent processing
Filter:independent data stream transformer
Pipe:data conduit
Moves data from one filter to another
Reads data from input data stream
Process data and write to output stream
Does not wait for batched data as a whole
Does not even have to know identity of i/o streams
Two types
character
byte streams
Data Flow Methods
Push only (Write only)
Pull only (Read only)
Pull/Push (Read/Write)
Classification of Filters
Active Filter
Passive filter
Suitable for embedded System
Composed of
Two types of sub-systems
System depends on: Control Variables
Sub-systems
Connectors
executor processor unit
controller unit
Benefits
Limitations
Better for situations where no precise formula for deciding the manipulated variable
Can be completely embedded
Requires more sensors to monitor system states