SlideShare une entreprise Scribd logo
1  sur  33
Télécharger pour lire hors ligne
WebFML 
Synthesizing 
Feature 
Models 
Everywhere 
Guillaume 
Bécan, 
Sana 
Ben 
Nasr, 
Mathieu 
Acher 
and 
Benoit 
Baudry 
1 
h:p://>nyurl.com/WebFMLDemo
There are numerous artefacts that 
exhibit features and their dependencies. 
Product 
Line 
Modeling 
variability 
2 
φ
Feature 
Models 
defacto 
standard 
for 
modeling 
variability 
3 
Feature 
Model 
= 
Feature 
Diagram 
+ 
Proposi>onal 
Formula 
φ 
. 
Configura@on 
Seman@cs 
Set 
of 
valid 
configura@ons 
(set 
of 
selected 
features) 
of 
an 
FM. 
Ontological 
Seman@cs 
Hierarchy 
and 
feature 
groups 
of 
an 
FM. 
Define 
the 
seman@cs 
of 
the 
features’ 
rela@onships. 
Features 
parent 
feature 
2 
child 
features 
root
4 
Feature 
Models 
defacto 
standard 
for 
modeling 
variability 
Valid 
configura@on: 
{Wiki, 
Storage, 
License, 
Hos@ng, 
P.SQL, 
P.License, 
H.Service 
, 
Ontological 
Seman@cs 
Hierarchy 
and 
feature 
groups 
of 
an 
FM. 
Define 
the 
seman@cs 
of 
the 
features’ 
rela@onships. 
Domain} 
Hierarchy 
+ 
Variability 
= 
set 
of 
valid 
configura@ons
For 
a 
given 
configura@on 
set, 
many 
(maximal) 
feature 
diagrams 
with 
different 
ontological 
seman@cs 
[She 
et 
al. 
ICSE’11, 
Andersen 
et 
al. 
SPLC’12, 
Acher 
et 
al. 
VaMoS’13] 
5
For 
a 
given 
configura@on 
set, 
many 
(maximal) 
feature 
diagrams 
with 
different 
ontological 
seman@cs 
[She 
et 
al. 
ICSE’11, 
Andersen 
et 
al. 
SPLC’12, 
Acher 
et 
al. 
VaMoS’13] 
6
Importance 
of 
ontological 
seman@cs 
(1) 
7
Importance 
of 
ontological 
seman@cs 
(2) 
8
Importance 
of 
ontological 
seman@cs 
(3) 
9 
Communica>on 
Comprehension 
Forward 
engineering 
(e.g., 
genera>on)
10 
Importance 
of 
ontological 
seman@cs 
(4) 
Two 
product 
configurators 
generated 
from 
two 
FMs 
with 
the 
same 
configura@on 
seman@cs 
but 
different 
ontological 
seman@cs. 
Good 
FM 
Good 
configura@on 
interface 
Bad 
FM 
Bad 
configura@on 
interface
Most 
of 
the 
exis@ng 
approaches 
neglect 
either 
configura@on 
or 
ontological 
seman@cs. 
We 
want 
both! 
11 
φ
Fundamental 
Problem 
Selec@ng 
a 
Spanning 
Tree 
of 
the 
Binary 
Implica@on 
Graph 
(BIG) 
12
13 
Fundamental 
Problem 
Selec@ng 
a 
Spanning 
Tree 
of 
the 
Binary 
Implica@on 
Graph 
(BIG) 
#0 
Op@mum 
branching 
(Tarjan) 
weigh@ng 
edges
14 
Fundamental 
Problem 
Selec@ng 
a 
Spanning 
Tree 
of 
the 
Binary 
Implica@on 
Graph 
(BIG) 
#1 
Ranking 
lists 
best 
parent 
candidates 
for 
each 
feature
15 
Fundamental 
Problem 
Selec@ng 
a 
Spanning 
Tree 
of 
the 
Binary 
Implica@on 
Graph 
(BIG) 
#2 
Clusters 
~possible 
siblings
16 
Fundamental 
Problem 
Selec@ng 
a 
Spanning 
Tree 
of 
the 
Binary 
Implica@on 
Graph 
(BIG) 
#3 
Cliques 
~bi-­‐implica@ons
17 
Fundamental 
Problem 
Selec@ng 
a 
Spanning 
Tree 
of 
the 
Binary 
Implica@on 
Graph 
(BIG) 
#4 
small 
BIG
18 
Fundamental 
Problem 
Selec@ng 
a 
Spanning 
Tree 
of 
the 
Binary 
Implica@on 
Graph 
(BIG) 
#4 
reduced 
BIG 
incomplete 
but 
drama@cally 
reduce 
the 
problem
Ontological 
Heuris@cs 
• For 
op>mum 
branching, 
compu>ng 
ranking 
lists 
and 
clusters 
– ~ 
« 
closedness 
» 
of 
features 
based 
on 
their 
names 
• Syntac>cal 
heuris>cs 
– Smith-­‐Waterman 
(SW) 
and 
Levenshtein 
(L) 
• Wordnet 
– PathLength 
(PL) 
and 
Wu&Palmer 
(WP) 
• Wikipedia 
Miner 
offers 
an 
API 
to 
browse 
Wikipedia's 
ar>cles 
and 
compute 
their 
relatedness 
– Wik>onary 
(Wikt) 
19 
40 
GB! 
Milne, 
D.N., 
Wigen, 
I.H.: 
An 
open-­‐source 
toolkit 
for 
mining 
wikipedia. 
Ar@f. 
Intell. 
194, 
222{239 
(2013)
WebFML 
20
• Dataset 
– 120+ 
feature 
models 
of 
SPLOT 
– 30+ 
product 
comparison 
matrices 
from 
Wikipedia 
(see 
Becan 
et 
al. 
ASE’14 
and 
ASE’13) 
– Ground 
truths 
are 
known 
• Effec>veness 
of 
techniques 
(reduced 
BIG 
+ 
ontological 
heuris>cs) 
– One 
shot 
synthesis 
– Quality 
of 
the 
ranking 
lists 
(top 
2), 
clusters 
– Comparison 
with 
randomized 
and 
exis>ng 
techniques 
21 
Support 
and 
Empirical 
Study 
(1) 
Goal: 
evidence 
and 
empirical 
insights 
of 
what 
heuris@cs 
are 
effec@ve 
and 
what 
support 
is 
needed 
in 
WebFML
• Dataset 
– 120+ 
feature 
models 
of 
SPLOT 
– 30+ 
product 
comparison 
matrices 
from 
Wikipedia 
(see 
Becan 
et 
al. 
ASE’14 
and 
ASE’13) 
– Ground 
truths 
are 
known 
• Effec>veness 
of 
techniques 
(reduced 
BIG 
+ 
ontological 
heuris>cs) 
– One 
shot 
synthesis 
– Quality 
of 
the 
ranking 
lists 
(top 
2), 
clusters 
– Comparison 
with 
randomized 
and 
exis>ng 
techniques 
22 
Support 
and 
Empirical 
Study 
(2) 
Default 
heuris@cs/support 
has 
been 
determined 
through 
an 
empirical 
study
• One-­‐step 
synthesis 
is 
far 
from 
the 
ground 
truth 
– despite 
state-­‐of-­‐the-­‐art 
techniques 
we 
have 
developed 
– interac>ve 
support 
is 
thus 
crucial 
• State-­‐of-­‐the-­‐art 
heuris>cs 
for 
ranking 
lists 
and 
clusters 
• Empirical 
insights 
on 
« 
cliques 
» 
and 
BIG 
reduc>on 
– e.g., 
support 
for 
unfolding 
of 
cliques 
23 
Support 
and 
Empirical 
Study 
(3) 
Default 
heuris@cs/support 
has 
been 
determined 
through 
an 
empirical 
study
Support 
and 
Empirical 
Study 
(3) 
hgp://@nyurl.com/OntoFMExperiments 
24 
hgp://hal.inria.fr/hal-­‐00874867
WebFML 
25
WebFML 
26
WebFML 
27
WebFML 
28
WebFML 
29
WebFML 
30
h:p://>nyurl.com/WebFMLDemo 
31
• WebFML 
for 
synthesizing 
feature 
models: 
– from 
various 
kinds 
of 
artefacts 
– sound 
and 
meaningful 
– interac>ve 
support 
– full 
automa>on 
is 
neither 
feasible 
nor 
desirable 
• Tooling 
support 
is 
based 
on 
empirical 
studies 
• WebFML 
opens 
avenues 
for 
– reverse 
engineering 
variability-­‐intensive 
data/systems 
– refactoring/merging/slicing 
feature 
models 
32 
Conclusion
Need 
a 
DEMO! 
FraSCAti 
SCAParser 
Java Compiler 
JDK6 JDT 
Optional 
Mandatory 
Alternative- 
Group 
Or-Group 
Assembly Factory 
Binding 
http rest 
MMFrascati 
Component Factory 
Metamodel 
MMTuscany 
constraints 
rest requires MMFrascati 
http requires MMTuscany 
FM1 
Feature 
Model 
Ontologies 
Knowledge 
User 
Heuris@cs 
WebFML: 
Synthesizing 
Feature 
Models 
33 
φ 
h:p://>nyurl.com/WebFMLDemo

Contenu connexe

En vedette

Comparing or Configuring Products: Are We Getting the Right Ones? (VaMoS 2014)
Comparing or Configuring Products: Are We Getting the Right Ones? (VaMoS 2014)Comparing or Configuring Products: Are We Getting the Right Ones? (VaMoS 2014)
Comparing or Configuring Products: Are We Getting the Right Ones? (VaMoS 2014)Guillaume Bécan
 
Automating the Formalization of Product Comparison Matrices
Automating the Formalization of Product Comparison MatricesAutomating the Formalization of Product Comparison Matrices
Automating the Formalization of Product Comparison MatricesGuillaume Bécan
 
User Experience Design & Paper Prototyping
User Experience Design & Paper PrototypingUser Experience Design & Paper Prototyping
User Experience Design & Paper PrototypingIlona Posner
 

En vedette (13)

From Basic Variability Models to OpenCompare.org
From Basic Variability Models to OpenCompare.orgFrom Basic Variability Models to OpenCompare.org
From Basic Variability Models to OpenCompare.org
 
Comparing or Configuring Products: Are We Getting the Right Ones? (VaMoS 2014)
Comparing or Configuring Products: Are We Getting the Right Ones? (VaMoS 2014)Comparing or Configuring Products: Are We Getting the Right Ones? (VaMoS 2014)
Comparing or Configuring Products: Are We Getting the Right Ones? (VaMoS 2014)
 
Exploiting the Enumeration of All Feature Model Configurations: A New Perspec...
Exploiting the Enumeration of All Feature Model Configurations: A New Perspec...Exploiting the Enumeration of All Feature Model Configurations: A New Perspec...
Exploiting the Enumeration of All Feature Model Configurations: A New Perspec...
 
Automating the Formalization of Product Comparison Matrices
Automating the Formalization of Product Comparison MatricesAutomating the Formalization of Product Comparison Matrices
Automating the Formalization of Product Comparison Matrices
 
Composing Feature Models
Composing Feature ModelsComposing Feature Models
Composing Feature Models
 
Synthesis of Attributed Feature Models From Product Descriptions
Synthesis of Attributed Feature Models From Product DescriptionsSynthesis of Attributed Feature Models From Product Descriptions
Synthesis of Attributed Feature Models From Product Descriptions
 
Ec2013 tutorial-mb variability-final
Ec2013 tutorial-mb variability-finalEc2013 tutorial-mb variability-final
Ec2013 tutorial-mb variability-final
 
Metamorphic Domain-Specific Languages
Metamorphic Domain-Specific LanguagesMetamorphic Domain-Specific Languages
Metamorphic Domain-Specific Languages
 
ASE tool demonstration
ASE tool demonstrationASE tool demonstration
ASE tool demonstration
 
A survey on teaching of software product lines
A survey on teaching of software product linesA survey on teaching of software product lines
A survey on teaching of software product lines
 
Reverse Engineering Architectural Feature Models
Reverse Engineering Architectural Feature ModelsReverse Engineering Architectural Feature Models
Reverse Engineering Architectural Feature Models
 
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case StudyProduct Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
Product Comparison Matrix (PCM), Variability Modeling: The Wikipedia Case Study
 
User Experience Design & Paper Prototyping
User Experience Design & Paper PrototypingUser Experience Design & Paper Prototyping
User Experience Design & Paper Prototyping
 

Similaire à WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)

