Presentation: "Lessons Learned from Architecture Reviews"

Time: Wednesday 11:45 - 12:45

Location: Stanford


This talk reflects on lessons learned from preparing for, presenting, and conducting architecture reviews. Complex software projects often have quality problems and don't deliver all that was promised. Often such problems are the result of inadequate or inappropriate software architecture. Sometimes the biggest issues are technical ones. Other times, the biggest issue is that too much attention has been placed on the technical architecture to the exclusion of other essential factors.

The software architecture review is one tool that helps reveal architectural risks and strengths as well as uncover unidentified issues that need addressing. A software architect needs to compellingly present the software architecture and build confidence that key architectural decisions have been thoughtfully made. An effective reviewer needs to be skilled at quickly interpreting complex information, asking probing questions, and effectively giving advice. Both the architect and the reviewer can benefit from being aware of biases that get in the way of people interpreting information and tactics for overcoming these biases.

Rebecca Wirfs-Brock

 Rebecca  Wirfs-Brock

Rebecca Wirfs-Brock, president of Wirfs-Brock Associates and IEEE Software's Design Columnist, is a well-known and respected object practitioner. She invented the way of thinking about objects known as Responsibility-Driven Design and is the lead author of Object Design: Roles, Responsibilities, and Collaborations(2003) and the classic Designing Object-Oriented Software (1990). Through her writing, teaching, consulting, and speaking she popularizes the use of informal techniques and thinking tools for architects, designers, and analysts.

Rebecca is a past board member of the Agile Alliance and co-founder of the Agile Open Northwest conference. Most recently she reviewed enterprise architectures and major designs, developed courses on agile use cases, enterprise application design and developing and communicating software architecture. She mentors teams on agile design, object modeling, architecture, agile use case writing, meshing usage scenarios with use cases and agile user stories, and managing incremental, iterative object-technology projects. She practices what she teaches!