[[wiki-architecture]] · [[Biographies]] · [[ARCHITECTURE]] · [[000]]
# Agile architecture
Agile architecture means how enterprise architects, system architects and software architects apply architectural practice in agile software development. A number of commentators have identified a tension between traditional software architecture and agile methods along the axis of adaptation (leaving architectural decisions until the last possible moment) versus anticipation (planning in advance) (Kruchten, 2010 ).
Waterman, Nobel, and Allan (2015) explored the tensions between spending too little time designing an up-front architecture, increasing risk, and spending too much time, negatively impacting of the delivery of value to the customer. They identify six forces that can affect agile architecture: Requirements instability, technical risk, early value, team culture, customer agility and experience. These forces may be addressed by six strategies: Respond to change, address risk, emergent architecture, big design up front and use frameworks and template architectures.
== Definition ==
Several attempts have been made to specify what makes up an agile approach to architecture. According to the SAFe framework, the principles of agile architecture are:
The teams that code the system design the system
Build the simplest architecture that can possibly work
When in doubt, code it out
They build it, they test it
The bigger the system, the longer the runway
System architecture is a role collaboration
There is no monopoly on innovation
== Principles ==
At the enterprise architecture level, Scott Ambler (2016) proposes the following principles:
Communication over perfection
Active stakeholder participation
Enablement over inspection (exemplars)
Evolutionary collaboration over blueprinting
Enterprise architects are active participants on development teams
High level models (the more complex, the more abstract)
Capture details with working code
Lean guidance and rules, not bureaucratic procedures
Have a dedicated team of experienced enterprise architects
== Practices ==
The open source Design Practice Repository (DPR) collects agile architecting practices such as:
SMART NFR Elicitation
Architectural decision Capturing
Stepwise Service Design
== References ==
- [[Design/Building Typologies/Commercial Architecture]]
- [[Design/Building Typologies/Educational Architecture]]
- [[Design/Building Typologies/Healthcare Architecture]]
- [[Design/Building Typologies/Hospitality Architecture]]
- [[Design/Building Typologies/Industrial Architecture]]
- [[Design/Building Typologies/Residential Architecture]]
- [[History and Theory/World History/Ancient Architecture]]
- [[History and Theory/World History/Classical Architecture]]
- [[History and Theory/World History/Contemporary Architecture]]
- [[History and Theory/World History/Medieval Architecture]]
== External links ==
Agile Training