Software architecture evaluation is an essential part of architecture management and a means to uncover problems and increase confidence in the capability of the software architecture in fulfilling the most critical requirements. Architecture evaluation is typically carried out at an early stage of a software development. However, development efforts are often related to further development of existing software. We present a case study of the software architecture board (SWAB) initiative carried out at in a company called NSN. SWAB employed a lightweight architecture evaluation and management approach to exchange architectural experiences with related products and assess ability to fulfill future requirements. SWAB operated for two years but ultimately came to an end because the desired objectives were not achieved. The case study provides lessons for the evaluation of architecture in mature products and for using a lightweight evaluation approach: Evaluation in mature products seems not to be about finding problems and risk or making trade-offs, but about architecture management such as better communication, raising awareness about the architecture, and increased confidence to the architecture throughout the organization; and a lightweight architecture evaluation seems to be a good approach especially for mature products. However, the motivation and justification for architectural evaluation of mature products remains challenging, as their architecture is already in place and evolved over years towards good candidates, although the need for inter-product communication and alignment of architectural issues can be argued for.
Mikko Raatikainen (Aalto University); Juha Savolainen (Danfoss, Graasten), Tomi Männistö (University of Helsinki): Architecture management and evaluation in mature products: experiences from a lightweight approach