M. Acher, Associate Professor, PhD

Personal webpage of M. Acher, PhD

Dr. Mathieu Acher Associate Professor

contact: email adress, twitter, linkedin, slideshare

I am Associate Professor at Université of Rennes 1, junior research fellow at Institut Universitaire de France (IUF) since september 2021, and a member of the DiverSE team (Inria/IRISA) since september 2012. I hold an Habilitation à diriger des recherches (HDR) since 2021.
I am interested in any form of variability (in software, in videos, in 3D printing, in data, etc.). Software product lines, generators, configurations/configurators, product comparison matrix, customizations, feature models, or domain-specific languages are some keywords of my research and teaching. For more details, see below my research interests, software development, publications, PhD thesis, or even HDR manuscript! By the way, I am a chess player (3 international master norms)... If you want to play some blitz, I am always ready!

News and recent results

3 papers to be presented at ICSE 2022: 1 research track and 1 NIER about incremental build, and 1 journal first about transfer learning for Linux (preprints available)

1 keynote about reproducible science and variability and 2 papers accepted at VaMoS 2022!

Habilitation à diriger des recherches (HDR)... More information below!

Proud and honoured to be among the junior research fellows at Institut Universitaire de France (IUF) (press release) (IUF webpage)

Transfer Learning Across Variants and Versions (Linux case) accepted at Transactions on Software Engineering (TSE)

Best paper award at SPLC 2021 (press release)

Best paper award at ICPE 2020 (press release)

ICSE 2020: 1 paper in the research track, 1 paper in the NIER track, and 1 paper in the Journal first track (and two rejects)

Program committee co-chair of VaMoS 2020

Most influential paper at SLE for "Composing feature models" (2009) press release (in french)

Talk at Embedded Linux Conference Europe 2019!

Multimorphic Testing accepted at Transactions on Software Engineering (TSE)

Research interests

In many domains, systems heavily rely on software and have to be efficiently extended, changed, customized or configured for use in a particular context (e.g., to respond to the specific expectations of a customer). The challenge for software practitioners is to develop and use the right models (abstractions), languages, and tool-supported techniques to produce and maintain multiple similar software products (variants), exploiting what they have in common and managing what varies among them. The modeling and management of variability in software intensive systems (often called software product lines) is a complex activity and is the focus of my research. For instance, in my thesis, I developed theoretical foundations and practical support for managing feature models, a widely used formalism for specifying and reasoning about commonality and variability of systems. A resulting output of this research is FAMILIAR, a domain-specific language for managing (several) feature models.

Software development

Interested in feature models? You should have a look at FAMILIAR (for FeAture Model scrIpt Language for manIpulation and Automatic Reasoning). With FAMILIAR, you can import, export, compose, decompose, edit, refactor, reverse engineer, computing diffs, configure, reverse engineer, or reason about (several) feature models and combine these operations to realize complex variability management tasks.

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 also 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.

You can try the Eclipse plugin or a standalone version by visiting the webpage of the FAMILIAR project!

We have developed OpenCompare, a collaborative place for sharing and finding product comparison matrices. Our goal was to ease the comparison of "things" (e.g., products, software) with state-of-the-art tools (editors, miners like MatrixMiner, visualizers, configurators, etc.) It is no longer maintained, but we learned a lot!

We are also developing TuxML for sampling, measuring, and learning Linux kernel configurations.

Teaching

I have written a report of a representative teaching season: https://blog.mathieuacher.com/Teaching1819/. Specifically, I have taught/am teaching the following courses:

The teaching audience is quite diverse: Meanwhile I had/have several responsibilities:

Publications

(See also DBLP, Google Scholar, or HAL . Send me an email for further information!)

[1] Xhevahire Tërnava, Mathieu Acher, Luc Lesoil, Arnaud Blouin, and Jean-Marc Jézéquel. Scratching the Surface of ./configure: Learning the Effects of Compile-Time Options on Binary Size and Gadgets (2022). In ICSR 2022 - 20th International Conference on Software and Systems Reuse [PDF] [bib] Abstract

[2] Luc Lesoil, Mathieu Acher, Arnaud Blouin, and Jean-Marc Jézéquel. Beware of the Interactions of Variability Layers When Reasoning about Evolution of MongoDB (2022). In ICPE 2022 - 13th ACM/SPEC International Conference on Performance Engineering [PDF] [bib][DOI] Abstract

[3] Paul Temple, Gilles Perrouin, Mathieu Acher, Battista Biggio, Jean-Marc Jézéquel, and Fabio Roli. Empirical Assessment of Generating Adversarial Configurations for Software Product Lines (2022). In International Conference on Software Architecture (ICSA), Journal First Track [bib] Abstract

[4] Hugo Martin, Paul Temple, Mathieu Acher, Juliana Alves Pereira, and Jean-Marc Jézéquel. Machine learning for feature constraints discovery (2022) chapter book, in Handbook of Re-Engineering Software Intensive Systems into Software Product Lines (2022). published by Springer [bib]

[5] Roberto Lopez-Herrejon, Jabier Martinez, Tewfik Ziadi, Mathieu Acher, K.G. Wesley Assunção, and Silvia Vergilio. Handbook of Re-Engineering Software Intensive Systems into Software Product Lines [editor of the proceedings] (2022). [bib]

[6] Georges Aaron Randrianaina, Xhevahire Tërnava, Djamel Eddine Khelladi, and Mathieu Acher. On the Benefits and Limits of Incremental Build of Software Configurations: An Exploratory Study (2022). In ICSE 2022 - 44th International Conference on Software Engineering [PDF] [bib] Abstract

[7] Mathieu Acher. Reproducible Science and Deep Software Variability (2022). In VaMoS 2022 - 16th International Working Conference on Variability Modelling of Software-Intensive Systems [PDF] [bib] Abstract

[8] Luc Lesoil, Hugo Martin, Mathieu Acher, Arnaud Blouin, and Jean-Marc Jézéquel. Transferring Performance between Distinct Configurable Systems : A Case Study (2022). In VaMoS 2022 - 16th International Working Conference on Variability Modelling of Software-Intensive Systems [PDF] [bib][DOI] Abstract

[9] Xhevahire Tërnava, Luc Lesoil, Georges Aaron Randrianaina, Djamel Eddine Khelladi, and Mathieu Acher. On the Interaction of Feature Toggles (2022). In VaMoS 2022 - 16th International Working Conference on Variability Modelling of Software-Intensive Systems [PDF] [bib][DOI] Abstract

[10] Georges Aaron Randrianaina, Djamel Eddine Khelladi, Olivier Zendra, and Mathieu Acher. Towards Incremental Build of Software Configurations (2022). In ICSE-NIER 2022 - 44th International Conference on Software Engineering -- New Ideas and Emerging Results [PDF] [bib][DOI]

