Subscribe Now Subscribe Today
Science Alert
 
FOLLOW US:     Facebook     Twitter
Blue
   
Curve Top
Journal of Software Engineering
  Year: 2013 | Volume: 7 | Issue: 1 | Page No.: 1-29
DOI: 10.3923/jse.2013.1.29
An Approach for Validating Feature Models in Software Product Lines
Guoheng Zhang, Huilin Ye and Yuqing Lin

Abstract:
In a Software Product Line (SPL), a feature model is widely used to represent the commonalities and variabilities of a family of software products. In the process of establishing feature models, the incorrect and inaccurate feature relationships will lead to feature model errors which prevent the effective product configuration. The feature model validation aims to identify the errors existing in a feature model and find the solutions of resolving the errors. The current validation approaches transformed a feature model into a Constraint Satisfaction Problem (CSP) and used off-the-shelf solvers to reason on the CSP. However, the use of solvers might take an infeasible amount of time for validating large scale feature models, as CSP exhibits the exponential complexity and requires a combination of heuristics and combinational search methods. This study developed an efficient validation approach based on the contradictory feature relationships behind the errors. As the contradictory feature relationships were found based on feature relationship propagation, the solvers were not required by this approach. The performance and correctness of this proposed approach were evaluated by comparing with the CSP based approach based on a set of pre-designed feature models and a number of large-scale feature models.
PDF Fulltext XML References Citation Report Citation
How to cite this article:

Guoheng Zhang, Huilin Ye and Yuqing Lin, 2013. An Approach for Validating Feature Models in Software Product Lines. Journal of Software Engineering, 7: 1-29.

DOI: 10.3923/jse.2013.1.29

URL: https://scialert.net/abstract/?doi=jse.2013.1.29

 
COMMENT ON THIS PAPER
 
 
 

 

 
 
 
 
 
 
 
 
 

 
 
 
 
 

       

       

Curve Bottom