+ All Categories
Home > Technology > ASE'11 (short paper)

ASE'11 (short paper)

Date post: 01-Dec-2014
Category:
Upload: acher
View: 524 times
Download: 3 times
Share this document with a friend
Description:
Feature models (FMs) are a popular formalism for describing the commonality and variability of software product lines (SPLs) in terms of features. As SPL development increasingly involves numerous large FMs, scalable modular techniques are required to manage their complexity. In this paper, we present a novel slicing technique that produces a projection of an FM, including constraints. The slicing allows SPL practitioners to find semantically meaningful decompositions of FMs and has been integrated into the FAMILIAR language.
10
Mathieu Acher 1 , Philippe Collet 1 , Philippe Lahire 1 and Robert France 2 1 University of Nice Sophia Antipolis, CNRS, France {acher,collet,lahire}@i3s.unice.fr 2 Colorado State University, USA Computer Science Department [email protected] Slicing Feature Models Slicing Feature Models Semantics, Algorithm, Support, and Applications Mathieu Acher 1 , Philippe Collet 1 , Philippe Lahire 1 and Robert France 2 1 University of Nice Sophia Antipolis, CNRS, France {acher,collet,lahire}@i3s.unice.fr 2 Colorado State University, USA Computer Science Department [email protected] Applications Algorithm Semantics Case Study Reasoning about two kinds of variability Reconciling Feature Models Technique Updating and Extracting Views Video Surveillance Processing Chains Medical Imaging Workflows Reverse Engineering Software Architecture Set of configurations Hierarchy Support for Constraints Root Support Semantics-aware Technique Support Automation Environment Language Standalone Eclipse BDD SAT Textual Editor Propositional Logics Algorithm Support for Constraints Root Support Semantics-aware Technique Syntactical Technique Slicing Paper Short Long Demonstration Automation Environment Language Standalone Eclipse BDD SAT Textual Editor Graphical Editor Editors Future Work Support Case Study Medical Imaging Workflows Reverse Engineering Software Architecture Video Surveillance Processing Chains Motivation Multiple, Inter- related FMs Large and Complex FMs Corrective Capabilities Reasoning about two kinds of variability Reconciling Feature Models Technique Updating and Extracting Views Set of configurations Hierarchy Semantics ASE'11 short paper ASE'11 demonstration Or Xor Mandatory Optional (Algorithm <-> Semantics) ^ (Algorithm <-> CorrectiveCapabilities) ^ (Algorithm <-> RootSupport) ^ (CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware) ^ (SemanticsAware -> Automation) ^ (Language -> TextualEditor) ^ (TextualEditor -> Eclipse) ^ Language
Transcript
Page 1: ASE'11 (short paper)

Mathieu Acher1, Philippe Collet1 , Philippe Lahire1 and Robert France2 1 University of Nice Sophia Antipolis, CNRS, France

{acher,collet,lahire}@i3s.unice.fr2 Colorado State University, USAComputer Science Department

[email protected]

Slicing Feature Models

Slicing Feature ModelsSemantics, Algorithm, Support, and Applications

Mathieu Acher1, Philippe Collet1 , Philippe Lahire1 and Robert France2 1 University of Nice Sophia Antipolis, CNRS, France

{acher,collet,lahire}@i3s.unice.fr2 Colorado State University, USAComputer Science Department

[email protected]

Applications

AlgorithmSemantics

Case Study

Reasoning about two kinds

of variability Reconciling Feature Models

Technique

Updating and

Extracting Views

Video Surveillance Processing

Chains Medical Imaging

Workflows

Reverse Engineering Software Architecture

Set of configurations

Hierarchy Support for Constraints

Root Support

Semantics-aware Technique

Support

Automation EnvironmentLanguage

Standalone EclipseBDD SATTextual Editor

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Paper

ShortLongDemonstration

Automation

Environment

Language

Standalone EclipseBDD SAT

Textual Editor

Graphical Editor

Editors

Future Work

Support

Case Study

Medical Imaging Workflows

Reverse Engineering Software Architecture

Video Surveillance Processing Chains

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Reasoning about two kinds

of variability Reconciling Feature Models

Technique

Updating and Extracting Views

Set of configurations

Hierarchy

Semantics

ASE'11 short paper

ASE'11 demonstration

Or

Xor

Mandatory

Optional

(Algorithm <-> Semantics) ^ (Algorithm <-> CorrectiveCapabilities) ^ (Algorithm <-> RootSupport) ^ (CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware) ^ (SemanticsAware -> Automation) ^ (Language -> TextualEditor) ^ (TextualEditor -> Eclipse) ^ Language

Page 2: ASE'11 (short paper)

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Set of configurations

Hierarchy

Semantics

Or

