Publications
(See also here, DBLP, Google Scholar, academia,
HAL
, or researchr. Send me an email for further information!) 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][HAL] Abstract
Nowadays, mass customization has been embraced by a large portion of the industry. As a result, the web abounds with sales config- urators that help customers tailor all kinds of goods and services to their specific needs. In many cases, configurators have become the sin- gle entry point for placing customer orders. As such, they are strategic components of companies' information systems and must meet stringent reliability, usability and evolvability requirements. However, the state of the art lacks guidelines and tools for efficiently engineering web sales configurators. To tackle this problem, empirical data on current practice is required. The first part of this paper reports on a systematic study of 111 web sales configurators along three essential dimensions: rendering of configuration options, constraint handling, and configuration process support. Based on this, the second part highlights good and bad prac- tices in engineering web sales configurator. The reported quantitative and qualitative results open avenues for the elaboration of methodolo- gies to (re-)engineer web sales configurators.
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][HAL] Abstract
Feature Models (FMs) are a popular formalism for modelling and reasoning about commonality and variability of a system. In essence, FMs aim to define a set of valid combinations of features, also called configurations. In this paper, we tackle the problem of synthesising an FM from a set of configurations. The main challenge is that numerous candidate FMs can be extracted from the same input configurations, yet only a few of them are meaningful and maintainable. We first characterise the different meanings of FMs and identify the key properties allowing to discriminate between them. We then develop a generic synthesis procedure capable of restituting the intended meanings of FMs based on inferred or user-specified knowledge. Using tool support, we show how the integration of knowledge into FM synthesis can be realized in different practical application scenarios that involve reverse engineering and maintaining FMs.
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
The feature model formalism has become the de facto standard for managing variability in software product lines (SPLs). In practice, developing an SPL can involve modeling a large number of features representing di erent viewpoints, sub-systems or concerns of the software system. This activity is generally tedious and error-prone. In this article, we present FAMILIAR a Domain-Specific Language (DSL) that is dedicated to the large scale management of feature models and that complements existing tool support. The language provides a powerful support for separating concerns in feature modeling, through the provision of composition and decomposition operators, reasoning facilities and scripting capabilities with modularization mechanisms. We illustrate how an SPL consisting of medical imaging services can be practically managed using reusable FAMILIAR scripts that implement reasoning mechanisms. We also report on various usages and applications of FAMILIAR and its operators, to demonstrate their applicability to di erent domains and use for di erent purposes.
(in press)
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) 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][HAL] Abstract
Feature models (FMs) are a popular formalism to describe the commonality and variability of a set of assets in a software product line (SPL). SPLs usually involve large and complex FMs that describe thousands of features whose legal combinations are governed by many and often complex rules. The size and complexity of these models is partly explained by the large number of concerns considered by SPL practitioners when managing and configuring FMs. In this chapter, we first survey concerns and their separation in FMs, highlighting the need for more modular and scalable techniques. We then revisit the concept of view as a simplified representation of an FM. We finally describe a set of techniques to specify, visualize and verify the coverage of a set of views. These techniques are implemented in complementary tools providing practical support for feature-based configuration and large scale management of FMs.
(in press)
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][HAL] Abstract
Feature models are a widespread means to represent commonality and variability in software product lines. As is the case for other kinds of models, computing and managing feature model differences is useful in various real-world situations. In this paper, we propose a set of novel differencing techniques that combine syntactic and semantic mechanisms, and automatically produce meaningful differences. Practitioners can exploit our results in various ways: to understand, manipulate, visualize and reason about differences. They can also combine them with existing feature model composition and decomposition operators. The proposed automations rely on satisfiability algorithms. They come with a dedicated language and a comprehensive environment. We illustrate and evaluate the practical usage of our techniques through a case study dealing with a configurable component framework.
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][HAL] Abstract
Feature models (FMs) are a popular formalism for describing the commonality and variability of software product lines (SPLs) in terms of features. SPL development increasingly involves manipulating many large FMs, and thus scalable modular techniques that support compositional development of complex SPLs are required. In this paper, we describe how a set of complementary operators (aggregate, merge, slice) provides practical support for separation of concerns in feature modeling. We show how the combination of these operators can assist in tedious and error prone tasks such as automated correction of FM anomalies, update and extraction of FM views, reconciliation of FMs and reasoning about properties of FMs. For each task, we report on practical applications in different domains. We also present a technique that can efficiently decompose FMs with thousands of features and report our experimental results.
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][HAL] Abstract
The development of scientific workflows is evolving towards the systematic use of service oriented architectures, enabling the composition of dedicated and highly parameterized software services into processing pipelines. Building consistent workflows then becomes a cumbersome and error-prone activity as users cannot manage such large scale variability. This paper presents a rigorous and tooled approach in which techniques from Software Product Line (SPL) engineering are reused and extended to manage variability in service and workflow descriptions. Composition can be facilitated while ensuring consistency. Services are organized in a rich catalog which is organized as a SPL and structured according to the common and variable concerns captured for all services. By relying on sound merging techniques on the feature models that make up the catalog, reasoning about the compatibility between connected services is made possible. Moreover, an entire workflow is then seen as a multiple SPL (i.e., a composition of several SPLs). When services are configured within, the propagation of variability choices is then automated with appropriate techniques and the user is assisted in obtaining a consistent workflow. The approach proposed is completely supported by a combination of dedicated tools and languages. Illustrations and experimental validations are provided using medical imaging pipelines, which are representative of current scientific workflows in many domains.
Mathieu Acher, Raphaël Michel, and Patrick Heymans. Next-Generation Model-based Variability Management: Languages and Tools (2012). In 16th International Software Product Line Conference (SPLC’12) [bib]
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][HAL] Abstract
Variability modelling and management is a key activity in a growing number of software engineering contexts, from software product lines to dynamic adaptive systems. Feature models are the defacto standard to formally represent and reason about commonality and variability of a software system. This tutorial aims at presenting next generation of feature modelling languages and tools, directly applicable to a wide range of model-based variability problems and application domains. Participants (being practitioners or academics, beginners or advanced) will learn the principles and foundations of languages and tool-supported techniques dedicated to the model-based management of variability.
Mathieu Acher, Raphaël Michel, and Patrick Heymans. Next-Generation Model-based Variability Management: Languages and Tools (Tutorial) (2012). In Conf{\'e}rence en Ing{\'e}nieriE du Logiciel (CIEL'12) [bib]
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]
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][HAL] Abstract
Delivering configurable solutions, that is products tailored to the requirements of a particular customer, is a priority of most B2B and B2C markets. These markets now heavily rely on interactive configurators that help customers build complete and correct products. Reliability is thus a critical requirement for configurators. Yet, our experience in industry reveals that many configurators are developed in an ad hoc manner, raising correctness and maintenance issues. In this paper, we present a vision to re-engineering more reliable configurators and the challenges it poses. The first challenge is to reverse engineer from an existing configurator the variability information, including complex rules, and to consolidate it in a variability model, namely a feature model. The second challenge is to forward engineer a new configurator that uses the feature model to generate a customized graphical user interface and the underlying reasoning engine.
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]
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
In product line engineering, domain analysis is the process of analyzing related products to identify their common and variable features. This process is generally carried out by experts on the basis of existing product descriptions, which are expressed in a more or less structured way. Modeling and reasoning about product descriptions are error-prone and time consuming tasks. Feature models (FMs) consti- tute popular means to specify product commonalities and variabilities in a compact way, and to provide automated support to the domain analysis process. This paper aims at easing the transition from product descriptions expressed in a tabular format to FMs accurately representing them. This process is parameterized through a dedicated language and high-level directives (e.g., products/features scoping). We guarantee that the resulting FM represents the set of legal feature combinations supported by the considered products and has a readable tree hierarchy together with variability information. We report on our experiments based on public data and characterize the properties of the derived FMs.
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][HAL] Abstract
Reverse engineering the variability of an existing system is a challenging activity. The architect knowledge is essential to identify variation points and explicit constraints between features, for instance in feature models (FMs), but the manual creation of FMs is both time-consuming and error-prone. On a large scale, it is very difficult for an architect to guarantee that the resulting FM ensures a safe composition of the architectural elements when some features are selected. In this paper, we present a comprehensive, tool supported process for reverse engineering architectural FMs. We develop automated techniques to extract and combine different variability descriptions of an architecture. Then, alignment and reasoning techniques are applied to integrate the architect knowledge and reinforce the extracted FM. We illustrate the reverse engineering process when applied to a representative software system, FraSCAti, and we report on our experience in this context.
Mathieu Acher. Managing Multiple Feature Models: Foundations, Language, and Applications (2011). [bib]
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 [bib] Abstract
Variability in software product lines is often expressed through feature models (FMs). To handle the complexity of increasingly larger FMs, we propose semantically meaningful decomposition support through a slicing operator. We describe how the slicing operator is integrated into the FAMILIAR environment and how it can be combined with other operators to support complex tasks over FMs in different case studies.
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 [bib] Abstract
Feature models (FMs) are a popular formalism for describing the commonality and variability of software product lines (SPLs) in terms of features. As SPL development increasingly involves numerous large FMs, scalable modular techniques are required to manage their complexity. In this paper, we present a novel slicing technique that produces a projection of an FM, including constraints. The slicing allows SPL practitioners to find semantically meaningful decompositions of FMs and has been integrated into the FAMILIAR language.
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]
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]
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]
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
Feature models are a popular formalism for managing variability in software product lines (SPLs). In practice, developing an SPL can involve modeling a large number of features representing different viewpoints, sub-systems or concerns of the software system. To manage complexity, there is a need to separate, relate and compose several feature models while automating the reasoning on their compositions in order to enable rigorous SPL validation and configuration. In this paper, we propose a Domain-Specific Language (DSL) that is dedicated to the management of feature models and that complements existing tool support. Rationale for this language is discussed and its main constructs are presented through examples. We show how the DSL can be used to realize a non trivial scenario in which multiple SPLs are managed.
Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. FAMILIAR, a Language and its Environment for Feature Model Management (2010). In Journ{\'e}e Lignes de Produits. Ma{\^\i}triser la Diversit{\'e} [bib]
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 Lancester University [bib] Abstract
A factor slowing down the use of feature models is that either the concepts or the relations expressed in a feature model are not defined at all, or defined in an unsatisfactory manner; feature models are sometimes too vague to be analyzed by a reasoning tool. It is thus difficult to determine if the features in a feature model are arranged and structured consistently with domain knowledge and if they are accurately expressed, organized and represented. Ontology modeling can improve feature modeling by providing additional information relevant for the domain in which a feature model is constructed. Finding synergies between feature models and ontologies will aid an SPL engineer in accurately expressing, organizing and representing features in their feature models. In this paper, we look at potential benefits in using the two modeling formalisms together, we identify issues and challenges considering the gap between the two formalisms and discuss the importance of this gap. We report on our current ideas and results.
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] (poster)
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]
Mathieu Acher, Anthony Cleve, Philippe Collet, Philippe Merle, Laurence Duchien, and Philippe Lahire. Reverse Engineering Architectural Feature Models (2011). [PDF] [bib]
Mathieu Acher, Philippe Collet, Philippe Lahire, and Robert France. Managing Multiple Software Product Lines Using Merging Techniques (2010). [PDF] [bib] Abstract
A growing number of organizations produce and maintain multiple Software Product Lines (SPLs) or design software products that utilize features in SPLs maintained by competing suppliers. Manually building monolithic Feature Models (FMs) to help manage features described across different SPLs is error-prone and tedious and the resulting FMs can be difficult to understand and use. In this paper we propose a compositional approach to managing multiple SPLs that involves automatically merging FMs defined across the SPLs. We illustrate how the approach can be used to create FMs that support selection of products from among sets of competing products provided by different companies or suppliers. The merging techniques can also manage features from different SPLs which are then combined to form products. We show that the proposed approach results in more compact FMs, and we provide some empirical results on the complexity and scalability of the composition operators used in the approach.
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] Abstract
In grid-based scientific applications, building a workflow essentially involves composing parameterized services describing families of services and then configuring the resulting workflow product line. In domains (e.g., medical imaging) in which many different kinds of highly parameterized services exist, there is a strong need to manage variabilities so that scientists can more easily configure and compose services with consistency guarantees. In this paper, we propose an approach in which variable points in services are described with several separate feature models, so that families of workflow can be defined as compositions of feature models. A compositional technique then allows reasoning about the compatibility between connected services to ensure consistency of an entire workflow, while supporting automatic propagation of variability choices when configuring services.
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] Abstract
The use of Feature Models (FMs) to define the valid combinations of features in Software Product Lines (SPL) is becoming commonplace. To enhance the scalability of FMs, support for composing FMs describing different SPL aspects is needed. Some composition operators, with interesting property preservation capabilities, have already been defined but a comprehensive and efficient implementation is still to be proposed. In this paper, we systematically compare strengths and weaknesses of different implementation approaches. The study provides some evidence that using generic model composition frameworks are not helping much in the realization, whereas a specific solution is finally necessary and clearly stands out by its qualities.
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] Abstract
Feature modeling is a widely used technique in Software Product Line development. Feature models allow stakeholders to describe domain concepts in terms of commonalities and differences within a family of software systems. Developing a complex monolithic feature model can require significant effort and restrict the reusability of a set of features already modeled. We advocate using modeling techniques that support separating and composing concerns to better manage the complexity of developing large feature models. In this paper, we propose a set of composition operators dedicated to feature models. These composition operators enable the development of large feature models by composing smaller feature models which address well-defined concerns. The operators are notably distinguished by their documented capabilities to preserve some significant properties.
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) [PDF] [bib] Abstract
Self-adaptive and dynamic systems adapt their behavior according to the context of execution. The contextual information exhibits multiple variability factors which induce many possible configurations of the software system at runtime. The challenge is to specify the adaptation rules that can link the dynamic variability of the context with the possible variants of the system. Our work investigates the systematic use of feature models for modeling the context and the software variants, together with their inter relations, as a way to configure the adaptive system with respect to a particular context. A case study in the domain of video surveillance systems is used to illustrate the approach.
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) [PDF] [bib] Abstract
This work explores how model-driven engineering techniques can support the configuration of systems in domains presenting multiple variability factors. Video surveillance is a good candidate for which we have an extensive experience. Ultimately, we wish to automatically generate a software component assembly from an application specification, using model to model transformations. The challenge is to cope with variability both at the specification and at the implementation levels. Our approach advocates a clear separation of concerns. More precisely, we propose two feature models, one for task specification and the other for software components. The first model can be transformed into one or several valid component configurations through step-wise specialization. This paper outlines our approach, focusing on the two feature models and their relations. We particularly insist on variability and constraint modeling in order to achieve the mapping from domain variability to software variability through model transformations.
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 [PDF] [bib] Abstract
SOA is now the reference architecture for medical imaging processing on the grid. Imaging services must be composed in workflows to implement the processing chains, but the need to handle end-to-end qualities of service hampered both the provision of services and their composition. This paper analyses the variability of functional and non functional aspects of this domain and proposes a first architecture in which services are organized within a product line architecture and metamodels help in structuring necessary information.
Mathieu Acher, Philippe Collet, and Philippe Lahire. Issues in Managing Variability of Medical Imaging Grid Services (2008). In MICCAI-Grid Workshop (MICCAI-Grid) [PDF] [bib] Abstract
In medical image analysis, there exist multifold applications to grids and service-oriented architectures are more and more used to implement such imaging applications. In this context, workflow and service architects have to face an important variability problem related both to the functional description of services, and to the numerous quality of service (QoS) dimensions that are to be considered. In this paper, we analyze such variability issues and establish the requirements of a service product line, which objective is to facilitate variability handling in the image processing chain.
Mathieu Acher. Vers une ligne de services pour la grille: application \`a l’imagerie m\'edicale (2008). [PDF] [bib]
Mathieu Acher, and Vincent Aranega. Un compte rendu de la conf\'erence Models 2008 (Toulouse, France) (2008). [PDF] [bib]