A platform for research: civil engineering, architecture and urbanism
Understanding and Supporting Software Architectural Decisions:for Reducing Architectural Knowledge Vaporization
The architecture of a software system is the result of architectural decisions on various topics, such as frameworks, patterns, programming languages, or ways to decompose the software system. Such decisions and their rationales are a significant part of the architectural knowledge about a software system. Architectural knowledge about a software system tends to vaporize. For example, architects might forget the rationales of decisions, change jobs, or postpone indefinitely documenting decisions to avoid disrupting their design flow. Architectural knowledge vaporization has major practical consequences, such as drifting away from the initially intended architecture, and expensive evolution, due to the substantial needed effort to understand previous decisions and to avoid conflicts with them. The overall research problem addressed in this thesis is how to reduce architectural knowledge vaporization. The overall solution is to reduce architectural knowledge vaporization by documenting architectural decisions and their rationales. The contributions of this thesis at solving this problem can be grouped in three phases: understanding the state of practice and research, exploring new ideas, and proposing concrete approaches to reduce architectural knowledge vaporization. In the third phase, we contributed with user friendly, open-source tool support for the two approaches for making and documenting individual and group architectural decisions. Overall, the contributions of this thesis help practitioners reduce architectural knowledge vaporization. Furthermore, the contributions of this thesis help researchers understand various aspects of architectural decisions and architectural knowledge, so that researchers can propose approaches that satisfy the needs of practitioners.
Understanding and Supporting Software Architectural Decisions:for Reducing Architectural Knowledge Vaporization
The architecture of a software system is the result of architectural decisions on various topics, such as frameworks, patterns, programming languages, or ways to decompose the software system. Such decisions and their rationales are a significant part of the architectural knowledge about a software system. Architectural knowledge about a software system tends to vaporize. For example, architects might forget the rationales of decisions, change jobs, or postpone indefinitely documenting decisions to avoid disrupting their design flow. Architectural knowledge vaporization has major practical consequences, such as drifting away from the initially intended architecture, and expensive evolution, due to the substantial needed effort to understand previous decisions and to avoid conflicts with them. The overall research problem addressed in this thesis is how to reduce architectural knowledge vaporization. The overall solution is to reduce architectural knowledge vaporization by documenting architectural decisions and their rationales. The contributions of this thesis at solving this problem can be grouped in three phases: understanding the state of practice and research, exploring new ideas, and proposing concrete approaches to reduce architectural knowledge vaporization. In the third phase, we contributed with user friendly, open-source tool support for the two approaches for making and documenting individual and group architectural decisions. Overall, the contributions of this thesis help practitioners reduce architectural knowledge vaporization. Furthermore, the contributions of this thesis help researchers understand various aspects of architectural decisions and architectural knowledge, so that researchers can propose approaches that satisfy the needs of practitioners.
Understanding and Supporting Software Architectural Decisions:for Reducing Architectural Knowledge Vaporization
Tofan, Dan (author)
2015-01-01
Tofan , D 2015 , ' Understanding and Supporting Software Architectural Decisions : for Reducing Architectural Knowledge Vaporization ' , Doctor of Philosophy , University of Groningen , [Groningen] .
Theses
Electronic Resource
English
DDC:
720
Using architectural knowledge in architectural design
TIBKAT | 1990
|Software Architectural Transformation
NTIS | 2000
|Integrating Architectural Science Understanding into the Architectural Design Process
Taylor & Francis Verlag | 1991
|Software Architectural Transformation
NTIS | 2000
|