Managing architectural design decision documentation and evolution

Date

2014-12

Authors

Che, Meiru

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Software architecture provides a high-level framework for a software system, and plays an important role in achieving functional and non-functional requirements. Since the year 2004, software architecture has been considered as a set of architectural design decisions (ADDs). However, software architecture is implicit and evolves as the software development process moves forward. The implicitness together with continuous evolution leads to many problems such as architecture drift and erosion as well as high cost reconstruction. Without capturing and managing ADDs, most of existing architectural knowledge evaporates, and reusing and evolving architecture can be difficult. These problems are even more serious in global software development (GSD). This dissertation presents a novel methodology for capturing ADDs during the architecting process and managing the evolution of ADDs to reduce architectural knowledge evaporation. This methodology explicitly documents ADDs using a scenario-based approach, which covers three views of a software architecture, to record architectural knowledge, and incorporates evolution-centered characteristics to manage ADD evolution for reducing architectural knowledge evaporation. Furthermore, the dissertation presents ADD management in the context of GSD to analyze typical ADD management paradigms, and to offer insights on, techniques on, and support for sharing and coordinating ADDs in a GSD setting. This dissertation focuses on both the documentation and the evolution needs for ADDs in localized and global software development.

Description

text

LCSH Subject Headings

Citation