SERENE 2014 School: Daniel varro serene2014_school
SERENE 2014 School: Daniel varro serene2014_schoolSERENE 2014 School: Daniel varro serene2014_school
SERENE 2014 School: Daniel varro serene2014_schoolHenry Muccini
 
SERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the CloudSERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the CloudSERENEWorkshop
 
Metadata and Provenance for ML Pipelines with Hopsworks
Metadata and Provenance for ML Pipelines with Hopsworks Metadata and Provenance for ML Pipelines with Hopsworks
Metadata and Provenance for ML Pipelines with Hopsworks Jim Dowling
 
Apache Calcite: A Foundational Framework for Optimized Query Processing Over ...
Apache Calcite: A Foundational Framework for Optimized Query Processing Over ...Apache Calcite: A Foundational Framework for Optimized Query Processing Over ...
Apache Calcite: A Foundational Framework for Optimized Query Processing Over ...Julian Hyde
 
The Other HPC: High Productivity Computing in Polystore Environments
The Other HPC: High Productivity Computing in Polystore EnvironmentsThe Other HPC: High Productivity Computing in Polystore Environments
The Other HPC: High Productivity Computing in Polystore EnvironmentsUniversity of Washington
 
Reference Representation in Large Metamodel-based Datasets
Reference Representation in Large Metamodel-based DatasetsReference Representation in Large Metamodel-based Datasets
Reference Representation in Large Metamodel-based DatasetsMarkus Scheidgen
 
