• No results found

University of Groningen Preserving and reusing architectural design decisions van der Ven, Jan

N/A
N/A
Protected

Academic year: 2021

Share "University of Groningen Preserving and reusing architectural design decisions van der Ven, Jan"

Copied!
3
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

University of Groningen

Preserving and reusing architectural design decisions van der Ven, Jan

IMPORTANT NOTE: You are advised to consult the publisher's version (publisher's PDF) if you wish to cite from it. Please check the document version below.

Document Version

Publisher's PDF, also known as Version of record

Publication date: 2019

Link to publication in University of Groningen/UMCG research database

Citation for published version (APA):

van der Ven, J. (2019). Preserving and reusing architectural design decisions. University of Groningen.

Copyright

Other than for strictly personal use, it is not permitted to download or to forward/distribute the text or part of it without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license (like Creative Commons).

Take-down policy

If you believe that this document breaches copyright please contact us providing details, and we will remove access to the work immediately and investigate your claim.

Downloaded from the University of Groningen/UMCG research database (Pure): http://www.rug.nl/research/portal. For technical reasons the number of authors shown on this cover page is limited to 10 maximum.

(2)

195

Abstract

The software architecture is one of the most influential factors for the success or failure of a software system. The decisions made when managing the software architecture form the basis of a software system. Forgetting these architectural decisions, and the reasons behind these decisions, results in knowledge vapori-sation. This architectural knowledge vaporisation has severe consequences. The evolution of a system is more expensive and it is hard to reuse parts of the system if architectural knowledge is missing.

Software architecture research emphasizes the importance of explicitly man-aging architectural decisions to cope with architectural knowledge vaporisation. Models, methods and tools have been proposed to address this issue. Despite these efforts, industry seems to still struggle with managing architectural decisions in real world projects. We address this topic from three directions: artifacts, pro-cess and reuse. First, we show that architectural decisions can be connected with architectural artifacts, making the maintenance of these decisions easier. Second, we investigate the decision process used in industry to look for success factors for decision making. Last, we show that decisions can be reconstructed and reused from the history of systems.

As a start, we investigate the needs from industry concerning architectural knowledge. This investigation shows that the architectural decisions need to be taken into account in combination with existing artifacts like architectural docu-mentation or system impledocu-mentation. We show how explicit decisions can form the bridge between the tacit knowledge of architects and the artifacts that are used in software architecture. For example, one of the developed research tools de-scribed in this thesis enables annotation and management of tacit knowledge as meta-data when writing or reviewing architecture documentation. In this way, ar-chitectural decisions are connected with the documentation of the system, making it easier to access and maintain them.

Next, we investigate how the decision process takes place in practice. We look at the characteristics of the decision, like the person making the decision or the way in which the decision is preserved. We investigate the correlation between decision characteristics and the success of these decisions. We conclude that there are small indicators for success: development experience helps to make better decisions, while large documentation slows projects down.

It is not easy to get experienced architects on all projects. That is why we fur-ther investigate the possibility to reuse previously made architectural decisions. We show how architecture decision data can be made accessible from the history of the source code of open source software systems. We show that this data contains statistics on the occurrence of decisions, as well as tacit rationale of the decisions. The data was not documented explicitly during system development, but was ex-tracted when the systems were finished. In this way, knowledge vaporization can

(3)

196 Abstract

be tackled from a different angle by basing new decisions on relevant knowledge from existing systems.

Referenties

GERELATEERDE DOCUMENTEN

We focus our research on the two most important aspects of these movements: the architectural decision and the pivot, and show that they can be seen as two sides of the same

When relat- ing this to the number of projects, on average every open source project we used contained 6 decisions in commits and 3 commit messages with relevant rationale..

The developed model was used in the work of Chapter 4 , where we showed that it is possible to assist architects and reviewers in preserving tacit knowledge on architectural

3.1 An abstract view on the software architecture design

Other than for strictly personal use, it is not permitted to download or to forward/distribute the text or part of it without the consent of the author(s) and/or copyright

Other than for strictly personal use, it is not permitted to download or to forward/distribute the text or part of it without the consent of the author(s) and/or copyright

Uit dit onderzoek blijkt dat het nodig is om architectuur beslissingen te verbinden met de huidig gebruikte artefacten voor architectuur, zoals documentatie of de source code. We

“What’s in Constructing a Domain Model for Sharing Architectural Knowl- edge?” In: Proceedings of the Eighteenth International Conference on Software Engineer- ing &