Please enable JavaScript.
Coggle requires JavaScript to display documents.
Chapper 7: Hỉeachical Architecture - Coggle Diagram
Chapper 7: Hỉeachical Architecture
Main/Subroutine Architecture
How
Function Call Supported by Assembly
Function Call Supported by High Level Language
Benefits
Easy to decompose the system
Can still be used in sub-system of OO Design.
Limitation
Globally shared data are vulnerable
Tight coupling may cause ripple impacts as compared to OO design
Idea
System decomposed into sub-routines
A “main” program calls sub-routines and accomplishes task
Design
Data Flow Diagram (DFD)
Two type
Transform Flow: input data get processed and results in output data (sequential)
Transaction Flow: depending on input data, take different control actions (branch)
Mapping Process: a main process controls the overall flow
Master-Slave
The slaves provide replicated services to the master
The master selects a particular result among slaves by certain selection strategies.
Slaves may perform the same functional task by different algorithms and methods or a totally different functionality.
Layered architecture
Sample Layer Architecture
Physical Implementation
Benefits
Incremental software development
Enhanced independence of upper layer to lower layer
Enhanced reusability and interchangeability
Component-based technology is a suitable
Promotion of portability
Limitations
Lower runtime performance
Many applications can not fit this architecture
Exception and error handling
Virtual machine
idea
Provide a virtual interpretation layer that separates
Application
Physical machine layer
Benefits
Portability and machine platform independency
Simplicity of the software development
Simulation for non-native and disaster working model
Limitations
Slow execution of the interpreter
Additional overhead due to the new layer