The Role of the Agile Architect

We’re Agile, we don’t need no stinkin’ architects!

It would seem that Agile principles are in direct conflict with a traditional software architect role — in an agile project, where the creation of working, tested code trumps everything else, nothing separates architecture from design and implementation. They are all wrapped up together in the practices we use to produce the code.¬† Instead of traditional documents and diagrams, the architecture is going to be exposed through the software itself…

So what does an Architect do in an architecture-antagonistic TDD/Agile/XP shop?

Mark J. Balbes, PhD recently shared his experiences as an Agile Architect, and it was so compelling we just had to share.

Architecture Is a Frame of Mind

To Mark,¬†architecture is a frame of mind. There is no room for an “ivory tower” architect that sits at a desk creating diagrams and making architectural rules for development teams to follow. Agile development favors person-to-person communication over written documentation. If you’re an agile architect, the best place to be is in the war room with the development team, working alongside them every day.

The architect’s role, then, is not to dictate to the team, but rather to guide, mentor and cajole the team in the right direction.

The War Room Is Where It’s At

The hustle and bustle of development is exciting and provides almost everything Mark needs to do his job. In the war room, Mark can listen to what is going on with the team, shepherd the team to keep the software development moving in the right direction and mentor team members on the concepts they may not be familiar with. Continue reading “The Role of the Agile Architect”