Those following the agile architecture series will probably note that the principles and labels have morphed over time. I’ve been collaborating with Ryan Martens, Rally’s founder and CTO, and Mauricio Zamora, Executive Director at CSG Systems, in writing a whitepaper to be published on this topic. In the process, we’ve also had some comments from Grady Booch and Philippe Kruchten and the content has been evolving as a result. The article is nearly finished and I’ll post it here just as soon as it’s available.
In the meantime, here’s the (hopefully final) set of principles the article espouses:
Principle #1 ─ The teams that code the system design the system.
Principle #2 ─ Build the simplest architecture that can possibly work.
Principle #3 ─ When in doubt, code it out.
Principle #4 ─ They build it, they test it.
Principle #5 ─ The bigger the system, the longer the runway.
Principle #6 ─ System architecture is a role collaboration.
Principle #7 ─ There is no monopoly on innovation.