Modeling and Simulation of Electrical Power Systems using OpenIPSL.org and Gr...
Modeling and Simulation of Electrical Power Systems using OpenIPSL.org and Gr...Modeling and Simulation of Electrical Power Systems using OpenIPSL.org and Gr...
Modeling and Simulation of Electrical Power Systems using OpenIPSL.org and Gr...Luigi Vanfretti
 
MMDS 2014: Myria (and Scalable Graph Clustering with RelaxMap)
MMDS 2014: Myria (and Scalable Graph Clustering with RelaxMap)MMDS 2014: Myria (and Scalable Graph Clustering with RelaxMap)
MMDS 2014: Myria (and Scalable Graph Clustering with RelaxMap)University of Washington
 
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...Daniel Varro
 
Processing large-scale graphs with Google Pregel
Processing large-scale graphs with Google PregelProcessing large-scale graphs with Google Pregel
Processing large-scale graphs with Google PregelMax Neunhöffer
 
Strata Conference + Hadoop World NY 2016: Lessons learned building a scalable...
Strata Conference + Hadoop World NY 2016: Lessons learned building a scalable...Strata Conference + Hadoop World NY 2016: Lessons learned building a scalable...
Strata Conference + Hadoop World NY 2016: Lessons learned building a scalable...Sumeet Singh
 
