analysis of feature models using alloy - a survey
TRANSCRIPT
IntroductionBackground
Review method and evaluationFuture research and conclusion
Analysis of Feature Models using AlloyA survey
Anjali Sree-Kumar, Elena Planas, Robert Clarisó
SOM Research LabOpen University of Catalonia, Barcelona
ETAPS - 3rd April @ FMSPLE’16 Workshop, Eindhoven
1 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Agenda
1 IntroductionFMs & SPLFM analysis &automated toolsPurpose of this survey
2 BackgroundRelated surveys &selected papersBenchmark featuremodel
Alloy semanticsFM analysis operations
3 Review method andevaluation
Threats to validityApproach usedFindings
4 Future research andconclusion
2 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
FMs & SPLFM analysis & automated toolsPurpose of this survey
Definition - SPL
3 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
FMs & SPLFM analysis & automated toolsPurpose of this survey
Definition - FM
4 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
FMs & SPLFM analysis & automated toolsPurpose of this survey
Why FM analysis ?
FM analysis helps in :1 detecting inconsistencies2 identifying dead features3 identifying redundancies4 optimizing FMs ... and many more ...
5 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
FMs & SPLFM analysis & automated toolsPurpose of this survey
FM analysis tool - Why Alloy ?
There are no standard text representations for FM.FM formal specifications must be manually created fromtextual requirements.Alloy - lightweight modeling notation with model finder.FM specification can be in Alloy notation.
6 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
FMs & SPLFM analysis & automated toolsPurpose of this survey
Purpose of this survey
Evaluate the State-of-the-art by reviewing 9 relevantpapers.Characterize the strengths and weaknesses of variousAlloy encoding approaches from the following perspectivesfor 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
IntroductionBackground
Review method and evaluationFuture research and conclusion
Related surveys & selected papersBenchmark feature modelAlloy semanticsFM analysis operations
Existing surveys in literature
Published research papers with similar survey information
2010 Benavides et al. - Automated analysis of feature models 20years later : A literature review
2014 Thüm et al. - A Classification and Survey of AnalysisStrategies for Software Product Lines
2015 Lesta et al. - Detecting and Explaining Conflicts inAttributed Feature Models
8 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Related surveys & selected papersBenchmark feature modelAlloy semanticsFM analysis operations
Papers selected for the review[2005] Wang et al. : Formal Semantics and Verification for FeatureModeling[2006] Gheyi et al. : A Theory for Feature Models in Alloy[2008] Tanizaki et al. : Formalization and Consistency Checking ofChanges of Software System Configurations Using Alloy[2010] Nakajima et al. : Semi-automated Diagnosis of FODA FeatureDiagram[2011] Finkel et al. : Reasoning about conditional constraintspecification 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 DSLconstruction for mining software repositories[2013] Jamie et al. : Supporting Multilevel Configuration with FeatureSolution Graphs Formal Semantics and Alloy[2015] Ajoudanian et al. : Automatic promotional specialization,generalization and analysis of extended feature models withcardinalities in Alloy Implementation
9 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Related surveys & selected papersBenchmark feature modelAlloy semanticsFM analysis operations
Benchmark : bCMS (reconstructed in FeatureIDE tool)
This is a case study originating in the http://cserg0.site.uottawa.ca/cma2013models/ "ComparingModeling Approaches" at MODELS 2013, which has been used in several other papers as a benchmark FM.
10 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Related surveys & selected papersBenchmark feature modelAlloy semanticsFM analysis operations
Alloy example
abstract sig Workshop { }sig Person { }one sig FMSPLE extends Workshop{ audience: set Person }fact { some FMSPLE.audience };
11 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Related surveys & selected papersBenchmark feature modelAlloy semanticsFM analysis operations
Alloy semantics
Constructs Description
Signature sig A set of objects of the same type.Eg. sig Featuresig Feature1 extends Feature
Function fun A named expression with 0 or more argu-ments and a declaration expression for theresult.Eg. fun satisfyNot[form:Form,c:Configuration]: Bool {Not[form.f.satisfy[c]] }
12 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Related surveys & selected papersBenchmark feature modelAlloy semanticsFM analysis operations
Alloy semantics (cont.)
Constructs Description
Fact fact A constraint that is assumed to hold inany instance of the model, e.g. a well-formedness rule of the model.Eg. fact { no f: Feature|f in f.^ parent }
Predicatepred
A named constraint with 0 or more argu-ments.Eg. pred findInstance[ ] {some featureModel }run findInstance for 25
13 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Related surveys & selected papersBenchmark feature modelAlloy semanticsFM analysis operations
Alloy semantics (cont.)
Constructs Description
Assertionassert
A constraint that should follow from thefacts of the model.Eg. assert conflictsShow{ onefm:FM | fm = featureModeland (no f:Feature | f inconflicts[featureModel])}check conflictsShow
14 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Related surveys & selected papersBenchmark feature modelAlloy semanticsFM analysis operations
Operations
15 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Threats to validityApproach usedFindings
Threats to validity
Coverage of literature databases :excluded DBLP and Google Scholar.included recent related surveys and the references to andfrom those papers.
Search strings used :search based on abstract and keywords.excluded titles and some special keywords like ’automatedFM analysis’.
Limitations of the case study FM :not comparable to realistic large scale FMs from actualindustry.cannot quantify the scalability and ease-of-use of differentAlloy encoding for such realistic FMs.
16 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Threats to validityApproach usedFindings
Review process
17 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Threats to validityApproach usedFindings
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 areencoded in Alloy constructs
18 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Threats to validityApproach usedFindings
Findings - Pros & Cons
Ability to reason about number of valid product instancesSize or the total number of lines in the Alloy specificationsfor large FMs : this varies depending on the encodingcategoryReadability of the Alloy specifications/encodingDegree of expressiveness
19 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Threats to validityApproach usedFindings
Findings - Execution time
We were unable to reproduce the results of Ajoudanianbecause of the following roadblocks :
Syntax errors in the encodingInvalid Alloy symbolsUndefined variables
20 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Threats to validityApproach usedFindings
Findings - Limitations
Theoretical limitations :Only one paper supported the counting of validconfigurations.All encoding supports only trivial relationships.
Practical limitations :No tool support for generating Alloy specifications for largeFMs. Had to be done manually.Missing Alloy specifications in some of the reviewedpapers.No research results validated against very large realisticFMs.
21 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Threats to validityApproach usedFindings
Findings - Summary
Among 30 known FM analysis operations, only 10 aresupported across the 9 research works.There are no automated tools for translating naturallanguage specifications or CNF specifications to Alloyencoding.Unable to validate the results provided in some researchpapers * for our case study on bCMS FM.Manual encodings one order of magnitude faster thanautomatic encodingsFew families of closely related encodings
22 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Future research and conclusion
Research on the possibility of Alloy being able to supportall the remaining analysis operations.Emphasized the importance of automated tool support forconverting FM diagrams to Alloy notations.Identified the limitations of the available research resultsand its application in our case study.Highlighted the importance of future research onautomated FM analysis using Alloy.
23 / 24
IntroductionBackground
Review method and evaluationFuture research and conclusion
Thank you
Thank you for your attention !
Contact : Anjali Sree-KumarEmail : [email protected]
Case study Alloy source files URL :
https://www.dropbox.com/s/wysbls64ictoofm/Alloy.zip?dl=0
24 / 24