Lightweight Evaluation of Software Architecture Decisions
Research output: Chapter in Book/Report/Conference proceeding › Chapter › Scientific › peer-review
|Title of host publication||Relating System Quality and Software Architecture|
|Number of pages||23|
|ISBN (Print)||9780124171688, 9780124170094|
|Publication status||Published - 25 Jul 2014|
|Publication type||A3 Part of a book or another research book|
Software architecture is an important foundation of every software project. Therefore, it is advisable to evaluate it in early stages of the software design. Architecture evaluation helps to uncover risks and suboptimal decisions before they cause tremendous cost and re-engineering efforts. Unfortunately, many software companies still do not integrate architecture evaluations into their software projects as a standard activity. This is partially because architecture evaluation is perceived as complicated and time-consuming by some people. Modern agile development methodologies are perceived as avoiding up-front architectural design, which amplifies this problem. In this chapter, we present an extended description of the decision-centric architecture review (DCAR) method. DCAR is lightweight and easy to integrate into different types of software projects (traditional and agile projects). We present the method in detail and show how it can be used in an incremental development process. Additionally, we explain different approaches for integrating DCAR with Scrum to support continuous and iterative architecture evaluation. Finally, we present industrial experiences from the evaluations we carried out using DCAR, both as external reviewers in industrial projects and when applying DCAR in our own industrial software projects.