Streaming Model Transformations by Complex Event Processing
Streaming Model Transformations by Complex Event ProcessingStreaming Model Transformations by Complex Event Processing
Streaming Model Transformations by Complex Event ProcessingIstván Dávid
 
ExtremeEarth: Hopsworks, a data-intensive AI platform for Deep Learning with ...
ExtremeEarth: Hopsworks, a data-intensive AI platform for Deep Learning with ...ExtremeEarth: Hopsworks, a data-intensive AI platform for Deep Learning with ...
ExtremeEarth: Hopsworks, a data-intensive AI platform for Deep Learning with ...Big Data Value Association
 
DuraMat CO1 Central Data Resource: How it started, how it’s going …
DuraMat CO1 Central Data Resource: How it started, how it’s going …DuraMat CO1 Central Data Resource: How it started, how it’s going …
DuraMat CO1 Central Data Resource: How it started, how it’s going …Anubhav Jain
 
Model-Based Systems Engineering Demystified
Model-Based Systems Engineering DemystifiedModel-Based Systems Engineering Demystified
Model-Based Systems Engineering DemystifiedElizabeth Steiner
 
Integrated Model Discovery and Self-Adaptation of Robots
Integrated Model Discovery and Self-Adaptation of RobotsIntegrated Model Discovery and Self-Adaptation of Robots
Integrated Model Discovery and Self-Adaptation of RobotsPooyan Jamshidi
 
Software variability management - 2019
Software variability management - 2019Software variability management - 2019
Software variability management - 2019XavierDevroey
 
RAMSES: Robust Analytic Models for Science at Extreme Scales
RAMSES: Robust Analytic Models for Science at Extreme ScalesRAMSES: Robust Analytic Models for Science at Extreme Scales
RAMSES: Robust Analytic Models for Science at Extreme ScalesIan Foster
 
Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Evaluating Machine Learning Algorithms for Materials Science using the Matben...Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Evaluating Machine Learning Algorithms for Materials Science using the Matben...Anubhav Jain
 

Similaire à WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014) (20)

SERENE 2014 School: Daniel varro serene2014_school
SERENE 2014 School: Daniel varro serene2014_schoolSERENE 2014 School: Daniel varro serene2014_school
SERENE 2014 School: Daniel varro serene2014_school
 
SERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the CloudSERENE 2014 School: Incremental Model Queries over the Cloud
SERENE 2014 School: Incremental Model Queries over the Cloud
 
Metadata and Provenance for ML Pipelines with Hopsworks
Metadata and Provenance for ML Pipelines with Hopsworks Metadata and Provenance for ML Pipelines with Hopsworks
Metadata and Provenance for ML Pipelines with Hopsworks
 
Apache Calcite: A Foundational Framework for Optimized Query Processing Over ...
Apache Calcite: A Foundational Framework for Optimized Query Processing Over ...Apache Calcite: A Foundational Framework for Optimized Query Processing Over ...
Apache Calcite: A Foundational Framework for Optimized Query Processing Over ...
 
The Other HPC: High Productivity Computing in Polystore Environments
The Other HPC: High Productivity Computing in Polystore EnvironmentsThe Other HPC: High Productivity Computing in Polystore Environments
The Other HPC: High Productivity Computing in Polystore Environments
 
Reference Representation in Large Metamodel-based Datasets
Reference Representation in Large Metamodel-based DatasetsReference Representation in Large Metamodel-based Datasets
Reference Representation in Large Metamodel-based Datasets
 
Modeling and Simulation of Electrical Power Systems using OpenIPSL.org and Gr...
Modeling and Simulation of Electrical Power Systems using OpenIPSL.org and Gr...Modeling and Simulation of Electrical Power Systems using OpenIPSL.org and Gr...
Modeling and Simulation of Electrical Power Systems using OpenIPSL.org and Gr...
 
MMDS 2014: Myria (and Scalable Graph Clustering with RelaxMap)
MMDS 2014: Myria (and Scalable Graph Clustering with RelaxMap)MMDS 2014: Myria (and Scalable Graph Clustering with RelaxMap)
MMDS 2014: Myria (and Scalable Graph Clustering with RelaxMap)
 
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...
IncQuery-D: Distributed Incremental Model Queries over the Cloud: Engineerin...
 
Processing large-scale graphs with Google Pregel
Processing large-scale graphs with Google PregelProcessing large-scale graphs with Google Pregel
Processing large-scale graphs with Google Pregel
 
Strata Conference + Hadoop World NY 2016: Lessons learned building a scalable...
Strata Conference + Hadoop World NY 2016: Lessons learned building a scalable...Strata Conference + Hadoop World NY 2016: Lessons learned building a scalable...
Strata Conference + Hadoop World NY 2016: Lessons learned building a scalable...
 
F14 lec12graphs
F14 lec12graphsF14 lec12graphs
F14 lec12graphs
 
Streaming Model Transformations by Complex Event Processing
Streaming Model Transformations by Complex Event ProcessingStreaming Model Transformations by Complex Event Processing
Streaming Model Transformations by Complex Event Processing
 
