Agile is a philosophy (or a way of thinking) rather than a set of practices (e.g., TDD, Pair-Programming) and methods (e.g. XP, Scrum, Lean, FDD). From an architecture perspective, there is value in incorporating Agile principles (and some practices) into architecture-centric methods to accommodate changes in architectural drivers during the development of a large-scale system. In this talk, I briefly discuss the context of the architecture we are developing at Virginia Tech and the rationale that guided us to follow an Agile approach to architecting. Then, I demonstrate through examples from this ongoing project how Agile principles and some practices are eadily well-suited as architecture practices. Particularly, three Agile-like practices are adopted in the architecting process, including quality user stories, the “architecture wall” concept, and architectural refactoring. Finally, I list three lessons learned from this effort and show how they can be applied in other development efforts.
PDF [396 KB]
PRESENTATION
This presentation is related to the following area(s) of work:
SATURNPublished: June 2010
Find Us Here
For more information