Architects rarely design from scratch: architectural styles and patterns are documented, reusable solutions with known benefits and consequences. This lecture separates the terms (a style is the overall shape, a pattern a specific recipe; architectural patterns are system-wide, design patterns work inside subsystems), traces their history from Alexander’s building patterns to Buschmann’s architectural patterns, and classifies systems into five types, each with its typical patterns. Lectures 2 and 3 then study those patterns one by one.
Style vs. pattern
A style is a high-level template for the whole structure (e.g. data flow); a pattern is a specific reusable solution within it (e.g. pipes and filters).
History
1977 Alexander (253 building patterns) → 1990s architectural styles → 1994 Gang of Four (23 design patterns) → 1996 Buschmann et al. (architectural patterns).
Architectural vs. design patterns
Architectural patterns fix system-wide structure; design patterns are medium-scale and don’t change the fundamental structure.
Five system types
Data-centered (blackboard, repository), data flow (pipes and filters), distributed (client-server, broker), interactive (MVC), hierarchical (layered).
How the lecture is organized
- Slides 1–7Styles vs. patterns, and why reuse them
- Slides 8–13History: Alexander, styles, Gang of Four, Buschmann
- Slides 14–26Classification: data-centered, data flow, distributed, interactive, hierarchical
- Slides 27–28Exercise and summary
Exam focus
The classification table (system type → pattern) is the base of every pattern question. Midterm 261 Q6 (3.5 marks) matched seven scenarios to layered, pipe-and-filter, broker, blackboard, MVC, client-server and peer-to-peer; Final 252 Q4 and Midterm 252 Q5 asked you to pick and draw a pattern for a scenario.
How to read this page
Every original slide is shown unchanged. Yellow marks on a slide point to a numbered note: hover or tap a mark to jump to its note, and hover a note to see its marks. Questions tagged Past exam appeared on a real paper; Prediction questions are likely angles, not confirmed.
All 28 slides
- 1 Slide 1
- 2 Lecture Outlines
- 3 Extra: Calculating the average, a reusable recipe
- 4 Overview
- 5 Overview: the caveman and today’s architect
- 6 Overview: reusing documented patterns
- 7 Overview
- 8 History of Software Architecture Styles and Patterns
- 9 History of Software Architecture Styles and Patterns
- 10 History of Software Architecture Styles and Patterns
- 11 History of Software Architecture Styles and Patterns
- 12 Extra: Architectural patterns vs. design patterns
- 13 Extra: Timeline of styles and patterns
- 14 Architecture Patterns Classification
- 15 Architecture Patterns Classification
- 16 Data Centered Systems
- 17 Extra: Data Centered Systems
- 18 Data Flow Systems
- 19 Extra: Data Flow Systems
- 20 Distributed Systems
- 21 Extra: Distributed Systems
- 22 Interactive Systems
- 23 Extra: Interactive Systems
- 24 Extra: Interactive vs. Distributed Systems
- 25 Hierarchal Systems
- 26 Extra: Hierarchal Systems
- 27 Extra: Question – pick the pattern
- 28 Summary