[11] Luc Lesoil, Mathieu Acher, Arnaud Blouin, and Jean{-}Marc J{é}z{é}quel. The Interaction between Inputs and Configurations fed to Software Systems: an Empirical Study (2021). In CoRR [PDF] [bib][TwitterThread] Abstract

[12] Mathieu Acher. Modelling, Reverse Engineering, and Learning Software Variability (2021). [PDF] [bib]

[13] Hugo Martin, Mathieu Acher, Juliana Alves Pereira, Luc Lesoil, Jean-Marc Jézéquel, and Djamel Eddine Khelladi. Transfer Learning Across Variants and Versions: The Case of Linux Kernel Size (2021). In IEEE Transactions on Software Engineering published by Institute of Electrical and Electronics Engineers [PDF] [bib][TwitterThread] Abstract

[14] Juliana Alves Pereira, Hugo Martin, Mathieu Acher, Jean-Marc Jézéquel, Goetz Botterweck, and Anthony Ventresque. Learning Software Configuration Spaces: A Systematic Literature Review (2021). In Journal of Systems and Software published by Elsevier [PDF] [bib][DOI][TwitterThread] Abstract

[15] Mathieu Acher, Gilles Perrouin, and Maxime Cordy. BURST: A Benchmarking Platform for Uniform Random Sampling Techniques (2021). In Proceedings of the 25th ACM International Systems and Software Product Line Conference - Volume B published by Association for Computing Machinery [PDF] [bib][DOI][TwitterThread][Youtube] Abstract

[16] Luc Lesoil, Mathieu Acher, Xhevahire Tërnava, Arnaud Blouin, and Jean-Marc Jézéquel. The Interplay of Compile-time and Run-time Options for Performance Prediction (2021). In SPLC 2021 - 25th ACM International Systems and Software Product Line Conference - Volume A published by ACM [PDF] [bib][DOI][TwitterThread][Youtube] Abstract

[17] Hugo Martin, Mathieu Acher, Juliana Alves Pereira, and Jean-Marc Jézéquel. A comparison of performance specialization learning for configurable systems (2021). In SPLC 2021 - 25th ACM International Systems and Software Product Line Conference published by ACM [PDF] [bib][DOI][TwitterThread][Youtube] Best Paper Award Abstract

[18] Luc Lesoil, Mathieu Acher, Arnaud Blouin, and Jean-Marc Jézéquel. Deep Software Variability: Towards Handling Cross-Layer Configuration (2021). In VaMoS 2021 - 15th International Working Conference on Variability Modelling of Software-Intensive Systems [PDF] [bib][TwitterThread] Abstract

[19] Maxime Cordy, Mathieu Acher, Danilo Beuche, and Gunter Saake. VaMoS '20: 14th International Working Conference on Variability Modelling of Software-Intensive Systems, Magdeburg Germany, February 5-7, 2020 [editor of the proceedings] (2020). published by ACM [PDF] [bib][DOI]

[20] Djamel Eddine Khelladi, Benoit Combemale, Mathieu Acher, Olivier Barais, and Jean-Marc Jézéquel. Co-evolving code with evolving metamodels (2020). In ICSE '20: 42nd International Conference on Software Engineering, Seoul, South Korea, 27 June - 19 July, 2020 published by ACM [PDF] [bib][DOI][Youtube] Abstract

[21] Djamel Eddine Khelladi, Benoit Combemale, Mathieu Acher, and Olivier Barais. On the power of abstraction: a model-driven co-evolution approach of software code (2020). In ICSE-NIER 2020: 42nd International Conference on Software Engineering, New Ideas and Emerging Results, Seoul, South Korea, 27 June - 19 July, 2020 published by ACM [PDF] [bib][DOI][Youtube] Abstract

[22] Juliana Alves Pereira, Hugo Martin, Paul Temple, and Mathieu Acher. Machine learning and configurable systems: a gentle introduction (2020). In SPLC '20: 24th ACM International Systems and Software Product Line Conference, Montreal, Quebec, Canada, October 19-23, 2020, Volume A published by ACM [PDF] [bib][DOI] Abstract

[23] Benjamin Benni, S{é}bastien Mosser, Mathieu Acher, and Mathieu Paillart. Characterizing Black-box Composition Operators via Generated Tailored Benchmarks (2020). In J. Object Technol. [PDF] [bib][DOI][Youtube] Abstract

[24] Francesca Arcelli Fontana, Gilles Perrouin, Apostolos Ampatzoglou, Mathieu Acher, Bartosz Walter, Maxime Cordy, Fabio Palomba, and Xavier Devroey. MALTESQUE 2019 Workshop Summary (2020). In ACM SIGSOFT Softw. Eng. Notes [PDF] [bib][DOI]

[25] Paul Temple, Gilles Perrouin, Mathieu Acher, Battista Biggio, Jean-Marc Jézéquel, and Fabio Roli. Empirical Assessment of Generating Adversarial Configurations for Software Product Lines (2020). In Empirical Software Engineering (ESE) [bib] Abstract

[26] Francesca Arcelli Fontana, Bartosz Walter, Apostolos Ampatzoglou, Fabio Palomba, Gilles Perrouin, Mathieu Acher, Maxime Cordy, and Xavier Devroey. Proceedings of the 3rd ACM SIGSOFT International Workshop on Machine Learning Techniques for Software Quality Evaluation, MaLTeSQuE@ESEC/SIGSOFT FSE 2019, Tallinn, Estonia, August 27, 2019 [editor of the proceedings] (2019). published by ACM [PDF] [bib][DOI]

[27] Juliana Alves Pereira, Mathieu Acher, Hugo Martin, and Jean-Marc Jézéquel. Sampling Effect on Performance Prediction of Configurable Systems: A Case Study (2020). In International Conference on Performance Engineering (ICPE 2020) [PDF] [bib][Youtube] Best Paper Award Abstract

[28] Mathieu Acher, and Myra B. Cohen. Special issue on systems and software product line engineering (2019). In Journal of Systems and Software (JSS) [PDF] [bib][DOI]

[29] Mathieu Acher, Hugo Martin, Juliana Alves Pereira, Arnaud Blouin, Jean-Marc Jézéquel, Djamel Eddine Khelladi, Luc Lesoil, and Olivier Barais. Learning Very Large Configuration Spaces: What Matters for Linux Kernel Sizes (2019). [PDF] [bib] Abstract

[30] Mathieu Acher, Hugo Martin, Juliana Alves Pereira, Arnaud Blouin, Djamel Eddine Khelladi, and Jean-Marc Jézéquel. Learning From Thousands of Build Failures of Linux Kernel Configurations (2019). [PDF] [bib] Abstract

