一句话:通过访谈、问卷与模型历史分析,揭示工业 clone-and-own 产品线模型漂移的根因,并评估用语义提升缓解差异的可行性。
许多工业软件产品线采用 clone-and-own 方式在软件产品间复用,导致产品逐渐漂移,进而增加变更传播、领域分析和质量保障等工作的成本。本文研究铁路领域某工业伙伴的大规模模型驱动 clone-and-own 软件产品线中的产品漂移。作者开展访谈和问卷调查,并分析项目模型历史中的模型。结果发现,额外成本主要由较大的模型差异和增加的沟通成本造成。作者认为,短期内处理症状(即应对较大的模型差异)比采用复杂的变异性管理更能将软件产品线工程成本控制在可接受范围。为处理症状,作者采用基于 semantic lifting 的方案来简化模型差异,并通过访谈和问卷在该项目情境中评估变异性管理方法与 semantic lifting 方案的可行性。
Many industrial software product lines use a clone-and-own approach for reuse among software products. As a result, the different products in the product line may drift apart, which implies increased efforts for tasks such as change propagation, domain analysis, and quality assurance. While many solutions have been proposed in the literature, these are often difficult to apply in a real-world setting. We study this drift of products in a concrete large-scale industrial model-driven clone-and-own software product line in the railway domain at our industry partner. For this purpose, we conducted interviews and a survey, and we investigated the models in the model history of this project. We found that increased efforts are mainly caused by large model differences and increased communication efforts. We argue that, in the short-term, treating the symptoms (i.e., handling large model differences) can help to keep efforts for software product-line engineering acceptable — instead of employing sophisticated variability management. To treat the symptoms, we employ a solution based on semantic-lifting to simplify model differences. Using the interviews and the survey, we evaluate the feasibility of variability management approaches and the semantic-lifting approach in the context of this project.
@inproceedings{paperbot7118,
title = {Sometimes you have to treat the symptoms: tackling model drift in an industrial clone-and-own software product line},
author = {Christof Tinnes and Wolfgang Rössler and Uwe Hohenstein and Torsten Kühn and Andreas Biesdorf and Sven Apel},
booktitle = {FSE},
year = {2022},
doi = {10.1145/3540250.3558960}
}