ExtremeEarth: Hopsworks, a data-intensive AI platform for Deep Learning with ...
ExtremeEarth: Hopsworks, a data-intensive AI platform for Deep Learning with ...ExtremeEarth: Hopsworks, a data-intensive AI platform for Deep Learning with ...
ExtremeEarth: Hopsworks, a data-intensive AI platform for Deep Learning with ...
 
DuraMat CO1 Central Data Resource: How it started, how it’s going …
DuraMat CO1 Central Data Resource: How it started, how it’s going …DuraMat CO1 Central Data Resource: How it started, how it’s going …
DuraMat CO1 Central Data Resource: How it started, how it’s going …
 
Model-Based Systems Engineering Demystified
Model-Based Systems Engineering DemystifiedModel-Based Systems Engineering Demystified
Model-Based Systems Engineering Demystified
 
Integrated Model Discovery and Self-Adaptation of Robots
Integrated Model Discovery and Self-Adaptation of RobotsIntegrated Model Discovery and Self-Adaptation of Robots
Integrated Model Discovery and Self-Adaptation of Robots
 
Software variability management - 2019
Software variability management - 2019Software variability management - 2019
Software variability management - 2019
 
RAMSES: Robust Analytic Models for Science at Extreme Scales
RAMSES: Robust Analytic Models for Science at Extreme ScalesRAMSES: Robust Analytic Models for Science at Extreme Scales
RAMSES: Robust Analytic Models for Science at Extreme Scales
 
Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Evaluating Machine Learning Algorithms for Materials Science using the Matben...Evaluating Machine Learning Algorithms for Materials Science using the Matben...
Evaluating Machine Learning Algorithms for Materials Science using the Matben...
 

Plus de University of Rennes, INSA Rennes, Inria/IRISA, CNRS

Plus de University of Rennes, INSA Rennes, Inria/IRISA, CNRS (13)

A Demonstration of End-User Code Customization Using Generative AI
A Demonstration of End-User Code Customization Using Generative AIA Demonstration of End-User Code Customization Using Generative AI
A Demonstration of End-User Code Customization Using Generative AI
 
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
24 Reasons Why Variability Models Are Not Yet Universal (24RWVMANYU)
 
Generative AI for Reengineering Variants into Software Product Lines: An Expe...
Generative AI for Reengineering Variants into Software Product Lines: An Expe...Generative AI for Reengineering Variants into Software Product Lines: An Expe...
Generative AI for Reengineering Variants into Software Product Lines: An Expe...
 
Tackling Deep Software Variability Together
Tackling Deep Software Variability TogetherTackling Deep Software Variability Together
Tackling Deep Software Variability Together
 
On anti-cheating in chess, science, reproducibility, and variability
On anti-cheating in chess, science, reproducibility, and variabilityOn anti-cheating in chess, science, reproducibility, and variability
On anti-cheating in chess, science, reproducibility, and variability
 
Feature Subset Selection for Learning Huge Configuration Spaces: The case of ...
Feature Subset Selection for Learning Huge Configuration Spaces: The case of ...Feature Subset Selection for Learning Huge Configuration Spaces: The case of ...
Feature Subset Selection for Learning Huge Configuration Spaces: The case of ...
 
Machine Learning and Deep Software Variability
Machine Learning and Deep Software VariabilityMachine Learning and Deep Software Variability
Machine Learning and Deep Software Variability
 
Mastering Software Variability for Innovation and Science
Mastering Software Variability for Innovation and ScienceMastering Software Variability for Innovation and Science
Mastering Software Variability for Innovation and Science
 
Transfer Learning Across Variants and Versions: The Case of Linux Kernel Size
Transfer Learning Across Variants and Versions: The Case of Linux Kernel SizeTransfer Learning Across Variants and Versions: The Case of Linux Kernel Size
Transfer Learning Across Variants and Versions: The Case of Linux Kernel Size
 
Reproducible Science and Deep Software Variability
Reproducible Science and Deep Software VariabilityReproducible Science and Deep Software Variability
Reproducible Science and Deep Software Variability
 
Software Variability and Artificial Intelligence
Software Variability and Artificial IntelligenceSoftware Variability and Artificial Intelligence
Software Variability and Artificial Intelligence
 
Teaching Software Product Lines: A Snapshot of Current Practices and Challenges
Teaching Software Product Lines: A Snapshot of Current Practices and ChallengesTeaching Software Product Lines: A Snapshot of Current Practices and Challenges
Teaching Software Product Lines: A Snapshot of Current Practices and Challenges
 
Pandoc: a universal document converter
Pandoc: a universal document converterPandoc: a universal document converter
Pandoc: a universal document converter
 

Dernier

EJECTOR REFRIGERATION CYCLE WITH THE INJECTION OF A HIGH DENSITY FLUID INTO A...
EJECTOR REFRIGERATION CYCLE WITH THE INJECTION OF A HIGH DENSITY FLUID INTO A...EJECTOR REFRIGERATION CYCLE WITH THE INJECTION OF A HIGH DENSITY FLUID INTO A...
EJECTOR REFRIGERATION CYCLE WITH THE INJECTION OF A HIGH DENSITY FLUID INTO A...marijomiljkovic1
 