[31] Mathieu Acher. Learning the Linux Kernel Configuration Space: Results and Challenges (2019). In ELC Europe 2019 - Embedded Linux Conference Europe 2019 [PDF] [bib][Youtube]

[32] Hugo Martin, Juliana Alves Pereira, Paul Temple, and Mathieu Acher. Machine Learning and Configurable Systems: A Gentle Introduction (2019). In SPLC 2019 - 23rd International Systems and Software Product Line Conference published by ACM [PDF] [bib][DOI]

[33] Mathieu Acher, Tewfik Ziadi, Roberto E Lopez-Herrejon, and Jabier Martinez. Seventh international workshop on reverse variability engineering (REVE 2019) (2019). In SPLC 2019 - 23rd International Systems and Software Product Line Conference published by ACM Press [PDF] [bib]

[34] Paul Temple, Mathieu Acher, and Jean-Marc Jézéquel. Empirical Assessment of Multimorphic Testing (2019). In IEEE Transactions on Software Engineering (TSE) published by Institute of Electrical and Electronics Engineers [PDF] [bib][DOI] Abstract

[35] Paul Temple, Mathieu Acher, Gilles Perrouin, Battista Biggio, Jean-Marc Jézéquel, and Fabio Roli. Towards Quality Assurance of Software Product Lines with Adversarial Configurations (2019). In 23rd International Systems and Software Product Line Conference [PDF] [bib] Abstract

[36] Marcel Heinz, Ralf Lämmel, and Mathieu Acher. Discovering Indicators for Classifying Wikipedia Articles in a Domain: A Case Study on Software Languages (2019). In SEKE 2019 - The 31st International Conference on Software Engineering and Knowledge Engineering [PDF] [bib]

[37] Quentin Plazar, Mathieu Acher, Gilles Perrouin, Xavier Devroey, and Maxime Cordy. Uniform Sampling of SAT Solutions for Configurable Systems: Are We There Yet? (2019). In ICST 2019 - 12th International Conference on Software Testing, Verification, and Validation [PDF] [bib] Abstract

[38] Benoit Amand, Maxime Cordy, Patrick Heymans, Mathieu Acher, Paul Temple, and Jean-Marc Jézéquel. Towards Learning-Aided Configuration in 3D Printing: Feasibility Study and Application to Defect Prediction (2019). In VaMoS 2019 - 13th International Workshop on Variability Modelling of Software-Intensive Systems [PDF] [bib] Abstract

[39] Gilles Perrouin, Mathieu Acher, Maxime Cordy, and Xavier Devroey. Proceedings of the 1st International Workshop on Machine Learning and Software Engineering in Symbiosis, MASES@ASE 2018, Montpellier, France, September 3, 2018 [editor of the proceedings] (2018). published by ACM [PDF] [bib][DOI]

[40] Mathieu Acher, Roberto E Lopez-Herrejon, and Rick Rabiser. Teaching Software Product Lines: A Snapshot of Current Practices and Challenges (Journal-First Abstract) (2018). In SPLC2018 - 22nd International Systems and Software Product Line Conference [PDF] [bib] Abstract

[41] Axel Halin, Alexandre Nuttinck, Mathieu Acher, Xavier Devroey, Gilles Perrouin, and Benoit Baudry. Test them all, is it worth it? Assessing configuration sampling on the JHipster Web development stack (2019). In Empirical Software Engineering (ESE) published by Springer Verlag [PDF] [bib][DOI][Youtube] Empirical Software Engineering journal Abstract

[42] Mathieu Acher, Paul Temple, Jean-Marc Jézéquel, José Angel Galindo Duarte, Jabier Martinez, and Tewfik Ziadi. VaryLaTeX: Learning Paper Variants That Meet Constraints (2018). In 12th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS'18) [PDF] [bib][Youtube] Abstract

[43] Mauricio Alférez, Mathieu Acher, José A Galindo, Benoit Baudry, and David Benavides. Modeling Variability in the Video Domain: Language and Experience Report (2019). In Software Quality Journal published by Springer Verlag [PDF] [bib][DOI] Abstract

[44] Paul Temple, Mathieu Acher, Battista Biggio, Jean-Marc Jézéquel, and Fabio Roli. Towards Adversarial Configurations for Software Product Lines (2018). In CoRR [PDF] [bib]

[45] Paul Temple, Mathieu Acher, and Jean-Marc Jézéquel. Multimorphic Testing (2018). In ACM/IEEE 40th International Conference on Software Engineering: Companion Proceedings [PDF] [bib][DOI]

[46] Jabier Martinez, Jean-Sébastien Sottet, Alfonso Garcia Frey, Tegawendé Bissyandé, Tewfik Ziadi, Jacques Klein, Paul Temple, Mathieu Acher, and Yves Le Traon. Towards Estimating and Predicting User Perception on Software Product Variants (2018). In ICSR 2018 - International Conference on Software Reuse [PDF] [bib] Abstract

[47] Axel Halin, Alexandre Nuttinck, Mathieu Acher, Xavier Devroey, Gilles Perrouin, and Benoit Baudry. Test them all, is it worth it? A ground truth comparison of configuration sampling strategies (2017). In CoRR [PDF] [bib] Abstract

[48] Myra B. Cohen, Mathieu Acher, Lidia Fuentes, Daniel Schall, Jan Bosch, Rafael Capilla, Ebrahim Bagheri, Yingfei Xiong, Javier Troya, Antonio Ruiz Cortes, and David Benavides. Proceedings of the 21st International Systems and Software Product Line Conference, SPLC 2017, Volume A, Sevilla, Spain, September 25-29, 2017 [editor of the proceedings] (2017). published by ACM [PDF] [bib][DOI]

[49] Quentin Plazar, Mathieu Acher, Sébastien Bardin, and Arnaud Gotlieb. Efficient and Complete FD-Solving for Extended Array Constraints (2017). In IJCAI 2017 [PDF] [bib] Abstract

[50] Paul Temple, Mathieu Acher, Jean-Marc Jézéquel, and Olivier Barais. Learning-Contextual Variability Models (2017). In IEEE Software published by Institute of Electrical and Electronics Engineers (IEEE) [PDF] [bib] Abstract

[51] Mathieu Acher, Roberto Erick Lopez-Herrejon, and Rick Rabiser. Teaching Software Product Lines: A Snapshot of Current Practices and Challenges (2017). In ACM Transactions on Computing Education (TOCE) published by ACM [bib][PDF] Abstract

[52] Axel Halin, Alexandre Nuttinck, Mathieu Acher, Xavier Devroey, Gilles Perrouin, and Patrick Heymans. Yo Variability! JHipster: A Playground for Web-Apps Analyses (2017). In 11th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS'17) [PDF] [bib][DOI] Abstract

