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.
197
Samenvatting
De software architectuur is de ruggengraat van software systemen. De ontwerp-beslissingen die worden genomen vormen de basis van deze architectuur. Als je deze beslissingen en de motivering van deze beslissingen vergeet, verlies je be-langrijke kennis over het systeem; kennis verdamping (knowledge vaporization). De verdamping van architectuur kennis kan ernstige gevolgen hebben. De evo-lutie van het systeem is veel duurder terwijl het ook veel lastiger is onderdelen van het systeem opnieuw te gebruiken als de onderliggende ontwerpbeslissingen onbekend zijn.
Onderzoek naar software architectuur benadrukt dat het belangrijk is om on-twerpbeslissingen expliciet te behandelen om kennis verdamping te voorkomen. Door middel van modellen, methodes en tooling wordt er getracht deze proble-men op te lossen. Ondanks deze inspanningen blijft het probleem in de dageli-jkse praktijk van het bedrijfsleven vaak voorkomen. In dit onderzoek bekijken we het probleem vanuit drie verschillende hoeken: artefacten, processen en herge-bruik. Als eerste laten we zien dat beslissingen over de architectuur kunnen wor-den verbonwor-den met veelgebruikte architectuur artefacten, waardoor minder ken-nis verloren gaat. Ten tweede hebben we onderzoek gedaan naar het architec-tuur ontwikkelprocess en hebben we bekeken welke aspecten van dit proces be-langrijk zijn voor succesvolle beslissingen. Als laatste laten we zien dat je on-twerpbeslissingen kan hergebruiken door ze af te leiden van de versiegeschiedenis van bestaande software systemen.
We zijn begonnen met onderzoek naar de behoeftes vanuit het bedrijfsleven voor architectuur kennis. 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 laten zien dat er een brug kan ontstaan tussen de impliciete ontwerpbeslissingen en de artifacts door ontwerpbeslissingen expliciet bij te houden. Een van de ontwikkelde tools geeft bijvoorbeeld de mo-gelijkheid om architectuur beslissingen als metadata te annoteren en bij te houden binnen architectuur documentatie. Op deze manier zijn de ontwerpbeslissingen verbonden met de documentatie waardoor ze makkelijker kunnen worden onder-houden.
Vervolgens hebben we onderzoek gedaan naar het beslissingsproces in de prak-tijk. We hebben gekeken naar de context van het beslissingsproces, zoals de ver-antwoordelijke voor de beslissing en hoe de beslissing wordt bijgehouden. We hebben gekeken naar de correlatie tussen deze context en het succes van de besliss-ing. Hierbij hebben we kleine succesfactoren gevonden: de ervaring als ontwikke-laar helpt om betere beslissingen te nemen, terwijl uitgebreide documentatie pro-jecten vertraagt.