Blogs (1) >>
ICSE 2019
Sat 25 - Fri 31 May 2019 Montreal, QC, Canada
Fri 31 May 2019 11:00 - 11:20 at Van-Horne - Software Product Lines Chair(s): Shahar Maoz

Cloning is a simple way to create new variants of a system. While cheap at first, it increases the maintenance cost in the long term. Eventually, 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 software 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 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 proposed 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 code, and that it consistently reduces mistakes made by developers during variant integration.

Intention-Based Integration of Software Variants (doc.pdf)437KiB

Fri 31 May
Times are displayed in time zone: (GMT-04:00) Eastern Time (US & Canada) change

11:00 - 12:30: Papers - Software Product Lines at Van-Horne
Chair(s): Shahar MaozTel Aviv University
icse-2019-Technical-Papers11:00 - 11:20
Max LillackUniversity of Leipzig, Ştefan StănciulescuABB Corporate Research, Switzerland, Wilhelm Hedman, Thorsten BergerChalmers University of Technology, Sweden / University of Gothenburg, Sweden, Andrzej WąsowskiIT University of Copenhagen, Denmark
Pre-print File Attached
icse-2019-Technical-Papers11:20 - 11:40
Ruben HeradioUNED (Universidad Nacional de Educacion a Distancia), David Fernandez-AmorosUNED (Universidad Nacional de Educacion a Distancia), Christoph Mayr-DornJohannes Kepler University Linz, Alexander Egyed
icse-2019-Demonstrations11:40 - 12:00
Cuong CuCybersource Corporation, Xin YeCalifornia State University San Marcos, Yongjie ZhengCalifornia State University San Marcos
icse-2019-Technical-Papers12:00 - 12:20
Sami LazregVisteon Electronics and Universite Cote d Azur, Maxime CordySnT, University of Luxembourg, Philippe ColletUniversity of Nice, Patrick HeymansUniversity of Namur, Sébastien MosserUniversité Côte d'Azur, France
icse-2019-Paper-Presentations12:20 - 12:30