introduction to python, fundamentals and basics
introduction to python, fundamentals and basicsintroduction to python, fundamentals and basics
introduction to python, fundamentals and basicsKNaveenKumarECE
 
Research paper publications: Meaning of Q1 Q2 Q3 Q4 Journal
Research paper publications: Meaning of Q1 Q2 Q3 Q4 JournalResearch paper publications: Meaning of Q1 Q2 Q3 Q4 Journal
Research paper publications: Meaning of Q1 Q2 Q3 Q4 JournalDr. Manjunatha. P
 
Flutter GDE session GDSC ZHCET AMU, aligarh
Flutter GDE session GDSC ZHCET AMU, aligarhFlutter GDE session GDSC ZHCET AMU, aligarh
Flutter GDE session GDSC ZHCET AMU, aligarhjamesbond00714
 
The Art of Cloud Native Defense on Kubernetes
The Art of Cloud Native Defense on KubernetesThe Art of Cloud Native Defense on Kubernetes
The Art of Cloud Native Defense on KubernetesJacopo Nardiello
 
Caltrans District 8 Update for the CalAPA Spring Asphalt Conference 2024
Caltrans District 8 Update for the CalAPA Spring Asphalt Conference 2024Caltrans District 8 Update for the CalAPA Spring Asphalt Conference 2024
Caltrans District 8 Update for the CalAPA Spring Asphalt Conference 2024California Asphalt Pavement Association
 
Fabrics Finishing Manual ( Arkey Knit Dyeing Mills Ltd)
Fabrics Finishing Manual ( Arkey Knit Dyeing Mills Ltd)Fabrics Finishing Manual ( Arkey Knit Dyeing Mills Ltd)
Fabrics Finishing Manual ( Arkey Knit Dyeing Mills Ltd)Mizan Rahman
 
electricity generation from food waste - based bioenergy with IOT.pptx
electricity generation from food waste - based bioenergy with IOT.pptxelectricity generation from food waste - based bioenergy with IOT.pptx
electricity generation from food waste - based bioenergy with IOT.pptxAravindhKarthik1
 
autonomous_vehicle_working_paper_01072020-_508_compliant.pdf
autonomous_vehicle_working_paper_01072020-_508_compliant.pdfautonomous_vehicle_working_paper_01072020-_508_compliant.pdf
autonomous_vehicle_working_paper_01072020-_508_compliant.pdfPandurangGurakhe
 
presentation by faizan[1] [Read-Only].pptx
presentation by faizan[1] [Read-Only].pptxpresentation by faizan[1] [Read-Only].pptx
presentation by faizan[1] [Read-Only].pptxkhfaizan534
 
Advanced Additive Manufacturing by Sumanth A.pptx
Advanced Additive Manufacturing by Sumanth A.pptxAdvanced Additive Manufacturing by Sumanth A.pptx
Advanced Additive Manufacturing by Sumanth A.pptxSumanth A
 
NIPORT Home Economics Questions Solution 2024.pdf
NIPORT Home Economics Questions Solution 2024.pdfNIPORT Home Economics Questions Solution 2024.pdf
NIPORT Home Economics Questions Solution 2024.pdfMohonDas
 
Searching and Sorting Algorithms
Searching and Sorting AlgorithmsSearching and Sorting Algorithms
Searching and Sorting AlgorithmsAshutosh Satapathy
 
Road to GDSC (Become the next GDSC lead)
Road to GDSC (Become the next GDSC lead)Road to GDSC (Become the next GDSC lead)
Road to GDSC (Become the next GDSC lead)GDSCNiT
 
pulse modulation technique (Pulse code modulation).pptx
pulse modulation technique (Pulse code modulation).pptxpulse modulation technique (Pulse code modulation).pptx
pulse modulation technique (Pulse code modulation).pptxNishanth Asmi
 
Governors ppt.pdf .
Governors ppt.pdf                              .Governors ppt.pdf                              .
Governors ppt.pdf .happycocoman
 
Introduction to Data Structures .
Introduction to Data Structures        .Introduction to Data Structures        .
Introduction to Data Structures .Ashutosh Satapathy
 
Introduction to Machine Learning Unit-2 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-2 Notes for II-II Mechanical EngineeringIntroduction to Machine Learning Unit-2 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-2 Notes for II-II Mechanical EngineeringC Sai Kiran
 

Dernier (20)

EJECTOR REFRIGERATION CYCLE WITH THE INJECTION OF A HIGH DENSITY FLUID INTO A...
EJECTOR REFRIGERATION CYCLE WITH THE INJECTION OF A HIGH DENSITY FLUID INTO A...EJECTOR REFRIGERATION CYCLE WITH THE INJECTION OF A HIGH DENSITY FLUID INTO A...
EJECTOR REFRIGERATION CYCLE WITH THE INJECTION OF A HIGH DENSITY FLUID INTO A...
 
introduction to python, fundamentals and basics
introduction to python, fundamentals and basicsintroduction to python, fundamentals and basics
introduction to python, fundamentals and basics
 
Research paper publications: Meaning of Q1 Q2 Q3 Q4 Journal
Research paper publications: Meaning of Q1 Q2 Q3 Q4 JournalResearch paper publications: Meaning of Q1 Q2 Q3 Q4 Journal
Research paper publications: Meaning of Q1 Q2 Q3 Q4 Journal
 
