Agile Architecture
Everyone seems to be talking about Agile development (like XP) these days - what does it mean for architects and architecture?
This section will explore this topic. But first, it is important to manage scope - so what can we exclude as not relevant to architects?
- People techniques. E.g. pair-programming
- Coding techniques. E.g. Unit testing and self documenting code
I think these concerns are covered much more fully in other places - and are, of course, very important to developers and delivery folks.
So what specifically should architects be interested in? These are examples that we should cover:
- How to choose the projects that should use Agile development methodologies?
- In an Agile project how can scope / requirements be managed so that sponsor's scope is delivered?
- How can architectural policies and decisions be enforced?
- How can a system's architecture (or perhaps design) facilitate future change implemented by Agile projects?
- Can a large programme divided into Agile projects be used to deliver a large to very large system? If so how? Is Architecture important here?