To main content

Semantic Differencing for Product Line Evolution

Abstract

In model-driven product line development, the developer does not only specify high-level features, but also define how these features can be realized in terms of model editing operations. As a product line evolves over time, it is vital for the developer to have a precise overview of the added/removed products in the evolved product line, which is considered the semantic difference between the original and the evolved product line. However, current semantic differencing techniques for feature models only compare high-level features of the two product lines without considering their feature realizations. We address this challenge by proposing a semantic differencing approach which considers both the feature specification and realization of the original and the evolved product line. We illustrate our approach on the evolution of Common Variability Language (CVL)-based product lines. In particular, we define two semantic differencing operators for comparing the feature specification and the feature realization of two product lines, resulting in a set of "diff models". These two operators are implemented in Alloy and evaluated through a case study on train control product lines.

Category

Report

Client

  • SINTEF AS / 102002271

Language

English

Author(s)

  • Xiaorui Zhang
  • Øystein Haugen
  • Birger Møller-Pedersen

Affiliation

  • SINTEF Digital / Sustainable Communication Technologies
  • University of Oslo

Year

2013

Publisher

SINTEF

Issue

A25398

ISBN

9788214053326

View this publication at Cristin