Flutter GDE session GDSC ZHCET AMU, aligarh
Flutter GDE session GDSC ZHCET AMU, aligarhFlutter GDE session GDSC ZHCET AMU, aligarh
Flutter GDE session GDSC ZHCET AMU, aligarh
 
The Art of Cloud Native Defense on Kubernetes
The Art of Cloud Native Defense on KubernetesThe Art of Cloud Native Defense on Kubernetes
The Art of Cloud Native Defense on Kubernetes
 
Caltrans District 8 Update for the CalAPA Spring Asphalt Conference 2024
Caltrans District 8 Update for the CalAPA Spring Asphalt Conference 2024Caltrans District 8 Update for the CalAPA Spring Asphalt Conference 2024
Caltrans District 8 Update for the CalAPA Spring Asphalt Conference 2024
 
Fabrics Finishing Manual ( Arkey Knit Dyeing Mills Ltd)
Fabrics Finishing Manual ( Arkey Knit Dyeing Mills Ltd)Fabrics Finishing Manual ( Arkey Knit Dyeing Mills Ltd)
Fabrics Finishing Manual ( Arkey Knit Dyeing Mills Ltd)
 
electricity generation from food waste - based bioenergy with IOT.pptx
electricity generation from food waste - based bioenergy with IOT.pptxelectricity generation from food waste - based bioenergy with IOT.pptx
electricity generation from food waste - based bioenergy with IOT.pptx
 
autonomous_vehicle_working_paper_01072020-_508_compliant.pdf
autonomous_vehicle_working_paper_01072020-_508_compliant.pdfautonomous_vehicle_working_paper_01072020-_508_compliant.pdf
autonomous_vehicle_working_paper_01072020-_508_compliant.pdf
 
presentation by faizan[1] [Read-Only].pptx
presentation by faizan[1] [Read-Only].pptxpresentation by faizan[1] [Read-Only].pptx
presentation by faizan[1] [Read-Only].pptx
 
Advanced Additive Manufacturing by Sumanth A.pptx
Advanced Additive Manufacturing by Sumanth A.pptxAdvanced Additive Manufacturing by Sumanth A.pptx
Advanced Additive Manufacturing by Sumanth A.pptx
 
NIPORT Home Economics Questions Solution 2024.pdf
NIPORT Home Economics Questions Solution 2024.pdfNIPORT Home Economics Questions Solution 2024.pdf
NIPORT Home Economics Questions Solution 2024.pdf
 
Searching and Sorting Algorithms
Searching and Sorting AlgorithmsSearching and Sorting Algorithms
Searching and Sorting Algorithms
 
Road to GDSC (Become the next GDSC lead)
Road to GDSC (Become the next GDSC lead)Road to GDSC (Become the next GDSC lead)
Road to GDSC (Become the next GDSC lead)
 
FOREST FIRE USING IoT-A Visual to UG students
FOREST FIRE USING IoT-A Visual to UG studentsFOREST FIRE USING IoT-A Visual to UG students
FOREST FIRE USING IoT-A Visual to UG students
 
pulse modulation technique (Pulse code modulation).pptx
pulse modulation technique (Pulse code modulation).pptxpulse modulation technique (Pulse code modulation).pptx
pulse modulation technique (Pulse code modulation).pptx
 
Caltrans view on recycling of in-place asphalt pavements
Caltrans view on recycling of in-place asphalt pavementsCaltrans view on recycling of in-place asphalt pavements
Caltrans view on recycling of in-place asphalt pavements
 
Governors ppt.pdf .
Governors ppt.pdf                              .Governors ppt.pdf                              .
Governors ppt.pdf .
 
Introduction to Data Structures .
Introduction to Data Structures        .Introduction to Data Structures        .
Introduction to Data Structures .
 
Introduction to Machine Learning Unit-2 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-2 Notes for II-II Mechanical EngineeringIntroduction to Machine Learning Unit-2 Notes for II-II Mechanical Engineering
Introduction to Machine Learning Unit-2 Notes for II-II Mechanical Engineering
 

