Identification and visualization of variability implementations in object-oriented variability-rich systems: a symmetry-based approach - Archive ouverte HAL
Article Dans Une Revue Automated Software Engineering Année : 2022

Identification and visualization of variability implementations in object-oriented variability-rich systems: a symmetry-based approach

Résumé

Most modern object-oriented software systems are variability-rich, despite that they may not be developed as product lines. Their variability is implemented by several traditional techniques in combination, such as inheritance, overloading, or design patterns. As domain features or variation points with variants are not a by-product of these techniques, variability in code assets of such systems is implicit, and hardly documented, hampering qualities such as understandability and maintainability. In this article, we present an approach for automatic identification and visualization of variability implementation places, that is, variation points with variants, in variability-rich systems. To uniformly identify them, we propose to rely on the existing symmetries in the different software constructs and patterns. We then propose to visualize them according to their density. By means of our realized toolchain implementing the approach, symfinder , we report on a threefold evaluation, (i) on the identified potential variability in sixteen large open-source systems and symfinder 's scalability, (ii) on measuring symfinder 's precision and robustness when mapping identified variability to domain features, and (iii) on its usage by a software architect. Results show that symfinder can indeed help in identifying and comprehending the variability of the targeted systems.
Fichier principal
Vignette du fichier
Manuscript-CameraReady.pdf (4.39 Mo) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03593967 , version 1 (02-03-2022)

Identifiants

Citer

Xhevahire Tërnava, Johann Mortara, Philippe Collet, Daniel Le Berre. Identification and visualization of variability implementations in object-oriented variability-rich systems: a symmetry-based approach. Automated Software Engineering, 2022, pp.1-52. ⟨10.1007/s10515-022-00329-x⟩. ⟨hal-03593967⟩
213 Consultations
251 Téléchargements

Altmetric

Partager

More