Please enable JavaScript.
Coggle requires JavaScript to display documents.
Chapter 5 Data Flow Architecture - Coggle Diagram
Chapter 5
Data Flow Architecture
Software system is seen as a series of transformations on consecutive pieces or set of input data, where data and operations are independent of each other.
Batch Sequential
In batch sequential architecture, each data transformation subsystem or module cannot start its process until its previous subsystem
completes its computation.
Benefits
Each sub-system can be a stand-alone
Simple division between sub-systems
Traditional data processing model
Widely used in 1950’s – 1970’s
Limitation
No concurrency and low throughput
High latency
No interactive interface
Pipe and Filter Architecture
e is another type of data flow architecture where the flow is driven by data.
Advantages
Reusability is easy – plug and play.
Modifiability: Low due to coupling between filters
Concurrency is high.
Simplicity: Clear
Flexibility: High, very modular design
Lower latency
Disadvantages
Data standards (ASCII, XML)
Overhead of data transformation among filters such as parsing is repeated in two consecutive filters
Not suitable for dynamic interactions
Difficult to configure a P&F system dynamically.
Error handling issue
Basic Concepts
Data Source
Data Sink
Filter: independent data stream transformer
Pipe: data conduit
There are three ways to make the data flow
Pull only (Read only)
A data sink may pull data from an upstream.
A filter may pull data from an upstream.
Pull/Push (Read/Write)
A filter may pull data from an upstream and push transformed data in a downstream.
Push only (Write only)
A data source may push data in a downstream.
A filter may push data in a downstream.
Process Control Model
Is suitable for the embedded system software design where the system is manipulated by process control variable data.
Process control architecture decomposes the whole system into subsystems (modules) and connections between subsystems.
A process control system must have the following process control data:
Input variable: a measured input data such as the temperature of return air in a temperature control system.
Manipulated variable: can be adjusted by the controller.
Controlled variable: a target controlled variable such as speed in a cruise control system or the temperature in an auto H/A system. It has a set point goal to reach. The controlled variable data should be measured by sensors as a feedback reference to recalculate manipulated variables.
Benefits
Better for situations where no precise formula for deciding the manipulated variable
Can be completely embedded
Limitations
Requires more sensors to monitor system states