Scrum Agile Project Management

Agile Architecture: Worse Can Be Better

This talk provokes you to think about an old question by R. Gabriel “Is Worse Better?”. It demonstrates “how worse can be better” if the focus is on delivering a business value, which is one of the most important software architecture’s property for agile software development.

After more than 10 years of agile software development adoption, we have a lot of recommendations regarding agile development processes, agile working habits and agile organizational structure. All these recommendations and principles can help us to work more efficiently, to deliver faster and to build better quality into our systems. But agile and lean is not only about processes and tools. Agile and lean thinking can also help us in creating an agile system architecture – an architectural solution that is “good enough”. A “good enough” solution is a solution that is “pulled” by the users requirements and therefore satisfies user’s need. Hence it creates a business value. Since it is just “good enough”, and not perfect from the technical point of view, usually such a solution can reduce both implementation time and cost, being more applicable and providing a faster return of investment.

The agile and lean philosophy could be applied even on big upfront designs, reducing the complexity and simplifying them. Through one real-life story about the Model-Driven Development architecture, from a time critical environment (financial sector), we will show how the agile and lean principles can be applied during architectural decision making, resulting in an agile architecture. It will also be shown how such agile architecture, although being a “worse” solution compared to a technically perfect one, is in fact a “better” solution, since it creates bigger business value.

Video producer: