paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Intention-Based Integration of Software Variants

基于意图的软件变体整合
ICSE 2019 IEEE/ACM 41st International Conference on Software Engineering (ICSE)2019匹配度 1/10 · 该论文关注克隆变体的整合意图与IDE工具支持,属于软件工程/软件产品线方向,未涉及用户核心关注的静态分析、LLM/Agent、浮点程序分析或贝叶斯程序分析,因此与研究画像基本无关。引用 26 inbox
Max Lillack, Stefan Stanciulescu, Wilhelm Hedman, Thorsten Berger, Andrzej Wasowski
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:提出整合意图与IDE工具INCLINE,以声明/撤销意图的方式将克隆变体整合为可配置平台,实验表明可减少整合错误。

克隆是创建系统变体的便捷方式,但长期维护成本高,最终需整合为可配置平台。该整合不同于传统软件合并:既要合并变体间的常规代码改进,又要将可变代码组织进平台,需多轮探索并进行细粒度编辑,而现有工具支持匮乏。本文提出用一小组“整合意图”来减轻编辑负担;开发者可对代码元素声明或撤销意图,交互式探索整合空间。作者实现 IDE 工具 INCLINE 及五个可编辑视图,并给出“保留功能”等意图。实验评估意图完备性、INCLINE 的正确性与性能及使用收益;结果表明其能处理复杂整合、视图有助于导航并减少整合错误。

问题
克隆变体长期维护成本高,最终需整合为可配置平台;该整合比传统软件合并更复杂,需细粒度、探索性的多轮编辑,却缺乏工具支持。
方法
提出用声明在代码片段上的领域特定“整合意图”(如保留功能、保留为可配置特性)控制整合,并实现 IDE 工具 INCLINE 及五个可编辑视图,支持开发者声明/撤销意图以交互式探索整合空间。
评估
通过一系列实验评估所提意图的完备性、INCLINE 的正确性与性能,以及使用意图对变体整合的收益;结果显示 INCLINE 能处理复杂整合任务,视图有助于代码导航,并持续减少开发者整合错误。
原文摘要(Abstract)

Cloning is a simple way to create new variants of a system. While cheap at first, it increases maintenance cost in the long term. Eventually, the cloned variants need to be integrated into a configurable platform. Such an integration is challenging: it involves merging the usual code improvements between the variants, and also integrating the variable code (features) into the platform. Thus, variant integration differs from traditional soft- ware merging, which does not produce or organize configurable code, but creates a single system that cannot be configured into variants. In practice, variant integration requires fine-grained code edits, performed in an exploratory manner, in multiple iterations. Unfortunately, little tool support exists for integrating cloned variants. In this work, we show that fine-grained code edits needed for integration can be alleviated by a small set of integration intentions-domain-specific actions declared over code snippets controlling the integration. Developers can interactively explore the integration space by declaring (or revoking) intentions on code elements. We contribute the intentions (e.g., 'keep functionality' or 'keep as a configurable feature') and the IDE tool INCLINE, which implements the intentions and five editable views that visualize the integration process and allow declaring intentions producing a configurable integrated platform. In a series of experiments, we evaluated the completeness of the pro- posed intentions, the correctness and performance of INCLINE, and the benefits of using intentions for variant integration. The experiments show that INCLINE can handle complex integration tasks, that views help to navigate the code, and that it consistently reduces mistakes made by developers during variant integration.

链接与引用

DOI 原文 · PDF(开放获取) · DBLP

BibTeX
@inproceedings{LillackSHBW20,
  title = {Intention-Based Integration of Software Variants},
  author = {Max Lillack and Stefan Stanciulescu and Wilhelm Hedman and Thorsten Berger and Andrzej Wasowski},
  booktitle = {ICSE},
  year = {2019},
  doi = {10.1109/icse.2019.00090}
}