Agile Architecture emphasizes the minimum amount of design upfront, and focusing on building something and evolving the architecture as our understanding changes.
Architecture in software development is often defined as relationships between the parts in a system. Traditional approaches to software architecture emphasize Big Upfront Design – get it right at the start. The problem, of course, is that requires us to foresee all architectural considerations (scale, security, fault tolerance, fault recovery) at the moment when our understanding of our problems is at its weakest. Agile Architecture allows for the design to evolve and adapt as more is learned about what is needed.
(Hint: when searching for more ideas, consider using the term: “Evolutionary Architecture”)
- An Agile Approach to Software Architecture
- Characteristics of Evolutionary Architectures
- Evolutionary Architecture with Patrick Kua (YouTube)
- Summary of Building Evolutionary Architectures
AGILE ARCHITECTURE AKA EMERGENT ARCHITECTURE BOOKS
*Thank you for visiting the World's Largest Opinionated Agile Reference Library. This content is created and the links are curated through the lens of Agile Pain Relief Consulting's view of what is effective in the practice of Scrum and Agile. We don't accept submissions and emails to that effect are marked as spam. Book listings may use affiliate links that could result in a small commission received by us if you purchase, but they do not affect the price at all. From experience, this won't amount to anything more than a cup of coffee in a year.