4.4 Article

Open-source software product line extraction processes: the ArgoUML-SPL and Phaser cases

期刊

EMPIRICAL SOFTWARE ENGINEERING
卷 27, 期 4, 页码 -

出版社

SPRINGER
DOI: 10.1007/s10664-021-10104-3

关键词

Software product lines; Re-engineering; Mining software repositories; ArgoUML; Phaser

资金

  1. Johannes Kepler University Linz

向作者/读者索取更多资源

This paper provides and analyzes empirical data on the extraction processes of two open-source case studies, offering an in-depth characterization of the processes themselves. The results indicate varying ranges of source code changes, the potential use of branching strategies, and challenges such as lack of tool support and complexity with feature dependencies and constraints. The datasets and analysis scripts provided in this study serve as a valuable resource for extractive SPL adoption research and practice.
Software Product Lines (SPLs) are rarely developed from scratch. Commonly, they emerge from one product when there is a need to create tailored variants, or from existing variants created in an ad-hoc way once their separated maintenance and evolution become challenging. Despite the vast literature about re-engineering systems into SPLs and related technical approaches, there is a lack of detailed analysis of the process itself and the effort involved. In this paper, we provide and analyze empirical data of the extraction processes of two open-source case studies, namely ArgoUML and Phaser. Both cases emerged from the transition of a monolithic system into an SPL. The analysis relies on information mined from the version control history of their respective source-code repositories and the discussion with developers that took part in the process. Unlike previous works that focused mostly on the structural results of the final SPL, the contribution of this study is an in-depth characterization of the processes. With this work, we aimed at providing a deeper understanding of the strategies for SPL extraction and their implications. Our results indicate that the source code changes can range from almost a fourth to over half of the total lines of code. Developers may or may not use branching strategies for feature extraction. Additionally, the problems faced during the extraction process may be due to lack of tool support, complexity on managing feature dependencies and issues with feature constraints. We made publicly available the datasets and the analysis scripts of both case studies to be used as a baseline for extractive SPL adoption research and practice.

作者

我是这篇论文的作者
点击您的名字以认领此论文并将其添加到您的个人资料中。

评论

主要评分

4.4
评分不足

次要评分

新颖性
-
重要性
-
科学严谨性
-
评价这篇论文

推荐

暂无数据
暂无数据