Affiliation:
1. Federal Institute of Bahia, Salvador, Brazil
2. Institute of Computing (IC), Federal University of Bahia, Salvador, Brazil
3. Federal Rural University of Pernambuco, Recife, Brazil
4. University College London, London, UK
Abstract
Software Product Lines (SPLs) improve time-to-market, enhance software quality, and reduce maintenance costs. Current SPL reengineering practices are largely manual and require domain knowledge. Thus, adopting and, to a lesser extent, maintaining SPLs are expensive tasks, preventing many companies from enjoying their benefits. To address these challenges, we introduce
Foundry
, an approach utilising software transplantation to reduce the manual effort of SPL adoption and maintenance.
Foundry
enables integrating features across different codebases, even codebases that are unaware that they are contributing features to a software product line. Each product produced by
Foundry
is pure code, without variability annotation, unlike feature flags, which eases variability management and reduces code bloat.
We realise
Foundry
in
prodScalpel
, a tool that transplants multiple organs (i.e., a set of interesting features) from donor systems into an emergent product line for codebases written in C. Given tests and lightweight annotations identifying features and implantation points,
prodScalpel
automates feature extraction and integration. To evaluate its effectiveness, our evaluation compares feature transplantation using
prodScalpel
to the current state of practice: on our dataset,
prodScalpel
’s use speeds up feature migration by an average of 4.8 times when compared to current practice.
Funder
UKRI EPSRC
INES
CNPq
CAPES
FACEPE
PRONEX
FAPESB INCITE
Federal Institute of Bahia
Publisher
Association for Computing Machinery (ACM)
Reference60 articles.
1. Reengineering legacy applications into software product lines: a systematic mapping
2. Variability in Software Product Lines
3. Automated software transplantation
4. Jonatas Ferreira Bastos, Paulo Anselmo da Mota Silveira Neto, Eduardo Santana de Almeida, and Silvio Romero de Lemos Meira. 2015. Software product lines adoption: An industrial case study (keynote). In Proceedings of the 3rd International Workshop on Conducting Empirical Studies in Industry (CESI ’15). IEEE Press, 35–42.