[53] Paul Temple, Mathieu Acher, Jean-Marc A Jézéquel, Léo A Noel-Baron, and José A Galindo. Learning-Based Performance Specialization of Configurable Systems (2017). [PDF] [bib] Abstract

[54] Sana Ben Nasr, Guillaume Bécan, Mathieu Acher, João Bosco Ferreira Filho, Nicolas Sannier, Benoit Baudry, and Jean-Marc Davril. Automated Extraction of Product Comparison Matrices From Informal Product Descriptions (2017). In Journal of Systems and Software (JSS) published by Elsevier [PDF] [bib][DOI] Abstract

[55] João Bosco Ferreira Filho, Mathieu Acher, and Olivier Barais. Software Unbundling: Challenges and Perspectives (2016). In Trans. Modularity and Composition published by LNCS [PDF] [bib] Abstract

[56] Roberto Erick Lopez-Herrejon, Jabier Martinez, Tewfik Ziadi, and Mathieu Acher. Fourth international workshop on reverse variability engineering (REVE 2016) (2016). In Proceedings of the 20th International Systems and Software Product Line Conference, SPLC 2016, Beijing, China, September 16-23, 2016 [PDF] [bib][DOI]

[57] Gilles Perrouin, Moussa Amrani, Mathieu Acher, Benoit Combemale, Axel Legay, and Pierre-Yves Schobbens. Featured model types: Towards Systematic Reuse in Modelling Language Engineering (2016). In MiSE '16 - 8th International Workshop on Modeling in Software Engineering published by ACM [PDF] [bib][DOI] Abstract

[58] Jérome Le Noir, Sébastien Madelénat, Christophe Labreuche, Olivier Constant, Grégory Gailliard, Mathieu Acher, and Olivier Barais. A Decision-making Process for Exploring Architectural Variants in Systems Engineering (2016). In Software Product Lines Conference (SPLC) [PDF] [bib][DOI] Abstract

