Software architecture plays a pivotal role in the delivery of successful software yet it's frustratingly neglected by many teams. Whether performed by one person or shared amongst the team, the architecture role exists on even the most agile of teams yet the balance of up front and evolutionary thinking often reflects aspiration rather than reality.
If we really do want to succeed, we need to get over our fascination with shiny new things and starting asking some questions. Does agile need architecture or does architecture actually need agile? Have we forgotten more about good software design than we've learnt in recent years? Is emergent design really just about foolishly hoping for the best? Does any of this matter if we're not fostering the software architects of tomorrow? How do we move from frustration to serenity?
Simon Brown | 15 May 2012 | British Computer Society | Edinburgh, Scotland