Software Architecture in Practice
6. Architectures Classifications
Layered Architecture
Components are organized into horizontal layers
An example of a layered architecture is the MVC architecture
Layered Architecture Diagram Example

Model-View-Controller (MVC)
A way to build applications with a user interface
- Model - represents how data is persisted
- View - the presentational layer that the end user sees
- Controller - the mediator between the model and the view
Plugin Architecture
Components are organized as plugins where you can use different components in an extensible and reusable way
Plugin Architecture Diagram Example

Pipes and Filters Architecture
The main components of this architecture are pipes and lters, particularly with processing data
- Pipe - data ows from point to point
- Filters - transformations or lters that mutates the data that feeds into other pipes or sinks
- Sinks - where the data ultimately will be stored after a series of transformations
Pipes and Filters Architecture Diagram Example