[59] Gilles Perrouin, Mathieu Acher, Jean-Marc Davril, Axel Legay, and Patrick Heymans. A Complexity Tale: Web Configurators (2016). In VACE 2016 - 1st International Workshop on Variability and Complexity in Software Design Pages (co-located with ICSE'16) [PDF] [bib][DOI] Abstract

[60] Paul Temple, José Angel Galindo Duarte, Mathieu Acher, and Jean-Marc Jézéquel. Using Machine Learning to Infer Constraints for Product Lines (2016). In Software Product Line Conference (SPLC'16) [PDF] [bib][DOI] Abstract

[61] José A. Galindo, Mathieu Acher, Juan Manuel Tirado, Cristian Vidal, Benoit Baudry, and David Benavides. Exploiting the Enumeration of All Feature Model Configurations: A New Perspective with Distributed Computing (2016). In Software Product Line Conference (SPLC'16) [PDF] [bib][slides] Abstract

[62] Mathieu Acher, and François Esnault. Large-scale Analysis of Chess Games with Chess Engines: A Preliminary Report (2016). [PDF] [bib] Abstract

[63] Jin Hyung Kim, Axel Legay, Louis-Marie Traonouez, Mathieu Acher, and Sungwon Kang. A Formal Modeling and Analysis Framework for Software Product Line of Preemptive Real-Time Systems (2016). In Sympsosium on Applied Computing (SAC'16), software engineering track [bib][PDF] Abstract

[64] Sophie Pinchinat, Mathieu Acher, and Didier Vojtisek. ATSyRa: An Integrated Environment for Synthesizing Attack Trees (2015). In Second International Workshop on Graphical Models for Security (GraMSec'15) co-located with CSF'15 [bib][PDF] Abstract

[65] Jean-Marc Davril, Maxime Cordy, Patrick Heymans, and Mathieu Acher. Using fuzzy modeling for consistent definitions of product qualities in requirements (2015). In IEEE Second International Workshop on Artificial Intelligence for Requirements Engineering (AIRE'15) [bib][PDF][DOI] Abstract

[66] Sana Ben Nasr, Guillaume Bécan, Mathieu Acher, Joao Bosco Ferreira Filho, Benoit Baudry, Nicolas Sannier, and Jean-Marc Davril. MatrixMiner: a red pill to architect informal product descriptions in the matrix (2015). In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering, (ESEC/FSE'15) [bib][PDF] Abstract

[67] Mathieu Acher, Guillaume Bécan, Benoit Combemale, Benoit Baudry, and Jean-Marc Jézéquel. Product lines can jeopardize their trade secrets (2015). In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering (ESEC/FSE'15) [bib][PDF][slides] Abstract

[68] Jean-Marc Davril, Mathieu Acher, Guillaume Bécan, and Patrick Heymans. Towards Breaking The Curse of Dimensionality in Reverse Engineering Feature Models (2015). In 17th International Configuration Workshop (ConfWS'15) [bib][PDF] Abstract

[69] Guillaume Bécan, Razieh Behjati, Arnaud Gotlieb, and Mathieu Acher. Synthesis of Attributed Feature Models From Product Descriptions (2015). In 19th International Software Product Line Conference (SPLC'15) [bib][PDF][slides] (research track, long paper) Abstract

[70] João Bosco Ferreira Filho, Simon Allier, Mathieu Acher, Olivier Barais, and Benoit Baudry. Assessing Product Line Derivation Operators Applied to Java Source Code: An Empirical Study (2015). In 19th International Software Product Line Conference (SPLC'15) [bib][PDF][slides] (research track, long paper) Abstract

[71] Roberto E. Lopez-Herrejon, Tewfik Ziadi, Jabier Martinez, Anil Kumar Thurimella, and Mathieu Acher. Third International Workshop on Reverse Variability Engineering (REVE 2015) (2015). In Proceedings of the 19th International Conference on Software Product Line, SPLC 2015, Nashville, TN, USA, July 20-24, 2015 [PDF] [bib][DOI]

[72] Thomas Degueule, João Bosco Ferreira Filho, Olivier Barais, Mathieu Acher, Jérôme Lenoir, Olivier Constant, Sebastien Madelenat, Gregory Gailliard, and Godefroy Burlot. Tooling Support for Variability and Architectural Patterns in Systems Engineering (2015). In 19th International Software Product Line Conference (SPLC'15) [bib][PDF] (demonstration and tool track) Abstract

[73] Mathieu Acher. Talk at Third International Workshop on Reverse Variability Engineering (REVE'15) (2015). In Proceedings of the 19th International Conference on Software Product Line (SPLC'15) [bib][slides] Abstract

[74] João Bosco Ferreira Filho, Mathieu Acher, and Olivier Barais. Challenges on Software Unbundling: Growing and Letting Go (2015). In 14th International Conference on Modularity'15 [PDF] [bib] Abstract

[75] Mathieu Acher, Roberto Erick Lopez-Herrejon, and Rick Rabiser. SPLTea 2015: Second International Workshop on Software Product Line Teaching (2015). In 19th International Software Product Line Conference (SPLC'15) [bib][PDF] Abstract

[76] Guillaume Bécan, Razieh Behjati, Arnaud Gotlieb, and Mathieu Acher. Synthesis of Attributed Feature Models From Product Descriptions: Foundations (2015). Research Report RR-8680 [PDF] [bib] Abstract

[77] Guillaume Bécan, Mathieu Acher, Jean-Marc Jézéquel, and Thomas Menguy. On the Variability Secrets of an Online Video Generator (2015). In Variability Modelling of Software-intensive Systems (VaMoS'15) [PDF] [bib][DOI] Abstract

[78] Guillaume Bécan, Mathieu Acher, Benoit Baudry, and Sana Ben Nasr. Breathing Ontological Knowledge Into Feature Model Synthesis: An Empirical Study (2016). In Empirical Software Engineering (ESE) published by Springer [PDF] [bib][DOI] Abstract

[79] Mathieu Acher, Benoit Combemale, and Philippe Collet. Metamorphic Domain-Specific Languages: A Journey Into the Shapes of a Language (2014). In Onward! Essays (co-located with SPLASH and OOPSLA) [PDF] [bib][DOI][slides] Abstract

[80] Sophie Pinchinat, Mathieu Acher, and Didier Vojtisek. Towards Synthesis of Attack Trees for Supporting Computer-Aided Risk Analysis (2014). In Workshop on Formal Methods in the Development of Software (co-located with SEFM) [PDF] [bib] Abstract

[81] Mauricio Alférez, José A. Galindo, Mathieu Acher, and Benoit Baudry. Modeling Variability in the Video Domain: Language and Experience Report (2014). Research Report RR-8576 [PDF] [bib] Abstract

[82] Guillaume Bécan, Nicolas Sannier, Mathieu Acher, Olivier Barais, Arnaud Blouin, and Benoit Baudry. Automating the Formalization of Product Comparison Matrices (2014). In 29th IEEE/ACM International Conference on Automated Software Engineering (ASE'14) [PDF] [bib][DOI][slides] Abstract

[83] Joao Bosco Ferreira Filho, Olivier Barais, Mathieu Acher, Jérôme Le Noir, Axel Legay, and Benoit Baudry. Generating Counterexamples of Model-based Software Product Lines (2014). In International Journal on Software Tools for Technology Transfer (STTT) published by Springer [PDF] [bib] Abstract

[84] Mathieu Acher, Benoit Baudry, Olivier Barais, and Jean-Marc Jézéquel. Customization and 3D Printing: A Challenging Playground for Software Product Lines (2014). In 18th International Software Product Line Conference (SPLC'14), research track [PDF] [bib][slides] Abstract

[85] Mathieu Acher, Olivier Barais, Benoit Baudry, Arnaud Blouin, Johann Bourcier, Benoit Combemale, Jean-Marc Jézéquel, and Noël Plouzeau. Software Diversity: Challenges to handle the imposed, Opportunities to harness the chosen (2014). In GDR GPL [PDF] [bib] Abstract

[86] Edoardo Vacchi, Walter Cazzola, Benoit Combemale, and Mathieu Acher. Automating Variability Model Inference for Component-Based Language Implementations (2014). In 18th International Software Product Line Conference (SPLC'14) published by ACM [PDF] [bib] Abstract

[87] Hamza Samih, Hélène Le Guen, Ralf Bogusch, Mathieu Acher, and Benoit Baudry. An Approach to Derive Usage Models Variants for Model-based Testing (2014). In 26th IFIP International Conference on Testing Software and Systems (ICTSS'2014) published by Springer [PDF] [bib] Abstract

[88] Dimitri Van Landuyt, Steven Op De Beeck, Aram Hovsepyan, Sam Michiels, Wouter Joosen, Sven Meynckens, Gjalt De Jong, Olivier Barais, and Mathieu Acher. Towards Managing Variability in the Safety Design of an Automotive Hall Effect Sensor (2014). In 18th International Software Product Line Conference (SPLC'14), industrial track [PDF] [bib] Abstract

[89] Sana Ben Nasr, Nicolas Sannier, Mathieu Acher, and Benoit Baudry. Moving Toward Product Line Engineering in a Nuclear Industry Consortium (2014). In 18th International Software Product Line Conference (SPLC'2014), industrial track [PDF] [bib] Abstract

[90] Mathieu Acher, Mauricio Alferez, José A. Galindo, Pierre Romenteau, and Benoit Baudry. ViViD: A Variability-Based Tool for Synthesizing Video Sequences (2014). In 18th International Software Product Line Conference (SPLC'14), tool track [PDF] [bib] Abstract

[91] Guillaume Bécan, Sana Ben Nasr, Mathieu Acher, and Benoit Baudry. WebFML: Synthesizing Feature Models Everywhere (2014). In 18th International Software Product Line Conference (SPLC'14), tool track [PDF] [bib][slides] Abstract

[92] Mathieu Acher, Roberto Erick Lopez-Herrejon, and Rick Rabiser. SPLTea 2014: First International Workshop on Software Product Line Teaching (2014). In 18th International Software Product Line Conference (SPLC'14) [PDF] [bib] Abstract

[93] Hamza Samih, Mathieu Acher, Ralf Bogusch, Hélène Le Guen, and Benoit Baudry. Deriving Usage Model Variants for Model-based Testing: An Industrial Case Study (2014). In 19th International Conference on Engineering of Complex Computer Systems (ICECCS'14) [PDF] [bib] Abstract

[94] Mathieu Acher, Philippe Collet, and Philippe Lahire. Software Architectures and Multiple Variability (2014) chapter book, in Software Architecture 2 (2014). published by Wiley [bib][PDF] Abstract

[95] José A. Galindo, Mauricio Alferez, Mathieu Acher, Benoit Baudry, and David Benavides. A Variability-based Testing Approach for Synthesizing Video Sequences (2014). In International Symposium on Software Testing and Analysis (ISSTA'14) acceptance rate: 28% [bib][PDF] Abstract

[96] Nicolas Sannier, Guillaume Bécan, Mathieu Acher, Sana Ben Nasr, and Benoit Baudry. Comparing or Configuring Products: Are We Getting the Right Ones? (2014). In 8th International Workshop on Variability Modelling of Software-intensive Systems (VaMoS'14) published by ACM acceptance rate: 38% [bib][PDF][slides] Abstract

[97] Uli Fahrenberg, Mathieu Acher, Axel Legay, and Andrzej Wasowski. Sound Merging and Differencing for Class Diagrams (2014). In 17th International Conference on Fundamental Approaches to Software Engineering (FASE'14) published by Springer acceptance rate: 23% [PDF] [bib] Abstract

[98] Guillaume Bécan, Mathieu Acher, Benoit Baudry, and Sana Ben Nasr. Breathing Ontological Knowledge Into Feature Model Management (2013). Technical Report RT-0441 [PDF] [bib] Abstract

[99] Mathieu Acher, Philippe Collet, and Philippe Lahire. Architectures logicielles et variabilité multiple (2014) chapter book, in Architectures logicielles et variabilité multiple (2014). published by Lavoisier [bib][PDF] Abstract

[100] Ebrahim Khalil Abbasi, Mathieu Acher, Patrick Heymans, and Anthony Cleve. Reverse Engineering Web Configurators (2014). In 17th European Conference on Software Maintenance and Reengineering (CSMR'14) acceptance rate: 31% [bib][PDF] Abstract

[101] Mathieu Acher, Roberto Erick Lopez-Herrejon, and Rick Rabiser. A Survey on Teaching of Software Product Lines (2014). In Eight International Workshop on Variability Modelling of Software-Intensive Systems (VaMoS'14) published by ACM [PDF] [bib][slides] Abstract

[102] Nicolas Sannier, Mathieu Acher, and Benoit Baudry. From Comparison Matrix to Variability Model: The Wikipedia Case Study (2013). In 28th IEEE/ACM International Conference on Automated Software Engineering (ASE'13) acceptance rate: 23% [PDF] [bib][slides] Abstract

[103] Marianela Ciolfi Felice, Joao Bosco Ferreira Filho, Mathieu Acher, Arnaud Blouin, and Olivier Barais. Interactive Visualisation of Products in Online Configurators: A Case Study for Variability Modelling Technologies (2013). In MAPLE/SCALE 2013 at SPLC 2013 Joint Workshop of MAPLE 2013 -- 5th International Workshop on Model-driven Approaches in Software Product Line Engineering and SCALE 2013 -- 4th Workshop on Scalable Modeling Techniques for Software Product Lines [bib][PDF] Abstract

[104] Mathieu Acher, Benoit Combemale, Philippe Collet, Olivier Barais, Philippe Lahire, and Robert B. France. Composing your Compositions of Variability Models (2013). In ACM/IEEE 16th International Conference on Model Driven Engineering Languages and Systems (MODELS'13) acceptance rate: 23% [bib][PDF] Abstract

[105] Philippe Collet, Philippe Lahire, Mathieu Acher, and Robert France. Feature Model Management: Smart Operations and Language Support (tutorial) (2013). In ACM/IEEE 16th International Conference on Model Driven Engineering Languages and Systems (MODELS'13) [PDF] [bib] Abstract

[106] Jean-Marc Davril, Edouard Delfosse, Negar Hariri, Mathieu Acher, Jane Cleland-Huang, and Patrick Heymans. Feature Model Extraction from Large Collections of Informal Product Descriptions (2013). In European Software Engineering Conference and the ACM SIGSOFT Symposium on the Foundations of Software Engineering (ESEC/FSE'13) acceptance rate: 20% [bib][PDF] Abstract

[107] João Bosco Ferreira Filho, Olivier Barais, Mathieu Acher, Jérôme Le Noir, and Benoit Baudry. Generating Counterexamples of Model-based Software Product Lines: An Exploratory Study (2013). In 17th International Conference on Software Product Lines (SPLC'13) acceptance rate: 33% [bib][PDF] Best Student Paper Award Abstract

[108] Mathieu Acher, Benoit Combemale, and Olivier Barais. Model-Based Variability Management (tutorial) (2013). In Three co-located international conferences ECOOP'13, ECMFA'13 and ECSA'13 [PDF] [bib][slides] Abstract

[109] Mathieu Acher, Anthony Cleve, Philippe Collet, Philippe Merle, Laurence Duchien, and Philippe Lahire. Extraction and Evolution of Architectural Variability Models in Plugin-based Systems (2013). In Software and Systems Modeling (SoSyM) [bib][PDF] Abstract

[110] Ebrahim Khalil Abbasi, Arnaud Hubaux, Mathieu Acher, Quentin Boucher, and Patrick Heymans. The Anatomy of a Sales Configurator: An Empirical Study of 111 Cases (2013). In 25th International Conference on Advanced Information Systems Engineering (CAiSE'13) acceptance rate: 16.6% [PDF] [bib] Abstract

[111] Mathieu Acher, Patrick Heymans, Anthony Cleve, Jean-Luc Hainaut, and Benoit Baudry. Support for Reverse Engineering and Maintaining Feature Models (2013). In Seventh International Workshop on Variability Modelling of Software-Intensive Systems (VaMoS'13) published by ACM acceptance rate: 42% [bib][PDF] Abstract

[112] 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][PDF][DOI] Abstract

[113] Arnaud Hubaux, Mathieu Acher, T. T. Tun, Patrick Heymans, Philippe Collet, and Philippe Lahire. Separating Concerns in Feature Models: Retrospective and Multi-View Support (2013) chapter book, in Domain Engineering: Product Lines, Conceptual Models, and Languages (editors: Reinhartz-Berger,I. and Sturm, A. and Clark, T. and Bettin, J. and Cohen, S.) (2013). published by Springer [bib][PDF] Abstract

[114] Mathieu Acher, Patrick Heymans, Philippe Collet, Clément Quinton, Philippe Lahire, and Philippe Merle. Feature Model Differences (2012). In 24th International Conference on Advanced Information Systems Engineering (CAiSE'12) published by Springer acceptance rate: 14% [PDF] [bib] Abstract

[115] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Separation of Concerns in Feature Modeling: Support and Applications (2012). In Aspect-Oriented Software Development (AOSD'12) published by ACM acceptance rate: 25% [PDF] [bib] Abstract

[116] Mathieu Acher, Philippe Collet, Alban Gaignard, Philippe Lahire, Johan Montagnat, and Robert France. Composing Multiple Variability Artifacts to Assemble Coherent Workflows (2012). In Software Quality Journal Special issue on Quality Engineering for Software Product Lines [PDF] [bib] Abstract

[117] Mathieu Acher, Raphaël Michel, and Patrick Heymans. Next-Generation Model-based Variability Management: Languages and Tools (2012). In ACM 16th International Software Product Line Conference (SPLC’12) [bib][PDF]

[118] Mathieu Acher, Patrick Heymans, Philippe Collet, and Philippe Lahire. Next-Generation Model-based Variability Management: Languages and Tools (tutorial) (2012). In ACM/IEEE 15th International Conference on Model Driven Engineering Languages \& Systems (MODELS'2012) [PDF] [bib] Abstract

[119] Mathieu Acher, Raphaël Michel, and Patrick Heymans. Next-Generation Model-based Variability Management: Languages and Tools (Tutorial) (2012). In Conf\'erence en Ing\'enieriE du Logiciel (CIEL'12) [bib]

[120] Sabine Moisan, Jean-Paul Rigault, and Mathieu Acher. A Feature-based Approach to System Deployment and Adaptation (2012). In Proceedings of the 2012 international workshop on Modeling in software engineering at ICSE 2012 (MiSE'12) published by IEEE acceptance rate: 41% [bib][PDF]

[121] Quentin Boucher, Ebrahim Abbasi, Arnaud Hubaux, Gilles Perrouin, Mathieu Acher, and Patrick Heymans. Towards More Reliable Configurators: A Re-engineering Perspective (2012). In Third International Workshop on Product LinE Approaches in Software Engineering at ICSE 2012 (PLEASE'12) acceptance rate: 57% [bib][PDF] Abstract

[122] Mathieu Acher, Raphaël Michel, Patrick Heymans, Philippe Collet, and Philippe Lahire. Languages and Tools for Managing Feature Models (2012). In Third International Workshop on Product LinE Approaches in Software Engineering at ICSE 2012 (PLEASE'12) acceptance rate: 57% [bib][PDF]

[123] Jérôme Le Noir, Olivier Barais, Joao Bosco Ferreira Filho, Mathieu Acher, and Jean-Marc Jézéquel. Modelling variability using CVL; A step by step tutorial (2012). In Journ\'ee Lignes de Produits [bib]

[124] Mathieu Acher, Anthony Cleve, Gilles Perrouin, Patrick Heymans, Philippe Collet, Philippe Lahire, and Charles Vanbeneden. On Extracting Feature Models From Product Descriptions (2012). In Sixth International Workshop on Variability Modelling of Software-intensive Systems (VaMoS'12) published by ACM acceptance rate: 51% [PDF] [bib] Abstract

[125] Mathieu Acher, Anthony Cleve, Philippe Collet, Philippe Merle, Laurence Duchien, and Philippe Lahire. Reverse Engineering Architectural Feature Models (2011). In 5th European Conference on Software Architecture (ECSA'11), long paper published by Springer acceptance rate: 25% [bib][PDF][slides] Abstract

[126] Mathieu Acher. Managing Multiple Feature Models: Foundations, Language, and Applications (2011). [bib][slides]

[127] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Decomposing Feature Models: Language, Environment, and Applications (2011). In Automated Software Engineering (ASE'11), short paper: demonstration track published by IEEE/ACM [PDF] [bib][DOI][slides] Abstract

[128] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Slicing Feature Models (2011). In 26th IEEE/ACM International Conference On Automated Software Engineering (ASE'11), short paper published by IEEE/ACM [PDF] [bib][DOI][slides] Abstract

[129] Sabine Moisan, Jean-Paul Rigault, Mathieu Acher, Philippe Collet, and Philippe Lahire. Run Time Adaptation of Video-Surveillance Systems: A Software Modeling Approach (2011). In 8th International Conference on Computer Vision Systems (ICVS'2011) published by Springer Verlag [bib][PDF]

[130] Mathieu Acher, Philippe Collet, Philippe Lahire, Sabine Moisan, and Jean-Paul Rigault. Modeling Variability from Requirements to Runtime (2011). In 16th International Conference on Engineering of Complex Computer Systems (ICECCS'11) published by IEEE acceptance rate: 31% [bib][PDF]

[131] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Managing Feature Models with FAMILIAR: a Demonstration of the Language and its Tool Support (2011). In Fifth International Workshop on Variability Modelling of Software-intensive Systems (VaMoS'11) published by ACM acceptance rate: 55% [bib]

[132] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. A Domain-Specific Language for Managing Feature Models (2011). In Symposium on Applied Computing (SAC'11) published by ACM acceptance rate: 33% [PDF] [bib] Abstract

[133] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. FAMILIAR, a Language and its Environment for Feature Model Management (2010). In Journ\'ee Lignes de Produits. Ma\^\itriser la Diversit\'e [bib]

[134] Martin Fagereng Johansen, Franck Fleurey, Mathieu Acher, Philippe Collet, and Philippe Lahire. Exploring the Synergies Between Feature Models and Ontologies (2010). In International Workshop on Model-driven Approaches in Software Product Line Engineering (MAPLE 2010) published by Lancaster University [PDF] [bib] Abstract

[135] Mathieu Acher, Philippe Collet, Franck Fleurey, Philippe Lahire, Sabine Moisan, and Jean-Paul Rigault. Modeling Context and Dynamic Adaptations with Feature Models (2009). [PDF] [bib] (MRT'09, poster)

[136] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. FAMILIAR (FeAture Model scrIpt Language for manIpulation and Automatic Reasoning): https://nyx.unice.fr/projects/familiar/ (2011). [bib]

[137] Mathieu Acher, Anthony Cleve, Philippe Collet, Philippe Merle, Laurence Duchien, and Philippe Lahire. Reverse Engineering Architectural Feature Models (2011). In 10th Belgian-Netherlands Seminar on Software Evolution (BENEVOL) [PDF] [bib][slides] (BENEVOL'11)

[138] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Managing Multiple Software Product Lines Using Merging Techniques (2010). [PDF] [bib] Abstract

[139] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Managing Variability in Worklow with Feature Model Composition Operators (2010). In 9th International Conference on Software Composition (SC'10) published by Springer acceptance rate: 28% [bib][PDF][slides] Abstract

[140] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Comparing Approaches to Implement Feature Model Composition (2010). In 6th European Conference on Modelling Foundations and Applications (ECMFA) published by Springer acceptance rate: 31% [bib][PDF][slides] Abstract

[141] Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Composing Feature Models (2009). In 2nd International Conference on Software Language Engineering (SLE'09) published by LNCS acceptance rate: 19% [bib][PDF][slides] Most Influential Paper Award at SLE 2019 Abstract

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

[143] Mathieu Acher, Philippe Lahire, Sabine Moisan, and Jean-Paul Rigault. Tackling High Variability in Video Surveillance Systems through a Model Transformation Approach (2009). In MiSE '09: Proceedings of the 2009 international workshop on Modeling in software engineering at ICSE 2009 (MiSE'09) [bib][PDF] Abstract

[144] Mathieu Acher, Philippe Collet, Philippe Lahire, and Johan Montagnat. Imaging Services on the Grid as a Product Line: Requirements and Architecture (2008). In Service-Oriented Architectures and Software Product Lines - Putting Both Together (SOAPL'08) published by IEEE Computer Society [bib][PDF] Abstract

[145] Mathieu Acher, Philippe Collet, and Philippe Lahire. Issues in Managing Variability of Medical Imaging Grid Services (2008). In MICCAI-Grid Workshop (MICCAI-Grid) [bib][PDF] Abstract

[146] Mathieu Acher. Vers une ligne de services pour la grille: application \`a l’imagerie m\'edicale (2008). [PDF] [bib]

[147] Mathieu Acher, and Vincent Aranega. Un compte rendu de la conf\'erence Models 2008 (Toulouse, France) (2008). [PDF] [bib]

PhD thesis

I completed my PhD thesis, entitled "Managing Multiple Feature Models: Foundations, Language, and Applications", at University of Nice Sophia Antipolis, working in the Modalis team (formerly Rainbow team), a research group of the I3S laboratory, under the supervision of Philippe Collet (Assistant Professor) and Philippe Lahire (Professor). The PhD committee was as follows:

You can download the manuscript in pdf, have a look at the list of publications, or simply read the abstract below.

Feature models (FMs) are a fundamental formalism for specifying and reasoning about commonality and variability of software product lines (SPLs). FMs are becoming increasingly complex, handled by several stakeholders or organizations, used to describe features at various levels of abstraction and related in a variety of ways. In different contexts and application domains, maintaining a single large FM is neither feasible nor desirable. Instead, multiple FMs are now used. In this thesis, we develop theoretical foundations and practical support for managing multiple FMs. We design and develop a set of composition and decomposition operators (aggregate, merge, slice) for supporting separation of concerns. The operators are formally defined, implemented with a fully automated algorithm and guarantee properties in terms of sets of configurations. We show how the composition and decomposition operators can be combined together or with other reasoning and editing operators to realize complex tasks. We propose a textual language, FAMILIAR (for FeAture Model scrIpt Language for manIpulation and Automatic Reasoning), which provides a practical solution for managing FMs on a large scale. An SPL practitioner can combine the different operators and manipulate a restricted set of concepts (FMs, features, configurations, etc.) using a concise notation and language facilities. FAMILIAR hides implementation details (e.g., solvers) and comes with a development environment. We report various applications of the operators and usages of FAMILIAR in different domains (medical imaging, video surveillance) and for different purposes (scientific workflow design, variability modeling from requirements to runtime, reverse engineering), showing the applicability of both the operators and the supporting language. Without the new capabilities brought by the operators and FAMILIAR, some analysis and reasoning operations would not be made possible in the different case studies.

HDR (Habilitation à Diriger des Recherches)

I defended my HDR thesis, entitled "Modelling, Reverse Engineering, and Learning Software Variability", at University of Rennes 1. The HDR committee was as follows:

You can download the manuscript in pdf, have a look at the list of publications, watch the Youtube video or simply read the abstract below.
Society expects software to deliver the right functionality, in a short amount of time and with fewer resources, in every possible circumstance whatever are the hardware, the operating systems, the compilers, or the data fed as input. For fitting such a diversity of needs, it is common that software comes in many variants and is highly configurable through configuration options, runtime parameters, conditional compilation directives, menu preferences, configuration files, plugins, etc. As there is no one-size-fits-all solution, software variability ("the ability of a software system or artifact to be efficiently extended, changed, customized or configured for use in a particular context") has been studied the last two decades and is a discipline of its own. Though highly desirable, software variability also introduces an enormous complexity due to the combinatorial explosion of possible variants. For example, the Linux kernel has 15000+ options and most of them can have 3 values: "yes", "no", or "module". Variability is challenging for maintaining, verifying, and configuring software systems (Web applications, Web browsers, video tools, etc.). It is also a source of opportunities to better understand a domain, create reusable artefacts, deploy performance-wise optimal systems, or find specialized solutions to many kinds of problems. In many scenarios, a model of variability is either beneficial or mandatory to explore, observe, and reason about the space of possible variants. For instance, without a variability model, it is impossible to establish a sampling strategy that would satisfy the constraints among options and meet coverage or testing criteria. I address a central question in this HDR manuscript: How to model software variability? I detail several contributions related to modelling, reverse engineering, and learning software variability.

I first contribute to support the persons in charge of manually specifying feature models, the de facto standard for modeling variability. I develop an algebra together with a language for supporting the composition, decomposition, diff, refactoring, and reasoning of feature models. I further establish the syntactic and semantic relationships between feature models and product comparison matrices, a large class of tabular data. I then empirically investigate how these feature models can be used to test in the large configurable systems with different sampling strategies. Along with this effort, I report on the attempts and lessons learned when defining the "right" variability language. From a reverse engineering perspective, I contribute to synthesize variability information into models and from various kinds of artefacts. I develop foundations and methods for reverse engineering feature models from satisfiability formulae, product comparison matrices, dependencies files and architectural information, and from Web configurators. I also report on the degree of automation and show that the involvement of developers and domain experts is beneficial to obtain high-quality models. Thirdly, I contribute to learning constraints and non-functional properties (performance) of a variability-intensive system. I describe a systematic process "sampling, measuring, learning" that aims to enforce or augment a variability model, capturing variability knowledge that domain experts can hardly express. I show that supervised, statistical machine learning can be used to synthesize rules or build prediction models in an accurate and interpretable way. This process can even be applied to huge configuration space, such as the Linux kernel one.

Despite wide applicability and observed benefits, I show that each individual line of contributions has limitations. I defend the following answer: a supervised, iterative process (1) based on the combination of reverse engineering, modelling, and learning techniques; (2) capable of integrating multiple variability information (eg expert knowledge, legacy artefacts, dynamic observations).

Finally, this work opens different perspectives related to so-called deep software variability, security, smart build of configurations, and (threats to) science.

Chess

I am playing chess since I am 8 years old. I discovered this fantastic game (sport?) by happenstance in my born city. I quickly moved to Cannes chess club at 11 years old, gaining the opportunity to be trained by famous international grand masters. I have a sort of "record" and I am proud of it!

At the moment, I am not playing chess at a high level (no time?), but I am always ready to play a blitz online (e.g., on internet chess club or playchess). You can consult some of my games online. I suggest the following three games: a win against Santo Roman in first french chess league (France, 2000), a win against Zhigalko in World youth chess championship (Greece, 2002) and a draw against Vachier-Lagrave in first french chess league (France, 2007).

I am also very interested by developing software for chess. I have a lot of ideas, I hope to have time to do that in the future or simply supervise software projects related to chess!

News: publication of Large-scale Analysis of Chess Games with Chess Engines: A Preliminary Report as part of an internship during summer 2015 with François Esnault. We have analyzed almost 5 millions chess games with a computing grid, have processed 270 millions unique played positions using the Stockfish engine with a quite high depth (20). Now we have a database of 1+ tera-octets of chess evaluations and we are exploring different directions (rating, depth, blunders, etc.). Do not hesitate to contact me if you are interested to talk about it!

News: I was involved in a video and an article about AlphaZero (in french):

Contact

You can reach me using different alternatives: