SlideShare ist ein Scribd-Unternehmen logo
1 von 24
Downloaden Sie, um offline zu lesen
Introduction
Background
Review method and evaluation
Future research and conclusion
Analysis of Feature Models using Alloy
A survey
Anjali Sree-Kumar, Elena Planas, Robert Clarisó
SOM Research Lab
Open University of Catalonia, Barcelona
ETAPS - 3rd April @ FMSPLE’16 Workshop, Eindhoven
1 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Agenda
1 Introduction
FMs & SPL
FM analysis &
automated tools
Purpose of this survey
2 Background
Related surveys &
selected papers
Benchmark feature
model
Alloy semantics
FM analysis operations
3 Review method and
evaluation
Threats to validity
Approach used
Findings
4 Future research and
conclusion
2 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
FMs & SPL
FM analysis & automated tools
Purpose of this survey
Definition - SPL
3 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
FMs & SPL
FM analysis & automated tools
Purpose of this survey
Definition - FM
4 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
FMs & SPL
FM analysis & automated tools
Purpose of this survey
Why FM analysis ?
FM analysis helps in :
1 detecting inconsistencies
2 identifying dead features
3 identifying redundancies
4 optimizing FMs ... and many more ...
5 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
FMs & SPL
FM analysis & automated tools
Purpose of this survey
FM analysis tool - Why Alloy ?
There are no standard text representations for FM.
FM formal specifications must be manually created from
textual requirements.
Alloy - lightweight modeling notation with model finder.
FM specification can be in Alloy notation.
6 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
FMs & SPL
FM analysis & automated tools
Purpose of this survey
Purpose of this survey
Evaluate the State-of-the-art by reviewing 9 relevant
papers.
Characterize the strengths and weaknesses of various
Alloy encoding approaches from the following perspectives
for all the 9 papers :
1 Ease of reproducing the research results.
2 Expressiveness of the FM.
3 Efficiency of the analysis.
4 Existence of tool support.
7 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Related surveys & selected papers
Benchmark feature model
Alloy semantics
FM analysis operations
Existing surveys in literature
Published research papers with similar survey information
2010 Benavides et al. - Automated analysis of feature models 20
years later : A literature review
2014 Thüm et al. - A Classification and Survey of Analysis
Strategies for Software Product Lines
2015 Lesta et al. - Detecting and Explaining Conflicts in
Attributed Feature Models
8 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Related surveys & selected papers
Benchmark feature model
Alloy semantics
FM analysis operations
Papers selected for the review
[2005] Wang et al. : Formal Semantics and Verification for Feature
Modeling
[2006] Gheyi et al. : A Theory for Feature Models in Alloy
[2008] Tanizaki et al. : Formalization and Consistency Checking of
Changes of Software System Configurations Using Alloy
[2010] Nakajima et al. : Semi-automated Diagnosis of FODA Feature
Diagram
[2011] Finkel et al. : Reasoning about conditional constraint
specification problems and feature models
[2012] Ripon et al. : Modeling and Analysis of Product line Variants
[2013] Huang et al. : Using Alloy to support feature based DSL
construction for mining software repositories
[2013] Jamie et al. : Supporting Multilevel Configuration with Feature
Solution Graphs Formal Semantics and Alloy
[2015] Ajoudanian et al. : Automatic promotional specialization,
generalization and analysis of extended feature models with
cardinalities in Alloy Implementation
9 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Related surveys & selected papers
Benchmark feature model
Alloy semantics
FM analysis operations
Benchmark : bCMS (reconstructed in FeatureIDE tool)
This is a case study originating in the http://cserg0.site.uottawa.ca/cma2013models/ "Comparing
Modeling Approaches" at MODELS 2013, which has been used in several other papers as a benchmark FM.
10 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Related surveys & selected papers
Benchmark feature model
Alloy semantics
FM analysis operations
Alloy example
abstract sig Workshop { }
sig Person { }
one sig FMSPLE extends Workshop
{ audience: set Person }
fact { some FMSPLE.audience };
11 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Related surveys & selected papers
Benchmark feature model
Alloy semantics
FM analysis operations
Alloy semantics
Constructs Description
Signature sig A set of objects of the same type.
Eg. sig Feature
sig Feature1 extends Feature
Function fun A named expression with 0 or more argu-
ments and a declaration expression for the
result.
Eg. fun satisfyNot[form:Form,
c:Configuration]: Bool {
Not[form.f.satisfy[c]] }
12 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Related surveys & selected papers
Benchmark feature model
Alloy semantics
FM analysis operations
Alloy semantics (cont.)
Constructs Description
Fact fact A constraint that is assumed to hold in
any instance of the model, e.g. a well-
formedness rule of the model.
Eg. fact { no f: Feature|
f in f.^ parent }
Predicate
pred
A named constraint with 0 or more argu-
ments.
Eg. pred findInstance[ ] {
some featureModel }
run findInstance for 25
13 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Related surveys & selected papers
Benchmark feature model
Alloy semantics
FM analysis operations
Alloy semantics (cont.)
Constructs Description
Assertion
assert
A constraint that should follow from the
facts of the model.
Eg. assert conflictsShow{ one
fm:FM | fm = featureModel
and (no f:Feature | f in
conflicts[featureModel])}
check conflictsShow
14 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Related surveys & selected papers
Benchmark feature model
Alloy semantics
FM analysis operations
Operations
15 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Threats to validity
Approach used
Findings
Threats to validity
Coverage of literature databases :
excluded DBLP and Google Scholar.
included recent related surveys and the references to and
from those papers.
Search strings used :
search based on abstract and keywords.
excluded titles and some special keywords like ’automated
FM analysis’.
Limitations of the case study FM :
not comparable to realistic large scale FMs from actual
industry.
cannot quantify the scalability and ease-of-use of different
Alloy encoding for such realistic FMs.
16 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Threats to validity
Approach used
Findings
Review process
17 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Threats to validity
Approach used
Findings
Findings - Encoding families
Two major categories of encoding :
1 Propositional logic based encoding : Relationships are
encoded as formulas
2 Encoding based on Alloy constructs : Relationships are
encoded in Alloy constructs
18 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Threats to validity
Approach used
Findings
Findings - Pros & Cons
Ability to reason about number of valid product instances
Size or the total number of lines in the Alloy specifications
for large FMs : this varies depending on the encoding
category
Readability of the Alloy specifications/encoding
Degree of expressiveness
19 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Threats to validity
Approach used
Findings
Findings - Execution time
We were unable to reproduce the results of Ajoudanian
because of the following roadblocks :
Syntax errors in the encoding
Invalid Alloy symbols
Undefined variables
20 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Threats to validity
Approach used
Findings
Findings - Limitations
Theoretical limitations :
Only one paper supported the counting of valid
configurations.
All encoding supports only trivial relationships.
Practical limitations :
No tool support for generating Alloy specifications for large
FMs. Had to be done manually.
Missing Alloy specifications in some of the reviewed
papers.
No research results validated against very large realistic
FMs.
21 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Threats to validity
Approach used
Findings
Findings - Summary
Among 30 known FM analysis operations, only 10 are
supported across the 9 research works.
There are no automated tools for translating natural
language specifications or CNF specifications to Alloy
encoding.
Unable to validate the results provided in some research
papers * for our case study on bCMS FM.
Manual encodings one order of magnitude faster than
automatic encodings
Few families of closely related encodings
22 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Future research and conclusion
Research on the possibility of Alloy being able to support
all the remaining analysis operations.
Emphasized the importance of automated tool support for
converting FM diagrams to Alloy notations.
Identified the limitations of the available research results
and its application in our case study.
Highlighted the importance of future research on
automated FM analysis using Alloy.
23 / 24
Introduction
Background
Review method and evaluation
Future research and conclusion
Thank you
Thank you for your attention !
Contact : Anjali Sree-Kumar
Email : asree_kumar@uoc.edu
Case study Alloy source files URL :
https://www.dropbox.com/s/wysbls64ictoofm/Alloy.zip?dl=0
24 / 24

