Reverse Engineering Feature Models with Evolutionary Algorithms: An Exploratory Study. (bibtex)
by Roberto E. Lopez-Herrejon, José A. Galindo, David Benavides, Sergio Segura, Alexander Egyed
Abstract:
Successful software evolves, more and more commonly, from a single system to a set of system variants tailored to meet the similiar and yet different functionality required by the distinct clients and users. Software Product Line Engineering (SPLE) is a software development paradigm that has proven effective for coping with this scenario. At the core of SPLE is variability modeling which employs Feature Models (FMs) as the de facto standard to represent the combinations of features that distinguish the systems variants. Reverse engineering FMs consist in constructing a feature model from a set of products descriptions. This research area is becoming increasingly active within the SPLE community, where the problem has been addressed with different perspectives and approaches ranging from analysis of configuration scripts, use of propositional logic or natural language techniques, to ad hoc algorithms. In this paper, we explore the feasibility of using Evolutionary Algorithms (EAs) to synthesize FMs from the feature sets that describe the system variants. We analyzed 59 representative case studies of different characteristics and complexity. Our exploratory study found that FMs that denote proper supersets of the desired feature sets can be obtained with a small number of generations. However, reducing the differences between these two sets with an effective and scalable fitness function remains an open question.We believe that this work is a first step towards leveraging the extensive wealth of Search-Based Software Engineering techniques to address this and other variability management challenges.
Reference:
Reverse Engineering Feature Models with Evolutionary Algorithms: An Exploratory Study. (Roberto E. Lopez-Herrejon, José A. Galindo, David Benavides, Sergio Segura, Alexander Egyed), In Proceedings of the 4th International Symposium on Search-Based Software Engineering (SSBSE 2012), Riva del Garda, Italy (Gordon Fraser, Jerffeson Teixeira de Souza, eds.), Springer, volume 7515, 2012.
Bibtex Entry:
@Conference{DBLP:conf/ssbse/Lopez-HerrejonGBSE12,
  author    = {Roberto E. Lopez-Herrejon and José A. Galindo and David Benavides and Sergio Segura and Alexander Egyed},
  title     = {Reverse Engineering Feature Models with Evolutionary Algorithms: An Exploratory Study.},
  booktitle = {Proceedings of the 4th International Symposium on Search-Based Software Engineering (SSBSE 2012), Riva del Garda, Italy},
  year      = {2012},
  editor    = {Gordon Fraser and Jerffeson Teixeira de Souza},
  volume    = {7515},
  series    = {Lecture Notes in Computer Science},
  pages     = {168-182},
  publisher = {Springer},
  abstract  = {Successful software evolves, more and more commonly, from a single
	system to a set of system variants tailored to meet the similiar
	and yet different functionality required by the distinct clients
	and users. Software Product Line Engineering (SPLE) is a software
	development paradigm that has proven effective for coping with this
	scenario. At the core of SPLE is variability modeling which employs
	Feature Models (FMs) as the de facto standard to represent the combinations
	of features that distinguish the systems variants. Reverse engineering
	FMs consist in constructing a feature model from a set of products
	descriptions. This research area is becoming increasingly active
	within the SPLE community, where the problem has been addressed with
	different perspectives and approaches ranging from analysis of configuration
	scripts, use of propositional logic or natural language techniques,
	to ad hoc algorithms. In this paper, we explore the feasibility of
	using Evolutionary Algorithms (EAs) to synthesize FMs from the feature
	sets that describe the system variants. We analyzed 59 representative
	case studies of different characteristics and complexity. Our exploratory
	study found that FMs that denote proper supersets of the desired
	feature sets can be obtained with a small number of generations.
	However, reducing the differences between these two sets with an
	effective and scalable fitness function remains an open question.We
	believe that this work is a first step towards leveraging the extensive
	wealth of Search-Based Software Engineering techniques to address
	this and other variability management challenges.},
  doi       = {10.1007/978-3-642-33119-0_13},
  file      = {:Conferences\\SSBSE 2012 - Reverse Engineering Feature Models With Evolutionary Algorithms\\Reverse Engineering Feature Models with Evolutionary Algorithms - An Exploratory Study-preprint.pdf:PDF},
  keywords  = {FWF P21321, FWF M1421, EU IEF 254965},
}
Powered by bibtexbrowser