WebFML: Synthesizing Feature Models Everywhere (@ SPLC 2014)

  • 1. WebFML Synthesizing Feature Models Everywhere Guillaume Bécan, Sana Ben Nasr, Mathieu Acher and Benoit Baudry 1 h:p://>nyurl.com/WebFMLDemo
  • 2. There are numerous artefacts that exhibit features and their dependencies. Product Line Modeling variability 2 φ
  • 3. Feature Models defacto standard for modeling variability 3 Feature Model = Feature Diagram + Proposi>onal Formula φ . Configura@on Seman@cs Set of valid configura@ons (set of selected features) of an FM. Ontological Seman@cs Hierarchy and feature groups of an FM. Define the seman@cs of the features’ rela@onships. Features parent feature 2 child features root
  • 4. 4 Feature Models defacto standard for modeling variability Valid configura@on: {Wiki, Storage, License, Hos@ng, P.SQL, P.License, H.Service , Ontological Seman@cs Hierarchy and feature groups of an FM. Define the seman@cs of the features’ rela@onships. Domain} Hierarchy + Variability = set of valid configura@ons
  • 5. For a given configura@on set, many (maximal) feature diagrams with different ontological seman@cs [She et al. ICSE’11, Andersen et al. SPLC’12, Acher et al. VaMoS’13] 5
  • 6. For a given configura@on set, many (maximal) feature diagrams with different ontological seman@cs [She et al. ICSE’11, Andersen et al. SPLC’12, Acher et al. VaMoS’13] 6
  • 7. Importance of ontological seman@cs (1) 7
  • 8. Importance of ontological seman@cs (2) 8
  • 9. Importance of ontological seman@cs (3) 9 Communica>on Comprehension Forward engineering (e.g., genera>on)
  • 10. 10 Importance of ontological seman@cs (4) Two product configurators generated from two FMs with the same configura@on seman@cs but different ontological seman@cs. Good FM Good configura@on interface Bad FM Bad configura@on interface
  • 11. Most of the exis@ng approaches neglect either configura@on or ontological seman@cs. We want both! 11 φ
  • 12. Fundamental Problem Selec@ng a Spanning Tree of the Binary Implica@on Graph (BIG) 12
  • 13. 13 Fundamental Problem Selec@ng a Spanning Tree of the Binary Implica@on Graph (BIG) #0 Op@mum branching (Tarjan) weigh@ng edges
  • 14. 14 Fundamental Problem Selec@ng a Spanning Tree of the Binary Implica@on Graph (BIG) #1 Ranking lists best parent candidates for each feature
  • 15. 15 Fundamental Problem Selec@ng a Spanning Tree of the Binary Implica@on Graph (BIG) #2 Clusters ~possible siblings
  • 16. 16 Fundamental Problem Selec@ng a Spanning Tree of the Binary Implica@on Graph (BIG) #3 Cliques ~bi-­‐implica@ons
  • 17. 17 Fundamental Problem Selec@ng a Spanning Tree of the Binary Implica@on Graph (BIG) #4 small BIG
  • 18. 18 Fundamental Problem Selec@ng a Spanning Tree of the Binary Implica@on Graph (BIG) #4 reduced BIG incomplete but drama@cally reduce the problem
  • 19. Ontological Heuris@cs • For op>mum branching, compu>ng ranking lists and clusters – ~ « closedness » of features based on their names • Syntac>cal heuris>cs – Smith-­‐Waterman (SW) and Levenshtein (L) • Wordnet – PathLength (PL) and Wu&Palmer (WP) • Wikipedia Miner offers an API to browse Wikipedia's ar>cles and compute their relatedness – Wik>onary (Wikt) 19 40 GB! Milne, D.N., Wigen, I.H.: An open-­‐source toolkit for mining wikipedia. Ar@f. Intell. 194, 222{239 (2013)
  • 21. • Dataset – 120+ feature models of SPLOT – 30+ product comparison matrices from Wikipedia (see Becan et al. ASE’14 and ASE’13) – Ground truths are known • Effec>veness of techniques (reduced BIG + ontological heuris>cs) – One shot synthesis – Quality of the ranking lists (top 2), clusters – Comparison with randomized and exis>ng techniques 21 Support and Empirical Study (1) Goal: evidence and empirical insights of what heuris@cs are effec@ve and what support is needed in WebFML
  • 22. • Dataset – 120+ feature models of SPLOT – 30+ product comparison matrices from Wikipedia (see Becan et al. ASE’14 and ASE’13) – Ground truths are known • Effec>veness of techniques (reduced BIG + ontological heuris>cs) – One shot synthesis – Quality of the ranking lists (top 2), clusters – Comparison with randomized and exis>ng techniques 22 Support and Empirical Study (2) Default heuris@cs/support has been determined through an empirical study
  • 23. • One-­‐step synthesis is far from the ground truth – despite state-­‐of-­‐the-­‐art techniques we have developed – interac>ve support is thus crucial • State-­‐of-­‐the-­‐art heuris>cs for ranking lists and clusters • Empirical insights on « cliques » and BIG reduc>on – e.g., support for unfolding of cliques 23 Support and Empirical Study (3) Default heuris@cs/support has been determined through an empirical study
  • 24. Support and Empirical Study (3) hgp://@nyurl.com/OntoFMExperiments 24 hgp://hal.inria.fr/hal-­‐00874867
  • 32. • WebFML for synthesizing feature models: – from various kinds of artefacts – sound and meaningful – interac>ve support – full automa>on is neither feasible nor desirable • Tooling support is based on empirical studies • WebFML opens avenues for – reverse engineering variability-­‐intensive data/systems – refactoring/merging/slicing feature models 32 Conclusion
  • 33. Need a DEMO! FraSCAti SCAParser Java Compiler JDK6 JDT Optional Mandatory Alternative- Group Or-Group Assembly Factory Binding http rest MMFrascati Component Factory Metamodel MMTuscany constraints rest requires MMFrascati http requires MMTuscany FM1 Feature Model Ontologies Knowledge User Heuris@cs WebFML: Synthesizing Feature Models 33 φ h:p://>nyurl.com/WebFMLDemo