Weitere ähnliche Inhalte

Ähnlich wie Analysis of Feature Models using Alloy - A survey

Detection of SOA Antipatterns
Detection of SOA AntipatternsDetection of SOA Antipatterns
Detection of SOA AntipatternsFrancis Palma
 
LEAN THINKING IN SOFTWARE ENGINEERING: A SYSTEMATIC REVIEW
LEAN THINKING IN SOFTWARE ENGINEERING: A SYSTEMATIC REVIEWLEAN THINKING IN SOFTWARE ENGINEERING: A SYSTEMATIC REVIEW
LEAN THINKING IN SOFTWARE ENGINEERING: A SYSTEMATIC REVIEWijseajournal
 
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature SurveyPareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature SurveyAbdel Salam Sayyad
 
UML-Driven Software Performance Engineering: A systematic mapping and a revie...
UML-Driven Software Performance Engineering: A systematic mapping and a revie...UML-Driven Software Performance Engineering: A systematic mapping and a revie...
UML-Driven Software Performance Engineering: A systematic mapping and a revie...Vahid Garousi
 
Metadata Quality Assurance Part II. The implementation begins
Metadata Quality Assurance Part II. The implementation beginsMetadata Quality Assurance Part II. The implementation begins
Metadata Quality Assurance Part II. The implementation beginsPéter Király
 
