82 research outputs found
Improving Decision Making in Software Product Lines Product Plan Management
The increasing demand on developing Software Product Lines (SPL) has given a lot of interest to software engineering researchers in improving and also replacing, current methods and techniques applied to clasical sofware systems development. in this paper, we introduce our first ideas within our proposal on improving the decision making while SPL Product Plan Managing. The key points in our proposal are originality and viability. We do not know any other proposal dealing with the same problem so far, and our first impressions guide us to predict a high viabilit
Isolated Features Detection in Feature Models
Feature models are commonly used to describe software product lines in terms of features. Features are linked by relations, which may introduce errors in the model. This paper gives a description of isolated features and states the detection of them, as the first step in their treatment. Two implementations are given to automatically support isolated features detection and a third one that uses both and improves the performance
Automated metamorphic testing on the analyses of feature models
Copyright © 2010 Elsevier B.V. All rights reserved.Context: A feature model (FM) represents the valid combinations of features in a domain. The automated extraction of information from FMs is a complex task that involves numerous analysis operations, techniques and tools. Current testing methods in this context are manual and rely on the ability of the tester to decide whether the output of an analysis is correct. However, this is acknowledged to be time-consuming, error-prone and in most cases infeasible due to the combinatorial complexity of the analyses, this is known as the oracle problem.Objective: In this paper, we propose using metamorphic testing to automate the generation of test data for feature model analysis tools overcoming the oracle problem. An automated test data generator is presented and evaluated to show the feasibility of our approach.Method: We present a set of relations (so-called metamorphic relations) between input FMs and the set of products they represent. Based on these relations and given a FM and its known set of products, a set of neighbouring FMs together with their corresponding set of products are automatically generated and used for testing multiple analyses. Complex FMs representing millions of products can be efficiently created by applying this process iteratively.Results: Our evaluation results using mutation testing and real faults reveal that most faults can be automatically detected within a few seconds. Two defects were found in FaMa and another two in SPLOT, two real tools for the automated analysis of feature models. Also, we show how our generator outperforms a related manual suite for the automated analysis of feature models and how this suite can be used to guide the automated generation of test cases obtaining important gains in efficiency.Conclusion: Our results show that the application of metamorphic testing in the domain of automated analysis of feature models is efficient and effective in detecting most faults in a few seconds without the need for a human oracle.This work has been partially supported by the European Commission(FEDER)and Spanish Government under CICYT project SETI(TIN2009-07366)and the Andalusian Government project ISABEL(TIC-2533)
Consistency maintenance for evolving feature models
Software product line (SPL) techniques handle the construction of customized systems. One of the most
common representations of the decisions a customer can make in SPLs is feature models (FMs). An FM
represents the relationships among common and variable features in an SPL. Features are a representation
of the characteristics in a system that are relevant to customers.
FMs are subject to change since the set of features and their relationships can change along an SPL lifecycle.
Due to this evolution, the consistency of FMs may be compromised. There exist some approaches to
detect and explain inconsistencies in FMs, however this process can take a long time for large FMs.
In this paper we present a complementary approach to dealing with inconsistencies in FM evolution
scenarios that improves the performance for existing approaches reducing the impact of change to the
smallest part of an FM that changes. To achieve our goal, we formalize FMs from an ontological perspective
and define constraints that must be satisfied in FMs to be consistent. We define a set of primitive
operations that modify FMs and which are responsible for the FM evolution, analyzing their impact on
the FM consistency. We propose a set of predefined strategies to keep the consistency for error-prone
operations.
As a proof-of-concept we present the results of our experiments, where we check for the effectiveness
and efficiency of our approach in FMs with thousands of features. Although our approach is limited by the
kinds of consistency constraints and the primitive operations we define, the experiments present a significant
improvement in performance results in those cases where they are applicable.Comisión Interministerial de Ciencia y Tecnología TIN2009-07366Junta de Andalucía TIC-5906Junta de Andalucía P07-TIC-253
Three-Dimensional Feature Diagrams Visualization
Visualizing and manipulating large feature diagrams is still an open issue for the SPL community. Few effort has been made on improving the techniques to get the most out of drawing space and current feature modeling tools either use file-system-like trees or 2D graphs that must be scrolled to locate features. The aim of this paper is presenting a new method to draw large feature models based on cone trees, a three-dimensional visualization technique to represent hierarchical information. in order to evaluate our proposal, we develop a prototype that generates standard 3D files so it can be easily integrated into existing tools. Finally, we present a roadmap for a future extension of our proposal with dynamic behaviour so large feature models handling might be improved.CICYT TIN2006-00472Junta de Andalucía TIC-253
Open Source Tools for Software Product Line Development
Open-Source (OS) software development differs widely from close-source development practices because of a number of reasons: project organization, distributed developers, code-centric, etc. These characteristics force the development tools used in the context of OS development to fulfill a set of requirements such as being extensible, multiplatform, version control support, etc. in this paper we set the basis for a discussion about the features that a success OS tool for the development of Software Product Lines (SPLs) should provide. As a starting point, we analyse the projects of four major OS development tool and summarize its main features in a reference feature model. Next, we introduce some the most popular OS feature modeling tools available in the SPL community and check how they support the identified features
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
A Taxonomy of Variability in Web Service Flows
The combination of Software Product Lines (SPL) and Service-Oriented Architectures (SOA) development practices is expected to become a new development paradigm maximizing reuse and business integration. However, multiples issues must be still addressed in order to clarify the connections between both fields. One of the key questions to answer is how SPL practices can be used to support serviceoriented applications. in this context, identifying and managing the points of variability in composite Web services emerges as an inevitable step for making possible such integration. in this position paper we give a first step toward such direction by introducing a comprehensible overview of the main variability points in Web service flows.Ministerio de Educación y Ciencia TIN2006-0047
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
- …