Friday, May 20, 2005

Software Architecture Review

Good Software Architecture:
  • is critically important for successful software development
  • is the key framework for all technical decisions
  • provides the foundation for reuse
  • is essential for fast time-to-market solutions
Too many projects either fail or require significant rework late in their schedules. Typically a project of 100.000 source lines of code can save about US$ 1 million by identifying and resolving problems early.

Software Architecture reviews:

- identify project problems before they become costly to fix:
  • avoid costly rework near the end of the project
  • avoid bringing the shipping date in danger
  • favour architectural sound improvements above ugly fixes hacked in late in the project
  • provide timely information so that better informed decisions can be made
- improve the organisations' quality:
  • help identify best practices and socialise them across the organisation
  • leverage experienced people by using their expertise to help others
  • promote cross-product knowledge and learning
  • identify knowledge gaps in areas where errors frequently occur
- address completeness & consistency

Essential activities for software architecture reviews are having a review meeting, preparing the review using a checklist, and reporting/tracking/closing issues.

Architecture Reviews, an invaluable part of a companies' quality improvement process.

Read the complete paper:
"Architecture Reviews: Practice and Experience"
by J.F.Maranzano, S.A.Rozsypal, G.H.Zimmerman, G.W.Warnken, P.E.Wirth, D.M.Weis
IEEE Software, March/April 2005


Post a Comment

Read more about Software Quality at the <<Software Quality Weblog Home