A Survey on Design Pattern Detection Approaches
A Survey on Design Pattern Detection ApproachesA Survey on Design Pattern Detection Approaches
A Survey on Design Pattern Detection ApproachesCSCJournals
 
Software Quality Models: A Comparative Study paper
Software Quality Models: A Comparative Study  paperSoftware Quality Models: A Comparative Study  paper
Software Quality Models: A Comparative Study paperMoutasm Tamimi
 
Assessing searches in NICE Single Technology Appraisals: practice and checklist
Assessing searches in NICE Single Technology Appraisals: practice and checklistAssessing searches in NICE Single Technology Appraisals: practice and checklist
Assessing searches in NICE Single Technology Appraisals: practice and checklistscharrlibrary
 
SCOPUS PAPER EJMCM.pdf
SCOPUS PAPER EJMCM.pdfSCOPUS PAPER EJMCM.pdf
SCOPUS PAPER EJMCM.pdfSharmilaDevi90
 
Holistic Model-Based Testing for Business Information Systems
Holistic Model-Based Testing for Business Information SystemsHolistic Model-Based Testing for Business Information Systems
Holistic Model-Based Testing for Business Information SystemsMichael Mlynarski
 
Towards Design-space Exploration of Component Chains in Vehicle Software
Towards Design-space Exploration of Component Chains in Vehicle SoftwareTowards Design-space Exploration of Component Chains in Vehicle Software
Towards Design-space Exploration of Component Chains in Vehicle SoftwareAlessio Bucaioni
 
Supporting program comprehension with source code summarization
Supporting program comprehension with source code summarizationSupporting program comprehension with source code summarization
Supporting program comprehension with source code summarizationMasud Rahman
 
Research paperV1
Research paperV1Research paperV1
Research paperV1expertexh
 
Extending facet search to the general web
Extending facet search to the general webExtending facet search to the general web
Extending facet search to the general web祺傑 林
 
Gür, hamurcu, eren 2016 - selection of academic conferences based on analyt...
Gür, hamurcu, eren   2016 - selection of academic conferences based on analyt...Gür, hamurcu, eren   2016 - selection of academic conferences based on analyt...
Gür, hamurcu, eren 2016 - selection of academic conferences based on analyt...Quang Jimmy
 
M.Sc. - A process to manage evolution in Software Product Lines
M.Sc. - A process to manage evolution in Software Product LinesM.Sc. - A process to manage evolution in Software Product Lines
M.Sc. - A process to manage evolution in Software Product LinesThiago Burgos
 

Ähnlich wie Analysis of Feature Models using Alloy - A survey (20)

Detection of SOA Antipatterns
Detection of SOA AntipatternsDetection of SOA Antipatterns
Detection of SOA Antipatterns
 
