Architecture Meets Agility
by Hakan Erdogmus
In an Agile Times article published several years ago ("Let's Scale Agile Up," Agile Times, Apr. 2003), I argued against attempts to scale up agile software development approaches beyond their intended home ground of self-contained projects undertaken by small coherent teams. I still don't agree with advocating an "agile" approach for anything and everything under the sun. If you're developing an interpreter for a domain-specific language whose specification is known, what's the point of insisting on using short time-boxed iterations? However, I've changed my opinions about the need to port the practices and processes included nowadays under the agile umbrella. I've come to appreciate the benefits of moving those practices and processes, selectively and with necessary adaptations and embellishments, to different application domains and project contexts. And the concept of architecture, although still downplayed by many agile advocates, has a major role to play in expanding the traditional scope of agile software development.