📝§ Software Architecture
- What is Architecture?
 - § Decisions—decisions are inherent part of software architecture
 - Architecture as financial options—how to sell architecture to management
 - § Architect role
 - Software Modeling—modeling and documenting architecture
 - Functional requirements do not drive architecture—non-functional requirements do.
 - Constraints as guide rails
 - Design Stamina Hypothesis—how spending more time on architecture can make project speed up at later stages.
 - Brooks’s law—adding people at late stages makes project later
 - Conway’s law—architecture reflects communication structure of organization
 - Theory Building View of programming
 - Architecture Decision Record
 - Not every system needs an architecture
 - Presumptive architecture
 
Resources
Backlinks
- 📝 Ask for objections, not agreement
 - 📖 Just Enough Software Architecture
 - 📝 Organizational context as architectural constraint
 - 📝 § Architect role
 - 📝 Architect as guard of conceptual integrity
 - 📝 Involve the team into design
 - 📝 Architects live in a glass house
 - 📝 Not every system needs an architecture
 - 📝 How to apply architectural knowledge to programming language design?
 - 📝 Architecture as what’s most important
 - 📝 Architecturally-significant requirements
 - 📝 Architecture as a set of important decisions
 - 📝 Architecture is a special case of Software Design
 - 📝 § Software Design
 - 📝 As a software architect, describe the theory you built
 - 📝 Bounded rationality
 - 📝 Separate storage and query layers
 - 📝 Design Stamina Hypothesis
 - 📝 Functional requirements do not drive architecture
 - 📝 § Software Development
 - 📝 § Programming