Summary
Summary · Chapter 5
Chapter 5 in a nutshell
Section titled “Chapter 5 in a nutshell”- Design = decision-making. At its core, architecture design produces solutions to design problems; the result is a design that can be validated, formally documented, and used by development teams.
- Two approaches. Top-down vs bottom-up — each suits different situations, and a combination often works best.
- Architectural drivers are the inputs guiding design: design objectives, primary functional requirements, quality attribute scenarios, constraints, and architectural concerns (see Architectural drivers).
- Leverage design concepts — patterns, reference architectures, tactics, and externally developed software — to design solutions instead of reinventing the wheel.
- Document during design — formal docs come later, but sketching and recording design rationale should happen as you go.
- Follow a design process. A systematic approach guides the work; research and select one that fits, and tailor/supplement it to fill gaps (e.g. ADD, Microsoft’s technique, ACDM, ADM).
- Track progress with a mechanism such as an architecture-specific backlog.
Chapter 6 covers software development principles and best practices — some applicable to architecture, others worth encouraging your team to adopt in implementation.
Citations
Section titled “Citations”- Software Architect’s Handbook (Packt, 2018), Ch.5 “Summary”, pp. 392-393.