Xor

Mandatory

Optional

(CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware)

Feature Models

defacto standard for modeling variability more than 1000 citations of Kang et al. 1990 per year

Page 3: ASE'11 (short paper)

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Set of configurations

Hierarchy

Semantics

Or

Xor

Mandatory

Optional

(CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware)

Feature Models

semantics: control legal combination of features (aka configurations)

Batory et al. 2005, Czarnecki et al. 2007, Schobbens et al. 2007

Page 4: ASE'11 (short paper)

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Set of configurations

Hierarchy

Semantics

Or

Xor

Mandatory

Optional

(CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware)

Feature Modelssupport: automated reasoning (e.g., configurators) Benavides et al. 2010

languages and tools e.g., FeatureIDE, SPLOT, TVL and FAMILIAR

Page 5: ASE'11 (short paper)

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Set of configurations

Hierarchy

Semantics

Or

Xor

Mandatory

Optional

(CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware)

Feature Models

Feature Model of Linux: more than 5000 features Berger et al. ASE’10, She et al. ICSE’10

Feature models are governed by many complex constraints Hubaux et al. 2010, Benavides et al. 2010

Feature models are multiple (e.g., systems-of-systems, suppliers) Acher et al. 2011 (PhD thesis)

large, complex and multiple

Page 6: ASE'11 (short paper)

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Set of configurations

Hierarchy

Semantics

Or

Xor

Mandatory

Optional

(CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware)

Feature Models

We need support for Separation of Concerns(1) ability to compose feature models (inserting, merging, aggregating) Acher et al. 2009

(II) ability to decompose feature models

large, complex and multiple

Page 7: ASE'11 (short paper)

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Set of configurations

Hierarchy

Semantics

Or

Xor

Mandatory

Optional

(CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware)

Slicing Feature Models

We need support for Separation of Concerns

(II) ability to decompose feature models

Page 8: ASE'11 (short paper)

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Set of configurations

Hierarchy

Semantics

Or

Xor

Mandatory

Optional

(CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware)

Slicing Feature Modelsinput: slicing criterion (arbitrary set of features, relevant for a feature model user)

output: a new feature model (a slice), representing a projected set of configurations

Page 9: ASE'11 (short paper)

AlgorithmSemantics

Set of configurations

Hierarchy Support for Constraints

Root Support

Semantics-aware Technique

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Set of configurations

Hierarchy

Semantics

ASE'11 short paper

Or

Xor

Mandatory

Optional

(Algorithm <-> Semantics) ^ (Algorithm <-> CorrectiveCapabilities) ^ (Algorithm <-> RootSupport) ^ (CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware)

Page 10: ASE'11 (short paper)

See you!Slicing Feature Models

Semantics, Algorithm, Support, and Applications

Mathieu Acher1, Philippe Collet1 , Philippe Lahire1 and Robert France2 1 University of Nice Sophia Antipolis, CNRS, France

{acher,collet,lahire}@i3s.unice.fr2 Colorado State University, USAComputer Science Department

[email protected]

Applications

AlgorithmSemantics

Case Study

Reasoning about two kinds

of variability Reconciling Feature Models

Technique

Updating and

Extracting Views

Video Surveillance Processing

Chains Medical Imaging

Workflows

Reverse Engineering Software Architecture

Set of configurations

Hierarchy Support for Constraints

Root Support

Semantics-aware Technique

Support

Automation EnvironmentLanguage

Standalone EclipseBDD SATTextual Editor

Propositional Logics

Algorithm

Support for Constraints

Root Support

Semantics-aware TechniqueSyntactical

Technique

Slicing

Paper

ShortLongDemonstration

Automation

Environment

Language

Standalone EclipseBDD SAT

Textual Editor

Graphical Editor

Editors

Future Work

Support

Case Study

Medical Imaging Workflows

Reverse Engineering Software Architecture

Video Surveillance Processing Chains

Motivation

Multiple, Inter-related FMs

Large and Complex FMs

Corrective Capabilities

Reasoning about two kinds

of variability Reconciling Feature Models

Technique

Updating and Extracting Views

Set of configurations

Hierarchy

Semantics

ASE'11 short paper

ASE'11 demonstration

Or

Xor

Mandatory

Optional

(Algorithm <-> Semantics) ^ (Algorithm <-> CorrectiveCapabilities) ^ (Algorithm <-> RootSupport) ^ (CorrectiveCapabilities -> SupportForConstraints) ^ (CorrectiveCapabilities -> SemanticsAware) ^ (SetOfConfigurations <-> SemanticsAware) ^ (SemanticsAware -> Automation) ^ (Language -> TextualEditor) ^ (TextualEditor -> Eclipse) ^ Language


Recommended