Reintroducing software architecture into agile teams

Why don't some teams think about architecture?

I ran a half-day workshop yesterday at the Software Architecture Summit in Berlin, where we crowdsourced the answers to a number of questions, focussed around why some agile software teams don't think about architecture and how we can change this situation. Of course, much of what we discussed can be applied to *any* team, but the focus was agile here.

What is architecture?
1. What is architecture?

What is agile?
2. What is agile?

Is architecture important?
3. Is architecture important?

Why don't some agile teams think about architecture?
4. Why don't some agile teams think about architecture?

How can we reintroduce agile teams to architecture?
5. How can we reintroduce agile teams to architecture?

You can view my slides online. Thanks to everybody that came along, I really enjoyed it.

About the author

Simon is an independent consultant specializing in software architecture, and the author of Software Architecture for Developers (a developer-friendly guide to software architecture, technical leadership and the balance with agility). He’s also the creator of the C4 software architecture model and the founder of Structurizr, which is a collection of open source and commercial tooling to help software teams visualise, document and explore their software architecture.

You can find Simon on Twitter at @simonbrown ... see for information about his speaking schedule, videos from past conferences and software architecture training.

Re: Reintroducing software architecture into agile teams

Viewing architecture in the context of a scrum team is risky, since you need a level at which the overall system can be thought about. When a development operation has multiple scrum teams (which is more often the case than not), the tendency is for these teams to silo themselves, and to build multiple independent and often incompatible "products". What you get is a hodge-podge mix of semi-usable features. The reality is that you need Architecture in the teams, but also outside the teams. Architecture needs long lead times to fully digest the domain and its idiosyncracies. Architectural design can be done in scrum teams, but it should only ever do so in the context of the overall vision for the product. Agile works best when the context is clear, and it's the role of an Architect to provide that context.

Add a comment Send a TrackBack