Generic Semantics of Feature Diagrams - PowerPoint PPT Presentation

About This Presentation
Title:

Generic Semantics of Feature Diagrams

Description:

Jean-Christophe Trigaux. Supported by First Europe project ' Plenty ' RW FSE ... Feature: ' A prominent and user-visible aspect, quality, or characteristic of a ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 27
Provided by: triga
Category:

less

Transcript and Presenter's Notes

Title: Generic Semantics of Feature Diagrams


1
Generic Semantics of Feature Diagrams
  • Yves Bontemps
  • Patrick Heymans
  • Pierre-Yves Schobbens
  • Jean-Christophe Trigaux
  • Supported by First Europe project  Plenty 
    RWFSE
  • ICFI 2005, Leicester

2
Outline
  • Introduction
  • The Many Feature Diagrams
  • Problems
  • Solutions
  • Varied Feature diagrams
  • Tool support
  • Complexity
  • Conclusion Future Works

3
Introduction
  • Feature Modeling
  • Identify commonality and variability
  • Facilitates variant/configuration/version
    selection and management
  • Feature Diagrams
  • Describe allowed feature combinations
  • Decision diagram
  • Feature  A prominent and user-visible aspect,
    quality, or characteristic of a software system
    or systems. 

4
The Many Feature Diagrams
Root
  • FODA (OFD)

And-Node
XOr-Node
Optional Feature
Kang et al. 1990
5
The Many Feature Diagrams
  • FeatuRSEB

XOR
OR
Griss et al. 1998
6
The Many Feature Diagrams
  • Riebisch (EFD)

Variation point
Multiplicity
  • Generative Programming Czarnecki
  • Our VFD succinct, expressive, naturally embedded

7
Problems
  • What is the meaning of a FD?
  • How to compare FD Notations?
  • Is FDN1  more natural  than FDN2
  • Is FDN1  more expressive  than FDN2
  • Is FDN1  more succinct  than FDN2
  • How to avoid redoing this work for each FD
    notation?
  • Which FD Notation(FDN) to use?

8
Solutions
  • Our semantics of a FD
  • The semantics of a FD is a Product Line
  • The semantics of a Product Line is a set of
    products
  • The semantics of a product is a set of features
  • Here, features are formally left undefined

9
Solutions
  • Problem the meaning of a FD?
  • a)
  • b) F1,F2
  • c) F1,F2,F3,F4
  • d) F1,F2,F3,
    F1,F2,F4
  • e)
  • Solutions
  • Language Syntax Semantics

F1
F2
F3
F4
10
Generic Syntax
  • A FD is a labeled graph with
  • A set of Nodes N
  • Nodes can bear a boolean operator
  • Unique root,
  • Can be leaves (F) i.e. effective features
  • - Can be optional (O)
  • Edges are acyclic, can be optional
  • Constraints F are boolean formulae on N

11
Syntax OFD
  • Node types can be AND, XOR
  • Constraints are binary, can be
  • Requires (implication)
  • Mutex ( not(A and B) )
  • cannot be nested
  • Nodes can be optional
  • Edges cannot be optional

12
Syntax EFD
  • Node types can be AND, XOR, VP(i..j)
  • Edges can be optional, nodes cannot
  • Constraints are graphical, can be  Requires  or
     Mutex .

13
Semantics
  • Why Semantics?
  • Make notation unambiguous
  • Basis for correct tools
  • Allows to state and solve questions of
    expressiveness, succinctness, etc.

14
Semantics
  • A model of a FD is a subset of its nodes s.t.
  • The root is present in the model
  • If a node is present, its sons satisfy its
    operator (type)
  • The presence of a node must be justified by the
    presence one of its parents
  • The constraints are satisfied
  • Note constraints and links have different
    semantics

15
Variant Edge-based semantics
  • Riebisch hints at a semantics based on the
    inclusion of edges in a model

r
y
x
m
n
l
Is l,m a model of this diagram?
16
Compare FD Notations
  • Formal comparison criteria
  • Expressiveness
  • Embeddability
  • Succinctness
  • Redundancy

17
Expressiveness
  • Definition
  • The expressiveness of L is E(L)
  • E(L) D D ? L
  • L1 is more expressive than L2 iff E(L2) ? E(L1)
  • Results
  • OFD is expressively complete
  • Every product line can be described by an OFD
  • No extension is more expressive than OFD !

18
Embeddability
  • Definition
  • L1 is embeddable into L2 iff
  • ? a translation T L1 ? L2 that is
  • Correct T(D) D
  • Node-controlled (compositional on graphs)
  • Results
  • OFD is embeddable into EFD

19
Succintness
  • Definition ( L1 G as succinct as L2)
  • L2 ? G (L1) iff
  • ? translation T L1 ? L2 that is
  • Correct T(l1) l1
  • Within G ? g ? G, ? n ? N, ? l1 ? L1, l1 ? n
    ? T(l1) ? g(n)
  • Results
  • EFD ? OFD
  • VFD ? EFD, GPFD
  • OFD ? O(EFD3)
  • EFD can be cubically more succinct than OFD

20
Redundancy
  • Definition
  • A language L is harmfully redundant iff L is (non
    trivially) self-embeddable
  • A language L is harmlessly redundant iff
  • ? D1 ¹ D2 ? L D1 D2
  • Results
  • OFD is not ambiguous but harmlessly redundant
  • EFD is harmfully redundant

21
Varied Feature Diagram (VFD)
  • Definition
  • VFD is a sublanguage of EFD with just VPs
  • Results
  • EFD is embeddable into VFD
  • VFD is embeddable into EFD
  • VFD ? 3.EFD
  • VFD is not harmfully redundant

22
Varied Feature Diagram (VFD)
23
Tool Support
  • Design FD
  • Select product
  • Compute systems/products
  • Find Resolve conflicts
  • Compare FD and present product(s) in the
    difference
  • Compare FD described in different FD Notations

24
Complexity
  • Deciding wheter a FD has products is NP-complete
  • Deciding wheter two FD are equivalent is
    coNP-complete. Giving a model in their difference
    is NP-complete.

25
Conclusion
  • Uniform Syntax Semantics of many FDN
  • Evaluate/Compare FD Notations
  • VFD is a succinct, natural and non-redundant
    language

26
Future Work
  • Variation points in other diagrams
  • Features as transformations
  • Evolution of product lines
  • Late variability
Write a Comment
User Comments (0)
About PowerShow.com