On Software Architecture, Agile Development, Value and Cost (SATURN 2008)
April 2008 • Presentation
Presentation for the 2008 SATURN workshop held in Pittsburgh
Software Engineering Institute
For many proponents of an agile approach to software development, software architecture is often seen as BUFD = Big Up-Front Design, and therefore as pure evil. But for novel, large system development, a decent architecture is not likely to simply emerge out of weekly refactorings, and we've witnessed such projects "hit a wall," like marathon runners, after a few months of agile euphoria. They tried to do the right thing from an agile perspective: deliver value to the end user at each iteration. But we notice that they often confuse cost with value, and they have decided that software architecture has no value whatsoever. By clarifying the concepts of value and being able to attribute some value to architectural design and implementation, we would allow agile projects to be reconciled with BUFD and exploit the richness of the SEI Cost Benefit Analysis Method (CBAM).