26,952 research outputs found
Automated analysis of feature models: Quo vadis?
Feature models have been used since the 90's to describe software product lines as a way of reusing common parts in a family of software systems. In 2010, a systematic literature review was published summarizing the advances and settling the basis of the area of Automated Analysis of Feature Models (AAFM). From then on, different studies have applied the AAFM in different domains. In this paper, we provide an overview of the evolution of this field since 2010 by performing a systematic mapping study considering 423 primary sources. We found six different variability facets where the AAFM is being applied that define the tendencies: product configuration and derivation; testing and evolution; reverse engineering; multi-model variability-analysis; variability modelling and variability-intensive systems. We also confirmed that there is a lack of industrial evidence in most of the cases. Finally, we present where and when the papers have been published and who are the authors and institutions that are contributing to the field. We observed that the maturity is proven by the increment in the number of journals published along the years as well as the diversity of conferences and workshops where papers are published. We also suggest some synergies with other areas such as cloud or mobile computing among others that can motivate further research in the future.Ministerio de Economía y Competitividad TIN2015-70560-RJunta de Andalucía TIC-186
A Systematic Approach to Constructing Families of Incremental Topology Control Algorithms Using Graph Transformation
In the communication systems domain, constructing and maintaining network
topologies via topology control (TC) algorithms is an important cross-cutting
research area. Network topologies are usually modeled using attributed graphs
whose nodes and edges represent the network nodes and their interconnecting
links. A key requirement of TC algorithms is to fulfill certain consistency and
optimization properties to ensure a high quality of service. Still, few
attempts have been made to constructively integrate these properties into the
development process of TC algorithms. Furthermore, even though many TC
algorithms share substantial parts (such as structural patterns or tie-breaking
strategies), few works constructively leverage these commonalities and
differences of TC algorithms systematically. In previous work, we addressed the
constructive integration of consistency properties into the development
process. We outlined a constructive, model-driven methodology for designing
individual TC algorithms. Valid and high-quality topologies are characterized
using declarative graph constraints; TC algorithms are specified using
programmed graph transformation. We applied a well-known static analysis
technique to refine a given TC algorithm in a way that the resulting algorithm
preserves the specified graph constraints.
In this paper, we extend our constructive methodology by generalizing it to
support the specification of families of TC algorithms. To show the feasibility
of our approach, we reneging six existing TC algorithms and develop e-kTC, a
novel energy-efficient variant of the TC algorithm kTC. Finally, we evaluate a
subset of the specified TC algorithms using a new tool integration of the graph
transformation tool eMoflon and the Simonstrator network simulation framework.Comment: Corresponds to the accepted manuscrip
Managing Process Variants in the Process Life Cycle
When designing process-aware information systems, often variants of the same process have to be specified. Each variant then constitutes an adjustment of a particular process to specific requirements building the process context. Current Business Process Management (BPM) tools do not adequately support the management of process variants. Usually, the variants have to be kept in separate process models. This leads to huge modeling and maintenance efforts. In particular, more fundamental process changes (e.g., changes of legal regulations) often require the adjustment of all process variants derived from the same process; i.e., the variants have to be adapted separately to meet the new requirements. This redundancy in modeling and adapting process variants is both time consuming and error-prone. This paper presents the Provop approach, which provides a more flexible solution for managing process variants in the process life cycle. In particular, process variants can be configured out of a basic process following an operational approach; i.e., a specific variant is derived from the basic process by applying a set of well-defined change operations to it. Provop provides full process life cycle support and allows for flexible process configuration resulting in a maintainable collection of process variants
Detecting and Explaining Conflicts in Attributed Feature Models
Product configuration systems are often based on a variability model. The
development of a variability model is a time consuming and error-prone process.
Considering the ongoing development of products, the variability model has to
be adapted frequently. These changes often lead to mistakes, such that some
products cannot be derived from the model anymore, that undesired products are
derivable or that there are contradictions in the variability model. In this
paper, we propose an approach to discover and to explain contradictions in
attributed feature models efficiently in order to assist the developer with the
correction of mistakes. We use extended feature models with attributes and
arithmetic constraints, translate them into a constraint satisfaction problem
and explore those for contradictions. When a contradiction is found, the
constraints are searched for a set of contradicting relations by the
QuickXplain algorithm.Comment: In Proceedings FMSPLE 2015, arXiv:1504.0301
Quality-Aware Analysis in Product Line Engineering with the Orthogonal Variability Model
Software product line engineering (SPLE) is about producing a set of similar
products in a certain domain. A variability model documents the variability amongst products
in a product line. The specification of variability can be extended with quality information,
such as measurable quality attributes (e.g., CPU and memory consumption) and constraints
on these attributes (e.g., memory consumption should be in a range of values). However,
the wrong use of constraints may cause anomalies in the specification which must be
detected (e.g., the model could represent no products). Furthermore, based on such quality
information it is possible to carry out quality-aware analyses, i.e., the product line engineer
may want to verify whether it is possible to build a product that satisfies a desired quality.
The challenge for quality-aware specification and analysis is three-fold. First, there should
be a way to specify quality information in variability models. Second, it should be possible
to detect anomalies in the variability specification associated with quality information.
Third, there should be mechanisms to verify the variability model to extract useful information,
such as the possibility to build a product that fulfils certain quality conditions (e.g., is
there any product that requires less than 512MB of memory?). In this article, we present an
approach for quality-aware analysis in software product lines using the orthogonal variability
model (OVM) to represent variability. We propose to map variability represented in the
OVM associated with quality information to a constraint satisfaction problem and to use an
off-the-shelf constraint programming solver to automatically perform the verification task.
To illustrate our approach, we use a product line in the automotive domain which is an example
that was created in a national project by a leading car company. We have developed
a prototype tool named FaMa-OVM, which works as a proof of concepts. We were able to
identify void models, dead and false optional elements, and check whether the product line
example satisfies quality conditions
Synthesis of Attributed Feature Models From Product Descriptions: Foundations
Feature modeling is a widely used formalism to characterize a set of products
(also called configurations). As a manual elaboration is a long and arduous
task, numerous techniques have been proposed to reverse engineer feature models
from various kinds of artefacts. But none of them synthesize feature attributes
(or constraints over attributes) despite the practical relevance of attributes
for documenting the different values across a range of products. In this
report, we develop an algorithm for synthesizing attributed feature models
given a set of product descriptions. We present sound, complete, and
parametrizable techniques for computing all possible hierarchies, feature
groups, placements of feature attributes, domain values, and constraints. We
perform a complexity analysis w.r.t. number of features, attributes,
configurations, and domain size. We also evaluate the scalability of our
synthesis procedure using randomized configuration matrices. This report is a
first step that aims to describe the foundations for synthesizing attributed
feature models
A systematic literature review on the semi-automatic configuration of extended product lines
Product line engineering has become essential in mass customisation given its ability to reduce production costs and time to market, and to improve product quality and customer satisfaction. In product line literature, mass customisation is known as product configuration. Currently, there are multiple heterogeneous contributions in the product line configuration domain. However, a secondary study that shows an overview of the progress, trends, and gaps faced by researchers in this domain is still missing. In this context, we provide a comprehensive systematic literature review to discover which approaches exist to support the configuration process of extended product lines and how these approaches perform in practice. Extend product lines consider non-functional properties in the product line modelling. We compare and classify a total of 66 primary studies from 2000 to 2016. Mainly, we give an in-depth view of techniques used by each work, how these techniques are evaluated and their main shortcomings. As main results, our review identified (i) the need to improve the quality of the evaluation of existing approaches, (ii) a lack of hybrid solutions to support multiple configuration constraints, and (iii) a need to improve scalability and performance conditions
- …