FAMILIAR

We are moving to github!  FAMILIAR new homepage

Feature models are a popular formalism for managing variability in software product lines (SPLs). Realistic SPLs involve the modeling of a large number of features to comprehensively represent different viewpoints, sub-systems or concerns of the software system. To manage complexity, there is a need to separate, inter-relate and compose several feature models while automating the reasoning on their compositions -- from validity checks to configuration process. We propose a Domain-Specific Language (DSL) that is dedicated to the management of feature models and that complements existing tool support.

The DSL, called FAMILIAR (for FeAture Model scrIpt Language for manIpulation and Automatic Reasoning), is an executable language that supports manipulating and reasoning about feature models. FAMILIAR is developed in Java language using  Xtext, a framework for development of DSLs. Off-the-shelf SAT solvers (i.e., SAT4J) and BDD library (i.e., JavaBDD) are internally used to perform FAMILIAR operations.

We provide an Eclipse text editor and an interpreter that executes the various scripts. The interpreter can be used in an interactive mode. We provide multiple notations for specifying feature models ( SPLOT,  GUIDSL/FeatureIDE, a subset of  TVL, etc.) The integration of the language to the  FeatureIDE environment has been done to support experimentation, e.g., all graphical edits are synchronized with variables environment and all interactive commands are synchronized with the graphical editors.

FAMILIAR-ads

Do not hesitate to contact us in case of questions or other requests.

NEWS:

Learning FAMILIAR

replacing a subtree in a feature model

Managing Multiple SPL: a scenario

Other projects

Contact

 Mathieu Acher (University of Rennes, France)  Philippe Collet (Université Nice Sophia Antipolis, France)

Publications

Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. FAMILIAR: A Domain-Specific Language for Large Scale Management of Feature Models (2013). In Science of Computer Programming (SCP) Special issue on programming languages [bib][HAL][DOI] Abstract

 Mathieu Acher,  Patrick Heymans,  Philippe Collet,  Philippe Lahire Next-Generation Model-based Variability Management: Languages and Tools (Tutorial) In 15th International Conference on Model Driven Engineering Languages & Systems (MODELS'12) 2012, to appear.

 Mathieu Acher,  Raphaël Michel,  Patrick Heymans Next-Generation Model-based Variability Management: Languages and Tools (Tutorial) In 16th International Conference on Software Product Line Conference (SPLC'12) 2012, to appear.

 Mathieu Acher,  Patrick Heymans,  Philippe Collet, Clément Quinton,  Philippe Lahire, and Philippe Merle. Feature Model Differences. In Proceedings of the 24th International Conference on Advanced Information Systems Engineering (CAiSE'12) 2012, to appear. [ pdf]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. Separation of Concerns in Feature Modeling: Support and Applications. In Aspect-Oriented Software Development (AOSD) 2012 [ bib] [ pdf]

 Mathieu Acher Managing Multiple Feature Models: Foundations, Language, and Applications. PhD thesis, september 2011 [ pdf] [ bib]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. Decomposing Feature Models: Language, Environment, and Applications. In 26th Automated Software Engineering (ASE), demonstration paper, Kansas (USA), November 2011. [ bib]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. Slicing Feature Models. In 26th Automated Software Engineering (ASE), AR=22%, short paper, Kansas (USA), November 2011. [ pdf] [ bib]

 Mathieu Acher,  Anthony Cleve,  Philippe Collet,  Philippe Merle,  Laurence Duchien and  Philippe Lahire. Reverse Engineering Architectural Feature Models In 5th European Conference on Software Architecture (ECSA), AR=22%, long paper, page 16, Essen (Germany), September 2011. [ bib]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire,  Sabine Moisan, and  Jean-Paul Rigault. Modeling Variability from Requirements to Runtime In Proceedings of 16th International Conference on Engineering of Complex Computer Systems (ICECCS) AR=31%, IEEE Computer Society, April 2011. [ bib] [ pdf]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. Managing Feature Models with FAMILIAR: a Demonstration of the Language and its Tool Support. In Fifth International Workshop on Variability Modelling of Software-intensive Systems (VaMoS) AR=55%, ACM, Belgium, 27-29 january 2011 [ bib] [ pdf]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. A Domain-Specific Language for Managing Feature Models In 26th Symposium on Applied Computing (SAC), Programming Languages Track, AR=33%, ACM, Taiwan, 21-25 march 2011 [ bib] [ pdf]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. Managing Multiple Software Product Lines Using Merging Techniques Technical report, University of Nice Sophia Antipolis, I3S CNRS, Sophia Antipolis, France, May 2010. [ bib] | [ .pdf]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. Managing Variability in Workflow with Feature Model Composition Operators In 9th International Conference on Software Composition AR=28%, volume LNCS, page 16. Springer, June 2010. [ bib] [ pdf]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. Comparing Approaches to Implement Feature Model Composition In 6th European Conference on Modelling Foundations and Applications (ECMFA) AR=31%, volume LNCS, page 16. Springer, June 2010. [ bib] [ pdf]

 Mathieu Acher,  Philippe Collet,  Philippe Lahire, and  Robert France. Composing Feature Models In 2nd International Conference on Software Language Engineering (SLE'09) AR=19%, LNCS, page 20. LNCS, October 2009. [ bib] | [ .pdf]

 Mathieu Acher,  Philippe Collet,  Franck Fleurey,  Philippe Lahire,  Sabine Moisan, and  Jean-Paul Rigault. Modeling Context and Dynamic Adaptations with Feature Models In 4th International Workshop Models@run.time at Models 2009 (MRT'09), page 10, October 2009. [ bib] | [ .pdf]

 Mathieu Acher,  Philippe Lahire,  Sabine Moisan, and  Jean-Paul Rigault. Tackling High Variability in Video Surveillance Systems through a Model Transformation Approach In Proceedings of the 2009 international workshop on Modeling in software engineering at ICSE 2009 (MiSE'09) AR=44%. IEEE Computer Society, May 2009. [ bib] | [ .pdf]

Attachments