Logo des Repositoriums
 

Intention-Based Integration of Software Variants

dc.contributor.authorLillack, Max
dc.contributor.authorStanciulescu, Stefan
dc.contributor.authorHedman, Wilhelm
dc.contributor.authorBerger, Thorsten
dc.contributor.authorWasowski, Andrzej
dc.contributor.editorFelderer, Michael
dc.contributor.editorHasselbring, Wilhelm
dc.contributor.editorRabiser, Rick
dc.contributor.editorJung, Reiner
dc.date.accessioned2020-02-03T13:03:21Z
dc.date.available2020-02-03T13:03:21Z
dc.date.issued2020
dc.description.abstractCloning is a simple way to create new variants of a system. While cheap at first, it increases maintenance cost in the long term. Eventually, the cloned variants need to be integrated into a configurable platform. Such an integration is challenging: it involves merging the usual code improvements between the variants, and also integrating the variable code (features) into the platform. As such, variant integration differs from traditional software merging, which does not produce or organize configurable code, but creates a single system that cannot be configured into variants. In practice, variant integration requires fine-grained code edits, performed in an exploratory manner, in multiple iterations. Unfortunately, little tool support exists for integrating cloned variants. In this work, we show that fine-grained code edits needed for integration can be alleviated by a small set of integration intentions—domain-specific actions declared over code snippets controlling the integration. Developers can interactively explore the integration space by declaring (or revoking) intentions on code elements. We contribute the intentions (e.g., 'keep functionality' or 'keep as a configurable feature') and the IDE tool INCLINE, which implements the intentions and five editable views that visualize the integration process and allow declaring intentions producing a configurable integrated platform. In a series of experiments, we evaluated the completeness of the proposed intentions, the correctness and performance of INCLINE, and the benefits of using intentions for variant integration. The experiments show that INCLINE can handle complex integration tasks, that views help to navigate the code, and that it consistently reduces mistakes made by developers during variant integration.en
dc.identifier.doi10.18420/SE2020_15
dc.identifier.isbn978-3-88579-694-7
dc.identifier.pissn1617-5468
dc.identifier.urihttps://dl.gi.de/handle/20.500.12116/31691
dc.language.isoen
dc.publisherGesellschaft für Informatik e.V.
dc.relation.ispartofSoftware Engineering 2020
dc.relation.ispartofseriesLecture Notes in Informatics (LNI) - Proceedings, Volume P-300
dc.subjectsoftware variants
dc.subjectsoftware re-engineering
dc.subjectsoftware integration
dc.subjectsoftware product lines
dc.titleIntention-Based Integration of Software Variantsen
dc.typeText/Conference Paper
gi.citation.endPage
gi.citation.publisherPlaceBonn
gi.citation.startPage57
gi.conference.date24.-28. Feburar 2020
gi.conference.locationInnsbruck, Austria
gi.conference.sessiontitleProduktlinien und Variabilität

Dateien

Originalbündel
1 - 1 von 1
Lade...
Vorschaubild
Name:
B4-02.pdf
Größe:
53.5 KB
Format:
Adobe Portable Document Format