LEAN THINKING IN SOFTWARE ENGINEERING: A SYSTEMATIC REVIEW
LEAN THINKING IN SOFTWARE ENGINEERING: A SYSTEMATIC REVIEWLEAN THINKING IN SOFTWARE ENGINEERING: A SYSTEMATIC REVIEW
LEAN THINKING IN SOFTWARE ENGINEERING: A SYSTEMATIC REVIEW
 
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature SurveyPareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
Pareto-Optimal Search-Based Software Engineering (POSBSE): A Literature Survey
 
Icsm19.ppt
Icsm19.pptIcsm19.ppt
Icsm19.ppt
 
Roadmap Composite Simulation - Summary 2015
Roadmap Composite Simulation - Summary 2015Roadmap Composite Simulation - Summary 2015
Roadmap Composite Simulation - Summary 2015
 
UML-Driven Software Performance Engineering: A systematic mapping and a revie...
UML-Driven Software Performance Engineering: A systematic mapping and a revie...UML-Driven Software Performance Engineering: A systematic mapping and a revie...
UML-Driven Software Performance Engineering: A systematic mapping and a revie...
 
Metadata Quality Assurance Part II. The implementation begins
Metadata Quality Assurance Part II. The implementation beginsMetadata Quality Assurance Part II. The implementation begins
Metadata Quality Assurance Part II. The implementation begins
 
A Survey on Design Pattern Detection Approaches
A Survey on Design Pattern Detection ApproachesA Survey on Design Pattern Detection Approaches
A Survey on Design Pattern Detection Approaches
 
Software Quality Models: A Comparative Study paper
Software Quality Models: A Comparative Study  paperSoftware Quality Models: A Comparative Study  paper
Software Quality Models: A Comparative Study paper
 
Assessing searches in NICE Single Technology Appraisals: practice and checklist
Assessing searches in NICE Single Technology Appraisals: practice and checklistAssessing searches in NICE Single Technology Appraisals: practice and checklist
Assessing searches in NICE Single Technology Appraisals: practice and checklist
 
Cser13.ppt
Cser13.pptCser13.ppt
Cser13.ppt
 
SCOPUS PAPER EJMCM.pdf
SCOPUS PAPER EJMCM.pdfSCOPUS PAPER EJMCM.pdf
SCOPUS PAPER EJMCM.pdf
 
Holistic Model-Based Testing for Business Information Systems
Holistic Model-Based Testing for Business Information SystemsHolistic Model-Based Testing for Business Information Systems
Holistic Model-Based Testing for Business Information Systems
 
Towards Design-space Exploration of Component Chains in Vehicle Software
Towards Design-space Exploration of Component Chains in Vehicle SoftwareTowards Design-space Exploration of Component Chains in Vehicle Software
Towards Design-space Exploration of Component Chains in Vehicle Software
 
Supporting program comprehension with source code summarization
Supporting program comprehension with source code summarizationSupporting program comprehension with source code summarization
Supporting program comprehension with source code summarization
 
Research paperV1
Research paperV1Research paperV1
Research paperV1
 
Extending facet search to the general web
Extending facet search to the general webExtending facet search to the general web
Extending facet search to the general web
 
ME2011 presentation by Asadi
ME2011 presentation by AsadiME2011 presentation by Asadi
ME2011 presentation by Asadi
 
Gür, hamurcu, eren 2016 - selection of academic conferences based on analyt...
Gür, hamurcu, eren   2016 - selection of academic conferences based on analyt...Gür, hamurcu, eren   2016 - selection of academic conferences based on analyt...
Gür, hamurcu, eren 2016 - selection of academic conferences based on analyt...
 
M.Sc. - A process to manage evolution in Software Product Lines
M.Sc. - A process to manage evolution in Software Product LinesM.Sc. - A process to manage evolution in Software Product Lines
M.Sc. - A process to manage evolution in Software Product Lines
 

Kürzlich hochgeladen

Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....ShaimaaMohamedGalal
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 

Kürzlich hochgeladen (20)

Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Clustering techniques data mining book ....
Clustering techniques data mining book ....Clustering techniques data mining book ....
Clustering techniques data mining book ....
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 

