Migrating Java-based apo-games into a composition-based software product line
Paper i proceeding, 2019

A software product line enables an organization to systematically reuse software features that allow to derive customized variants from a common platform, promising reduced development and maintenance costs. In practice, however, most organizations start to clone existing systems and only extract a software product line from such clones when the maintenance and coordination costs increase. Despite the importance of extractive software-product-line adoption, we still have only limited knowledge on what practices work best and miss datasets for evaluating automated techniques. To improve this situation, we performed an extractive adoption of the Apo-Games, resulting in a systematic analysis of fve Java games and the migration of three games into a composition-based software product line. In this paper, we report our analysis and migration process, discuss our lessons learned, and contribute a feature model as well as the implementation of the extracted software product line. Overall, the results help to gain a better understanding of problems that can appear during such migrations, indicating research opportunities and hints for practitioners. Moreover, our artifacts can serve as dataset to test automated techniques and developers may improve or extent them in the future. © 2019 Copyright held by the owner/author(s).

Feature model

Extraction

FeatureHouse

Software product line

Apo-Games

Case study

Författare

Jamel Debbiche

Oskar Lignell

Jacob Krüger

Otto von Guericke Universitaet Magdeburg

Thorsten Berger

Chalmers, Data- och informationsteknik, Software Engineering, Software Engineering for Testing, Requirements, Innovation and Psychology

ACM International Conference Proceeding Series

Vol. A 98-102

23rd International Systems and Software Product Line Conference, SPLC 2019, co-located with the 13th European Conference on Software Architecture, ECSA 2019
Paris, France,

Ämneskategorier

Produktionsteknik, arbetsvetenskap och ergonomi

Tillförlitlighets- och kvalitetsteknik

Programvaruteknik

DOI

10.1145/3336294.3342361

Mer information

Senast uppdaterat

2020-05-06