VariantInc: Automatically Pruning and Integrating Versioned Software Variants

Sebastian Krieter, Jacob Krüger, Thomas Leich, Gunter Saake

Onderzoeksoutput: Hoofdstuk in Boek/Rapport/CongresprocedureConferentiebijdrageAcademicpeer review

6 Citaten (Scopus)
4 Downloads (Pure)

Samenvatting

Developers use version-control systems and software-hosting platforms to manage their software systems. They rely on the provided branching and forking mechanisms to implement new features, fix bugs, and develop customized system variants. A particular problem arises when forked variants are not re-integrated (i.e., merged), but kept and co-evolved as individual systems. This can cause maintenance overheads, due to change propagation and limitations in simultaneously managing variations in space (variants) and time (revisions). Thus, most organizations decide to integrate their set of variants into a single platform at some point, and several techniques have been proposed to semi-automate such an integration. However, existing techniques usually consider only a single revision of each variant and do not merge the revision histories, disregarding that not only variants (i.e., configuring the features of the system) but also revisions (i.e., checking out specific versions of the features) are important. We propose an automated technique, VariantInc, for analyzing, pruning, and integrating variants of a system that also merges the revision history of each variant into the resulting platform (i.e., using presence conditions). To validate VariantInc, we employed it on 160 open-source C systems of various sizes (i.e., number of forks, revisions, source code). The results show that VariantInc works as intended, and allows developers or researchers to automatically integrate variants into a platform as well as to perform software analyses.
Originele taal-2Engels
TitelSPLC '23
SubtitelProceedings of the 27th ACM International Systems and Software Product Line Conference - Volume A
RedacteurenPaolo Arcaini, Maurice H. ter Beek, Gilles Perrouin, Iris Reinhartz-Berger, Miguel R. Luaces, Christa Schwanninger, Shaukat Ali, Mahsa Varshosaz, Angelo Gargantini, Stefania Gnesi, Malte Lochau, Laura Semini, Hironori Washizaki
UitgeverijAssociation for Computing Machinery, Inc
Pagina's129-140
Aantal pagina's12
ISBN van elektronische versie979-8-4007-0091-0
DOI's
StatusGepubliceerd - 28 aug. 2023
Evenement27th ACM International Systems and Software Product Line Conference - Tokyo, Japan
Duur: 28 aug. 20231 sep. 2023

Congres

Congres27th ACM International Systems and Software Product Line Conference
Verkorte titelSPLC
Land/RegioJapan
StadTokyo
Periode28/08/231/09/23

Financiering

The research reported in this paper has been partially supported by the German Research Foundation (DFG) projects EXPLANT (LE 3382/2-3, SA 465/49-3) [40] and VariantSync (TH 2387/1-1) [30].

FinanciersFinanciernummer
Deutsche ForschungsgemeinschaftLE 3382/2-3, TH 2387/1-1, SA 465/49-3

    Vingerafdruk

    Duik in de onderzoeksthema's van 'VariantInc: Automatically Pruning and Integrating Versioned Software Variants'. Samen vormen ze een unieke vingerafdruk.

    Citeer dit