Analysis of Feature Models using Alloy - A survey

  • 1. Introduction Background Review method and evaluation Future research and conclusion Analysis of Feature Models using Alloy A survey Anjali Sree-Kumar, Elena Planas, Robert Clarisó SOM Research Lab Open University of Catalonia, Barcelona ETAPS - 3rd April @ FMSPLE’16 Workshop, Eindhoven 1 / 24
  • 2. Introduction Background Review method and evaluation Future research and conclusion Agenda 1 Introduction FMs & SPL FM analysis & automated tools Purpose of this survey 2 Background Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations 3 Review method and evaluation Threats to validity Approach used Findings 4 Future research and conclusion 2 / 24
  • 3. Introduction Background Review method and evaluation Future research and conclusion FMs & SPL FM analysis & automated tools Purpose of this survey Definition - SPL 3 / 24
  • 4. Introduction Background Review method and evaluation Future research and conclusion FMs & SPL FM analysis & automated tools Purpose of this survey Definition - FM 4 / 24
  • 5. Introduction Background Review method and evaluation Future research and conclusion FMs & SPL FM analysis & automated tools Purpose of this survey Why FM analysis ? FM analysis helps in : 1 detecting inconsistencies 2 identifying dead features 3 identifying redundancies 4 optimizing FMs ... and many more ... 5 / 24
  • 6. Introduction Background Review method and evaluation Future research and conclusion FMs & SPL FM analysis & automated tools Purpose of this survey FM analysis tool - Why Alloy ? There are no standard text representations for FM. FM formal specifications must be manually created from textual requirements. Alloy - lightweight modeling notation with model finder. FM specification can be in Alloy notation. 6 / 24
  • 7. Introduction Background Review method and evaluation Future research and conclusion FMs & SPL FM analysis & automated tools Purpose of this survey Purpose of this survey Evaluate the State-of-the-art by reviewing 9 relevant papers. Characterize the strengths and weaknesses of various Alloy encoding approaches from the following perspectives for all the 9 papers : 1 Ease of reproducing the research results. 2 Expressiveness of the FM. 3 Efficiency of the analysis. 4 Existence of tool support. 7 / 24
  • 8. Introduction Background Review method and evaluation Future research and conclusion Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations Existing surveys in literature Published research papers with similar survey information 2010 Benavides et al. - Automated analysis of feature models 20 years later : A literature review 2014 Thüm et al. - A Classification and Survey of Analysis Strategies for Software Product Lines 2015 Lesta et al. - Detecting and Explaining Conflicts in Attributed Feature Models 8 / 24
  • 9. Introduction Background Review method and evaluation Future research and conclusion Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations Papers selected for the review [2005] Wang et al. : Formal Semantics and Verification for Feature Modeling [2006] Gheyi et al. : A Theory for Feature Models in Alloy [2008] Tanizaki et al. : Formalization and Consistency Checking of Changes of Software System Configurations Using Alloy [2010] Nakajima et al. : Semi-automated Diagnosis of FODA Feature Diagram [2011] Finkel et al. : Reasoning about conditional constraint specification problems and feature models [2012] Ripon et al. : Modeling and Analysis of Product line Variants [2013] Huang et al. : Using Alloy to support feature based DSL construction for mining software repositories [2013] Jamie et al. : Supporting Multilevel Configuration with Feature Solution Graphs Formal Semantics and Alloy [2015] Ajoudanian et al. : Automatic promotional specialization, generalization and analysis of extended feature models with cardinalities in Alloy Implementation 9 / 24
  • 10. Introduction Background Review method and evaluation Future research and conclusion Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations Benchmark : bCMS (reconstructed in FeatureIDE tool) This is a case study originating in the http://cserg0.site.uottawa.ca/cma2013models/ "Comparing Modeling Approaches" at MODELS 2013, which has been used in several other papers as a benchmark FM. 10 / 24
  • 11. Introduction Background Review method and evaluation Future research and conclusion Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations Alloy example abstract sig Workshop { } sig Person { } one sig FMSPLE extends Workshop { audience: set Person } fact { some FMSPLE.audience }; 11 / 24
  • 12. Introduction Background Review method and evaluation Future research and conclusion Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations Alloy semantics Constructs Description Signature sig A set of objects of the same type. Eg. sig Feature sig Feature1 extends Feature Function fun A named expression with 0 or more argu- ments and a declaration expression for the result. Eg. fun satisfyNot[form:Form, c:Configuration]: Bool { Not[form.f.satisfy[c]] } 12 / 24
  • 13. Introduction Background Review method and evaluation Future research and conclusion Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations Alloy semantics (cont.) Constructs Description Fact fact A constraint that is assumed to hold in any instance of the model, e.g. a well- formedness rule of the model. Eg. fact { no f: Feature| f in f.^ parent } Predicate pred A named constraint with 0 or more argu- ments. Eg. pred findInstance[ ] { some featureModel } run findInstance for 25 13 / 24
  • 14. Introduction Background Review method and evaluation Future research and conclusion Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations Alloy semantics (cont.) Constructs Description Assertion assert A constraint that should follow from the facts of the model. Eg. assert conflictsShow{ one fm:FM | fm = featureModel and (no f:Feature | f in conflicts[featureModel])} check conflictsShow 14 / 24
  • 15. Introduction Background Review method and evaluation Future research and conclusion Related surveys & selected papers Benchmark feature model Alloy semantics FM analysis operations Operations 15 / 24
  • 16. Introduction Background Review method and evaluation Future research and conclusion Threats to validity Approach used Findings Threats to validity Coverage of literature databases : excluded DBLP and Google Scholar. included recent related surveys and the references to and from those papers. Search strings used : search based on abstract and keywords. excluded titles and some special keywords like ’automated FM analysis’. Limitations of the case study FM : not comparable to realistic large scale FMs from actual industry. cannot quantify the scalability and ease-of-use of different Alloy encoding for such realistic FMs. 16 / 24
  • 17. Introduction Background Review method and evaluation Future research and conclusion Threats to validity Approach used Findings Review process 17 / 24
  • 18. Introduction Background Review method and evaluation Future research and conclusion Threats to validity Approach used Findings Findings - Encoding families Two major categories of encoding : 1 Propositional logic based encoding : Relationships are encoded as formulas 2 Encoding based on Alloy constructs : Relationships are encoded in Alloy constructs 18 / 24
  • 19. Introduction Background Review method and evaluation Future research and conclusion Threats to validity Approach used Findings Findings - Pros & Cons Ability to reason about number of valid product instances Size or the total number of lines in the Alloy specifications for large FMs : this varies depending on the encoding category Readability of the Alloy specifications/encoding Degree of expressiveness 19 / 24
  • 20. Introduction Background Review method and evaluation Future research and conclusion Threats to validity Approach used Findings Findings - Execution time We were unable to reproduce the results of Ajoudanian because of the following roadblocks : Syntax errors in the encoding Invalid Alloy symbols Undefined variables 20 / 24
  • 21. Introduction Background Review method and evaluation Future research and conclusion Threats to validity Approach used Findings Findings - Limitations Theoretical limitations : Only one paper supported the counting of valid configurations. All encoding supports only trivial relationships. Practical limitations : No tool support for generating Alloy specifications for large FMs. Had to be done manually. Missing Alloy specifications in some of the reviewed papers. No research results validated against very large realistic FMs. 21 / 24
  • 22. Introduction Background Review method and evaluation Future research and conclusion Threats to validity Approach used Findings Findings - Summary Among 30 known FM analysis operations, only 10 are supported across the 9 research works. There are no automated tools for translating natural language specifications or CNF specifications to Alloy encoding. Unable to validate the results provided in some research papers * for our case study on bCMS FM. Manual encodings one order of magnitude faster than automatic encodings Few families of closely related encodings 22 / 24
  • 23. Introduction Background Review method and evaluation Future research and conclusion Future research and conclusion Research on the possibility of Alloy being able to support all the remaining analysis operations. Emphasized the importance of automated tool support for converting FM diagrams to Alloy notations. Identified the limitations of the available research results and its application in our case study. Highlighted the importance of future research on automated FM analysis using Alloy. 23 / 24
  • 24. Introduction Background Review method and evaluation Future research and conclusion Thank you Thank you for your attention ! Contact : Anjali Sree-Kumar Email : asree_kumar@uoc.edu Case study Alloy source files URL : https://www.dropbox.com/s/wysbls64ictoofm/Alloy.zip?dl=0 24 / 24