268 research outputs found
Analysis of Feature Models using Generalised Feature Trees
This paper introduces the concept of generalised feature trees, which are feature trees where features can have multiple occurrences. It is shown how an important class of feature models can be transformed into generalised feature trees. We present algorithms which, after transforming a feature model to a generalised feature tree, compute properties of the corresponding software product line. We discuss the computational complexity of these algorithms and provide executable specifications in the functional programming language Miranda
Automated analysis of feature models: challenges ahead
Ministerio de Ciencia y Tecnología TIC 2003-02737-C02-01Ministerio de Ciencia y Tecnología TIN2006-0047
Towards correct-by-construction product variants of a software product line: GFML, a formal language for feature modules
Software Product Line Engineering (SPLE) is a software engineering paradigm
that focuses on reuse and variability. Although feature-oriented programming
(FOP) can implement software product line efficiently, we still need a method
to generate and prove correctness of all product variants more efficiently and
automatically. In this context, we propose to manipulate feature modules which
contain three kinds of artifacts: specification, code and correctness proof. We
depict a methodology and a platform that help the user to automatically produce
correct-by-construction product variants from the related feature modules. As a
first step of this project, we begin by proposing a language, GFML, allowing
the developer to write such feature modules. This language is designed so that
the artifacts can be easily reused and composed. GFML files contain the
different artifacts mentioned above.The idea is to compile them into FoCaLiZe,
a language for specification, implementation and formal proof with some
object-oriented flavor. In this paper, we define and illustrate this language.
We also introduce a way to compose the feature modules on some examples.Comment: In Proceedings FMSPLE 2015, arXiv:1504.0301
How to Complete an Interactive Configuration Process?
When configuring customizable software, it is useful to provide interactive
tool-support that ensures that the configuration does not breach given
constraints.
But, when is a configuration complete and how can the tool help the user to
complete it?
We formalize this problem and relate it to concepts from non-monotonic
reasoning well researched in Artificial Intelligence. The results are
interesting for both practitioners and theoreticians. Practitioners will find a
technique facilitating an interactive configuration process and experiments
supporting feasibility of the approach. Theoreticians will find links between
well-known formal concepts and a concrete practical application.Comment: to appear in SOFSEM 201
A First Step Towards a Framework for the Automated Analysis of Feature Models
Feature modelling is a common mechanism for variability management in the context of software product lines. After years of progress, the number of proposals to automatically analyse feature models is still modest and the data about the performance of the different solvers and logic representations used in such area are practically non–existent. Three of the most promising proposals for the automated analysis of feature models are based on the mapping of feature models into CSP, SAT and BDD solvers. in this paper we present a performance test between three off-the-shelf Java CSP, SAT and BDD solvers to analyse feature models which is a novel contribution. in addition, we conclude that the integration of such proposals in a framework will be a key challenge in the future
On the structure of problem variability: From feature diagrams to problem frames
Requirements for product families are expressed in terms of commonality and variability. This distinction allows early identification of an appropriate software architecture and opportunities for software reuse. Feature diagrams provide intuitive notations and techniques for representing requirements in product line development. In this paper, we observe that feature diagrams tend to obfuscate three important descriptions: requirements, domain properties and specifications. As a result, feature diagrams do not adequately capture the problem structures that underlie variability, and inform the solution structures of their complexity. With its emphasis on separation of the three descriptions, the problem frames approach provides a conceptual framework for a more detailed analysis of variability and its structure. With illustrations from an example, we demonstrate how problem frames analysis of variability can augment feature diagrams
Using Java Csp Solvers in the Automated Analyses of Feature Models
Feature Models are used in different stages of software development and are recognized to be an important asset in model transformation techniques and software product line development. The automated analysis of feature models is being recognized as one of the key challenges for automated software development in the context of Software Product Lines. in our previous work we explained how a feature model can be transformed into a constraint satisfaction problem. However cardinalities were not considered. in this paper we present how a cardinality-based feature model can be also translated into a constraint satisfaction problem. in that connection, it is possible to use off-the-shelf tools to automatically accomplish several tasks such as calculating the number of possible feature configurations and detecting possible conflicts. in addition, we present a performance test between two off-the-shelf Java constraint solvers. To the best of our knowledge, this is the first time a performance test is presented using solvers for feature modelling proposesMinisterio de Educación y Ciencia TIC2003-02737-C02-0
- …