Multi-view editing of software product lines with PEoPL
Paper in proceeding, 2018

A software product line is a portfolio of software variants in an application domain. It relies on a platform integrating common and variable features of the variants using variability mechanisms-Typically classified into annotative and compositional mechanisms. Annotative mechanisms (e.g., using the C preprocessor) are easy to apply, but annotations clutter source code and feature code is often scattered across the platform, which hinders program comprehension and increases maintenance effort. Compositional mechanisms (e.g., using feature modules) support program comprehension and maintainability by modularizing feature code, but are difficult to adopt. Most importantly, engineers need to choose one mechanism and then stick to it for the whole life cycle of the platform. The PEoPL (Projectional Editing of Product Lines) approach combines the advantages of both kinds of mechanisms. In this paper, we demonstrate the PEoPL IDE, which supports the approach by providing various kinds of editable views, each of which represents the same software product line using annotative or compositional variability mechanisms, or subsets of concrete variants. Software engineers can seamlessly switch these views, or use multiple views side-by-side, based on the current engineering task. A demo video of PEoPL is available at Youtube: https://youtu.be/wByUxSPLoSY.

annotative

Product lines

Zprojectional editing

Modular

Author

Mukelabei Mukelabai

University of Gothenburg

Benjamin Behringer

Htw Saar

Moritz Fey

Htw Saar

Jochen Palz

Harz University of Applied Sciences

Jacob Krüger

Harz University of Applied Sciences

Thorsten Berger

University of Gothenburg

Proceedings - International Conference on Software Engineering

02705257 (ISSN)

Vol. Part F137351 81-84

40th ACM/IEEE International Conference on Software Engineering, ICSE 2018
Gothenburg, Sweden,

Subject Categories

Software Engineering

Embedded Systems

Computer Systems

DOI

10.1145/3183440.3183499

More information

Latest update

3/14/2022