Prototyping Software Product Lines analysis with Pharo

2016 
Software Product Lines (SPLs) are an emerging software engineering paradigm that aims to optimize software development costs and time to market trough systematic development of reusable of core assets. At the heart of SPL engineering is variability modelling. Feature models (FM) are a common way to model variability and reason about it. Examples of reasoning are for instance checking that at least one product is represented by a given FM (satisfiability) or finding the product that best fits a given set of requirements. In practice however, such operations are often complex and time consuming. In order to address these challenges, we introduce in the present article the notion of transitive dependency between features and show how it can be used as the basis for efficient analysis and automatic reasoning on feature models. We exploit this new concept to implement a first platform for prototyping and reasoning on large SPLs in Pharo. Finally we illustrate the efficiency of our proposal on the problem of features selection optimisation.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    40
    References
    0
    Citations
    NaN
    KQI
    []