L4 - System Decomposition Flashcards
Filter
Processing Step
8 Steps of System Design
- Design Goal
- Subsystem Decomposition
- Concurrency
- Hardware/Software Mapping
- Persistent Data Management
- Global Resource Handling
- Software Control
- Boundary Conditions
Closed Architecture (Opaque Layering)
Layer can only call operations from layer below. Buschmann: ‘direct addressing’ - low coupling: more portable
API
Application Programmer’s Interface (API) specifies the subsystem interface
What is not explicitly shown in Communication Diagrams?
Labels + Roles + Multiplicities (Difference between Communication and Class Diagrams)
Open Architecture (Transparent Layering)
Layer can call any operation. Buschmann: ‘indirect addressing’ - high coupling: higher performance
Which architectural style should be used when considering systems with high coupling?
Model View Controller
Problem Solving Heuristics
Understanding the problem + Devising a plan + Executing plan + Examining solution
Process Flow MVC
- View sends update to Controller
- Controller updates Model
- Model updates View
View (MVC)
Subsystem that contains boundary objects (displaying information to user)
Cohesion
Dependency and relation among classes. More interaction within their subsystem (high cohesion) = the better.
Controller (MVC)
Subsystem between views and models (responsible for interacting with user & change mangement)
Pipe
Connection between two processing steps
Client-Server Architecture
Client (Input + Front End Processing) + Server (Data Management)
‘Layer A calls layer B’
Runtime dependency