Information Technology Reference
In-Depth Information
Search Based Software Engineering:
Techniques, Taxonomy, Tutorial
Mark Harman 1 ,PhilMcMinn 2 , Jerffeson Teixeira de Souza 3 , and Shin Yoo 1
1 University College London, UK
2 University of Sheeld, UK
3 State University of Ceara, Brazil
Abstract. The aim of Search Based Software Engineering (SBSE)
research is to move software engineering problems from human-based
search to machine-based search, using a variety of techniques from the
metaheuristic search, operations research and evolutionary computation
paradigms. The idea is to exploit humans' creativity and machines' tenac-
ity and reliability, rather than requiring humans to perform the more
tedious, error prone and thereby costly aspects of the engineering pro-
cess. SBSE can also provide insights and decision support. This tutorial
will present the reader with a step-by-step guide to the application of
SBSE techniques to Software Engineering. It assumes neither previous
knowledge nor experience with Search Based Optimisation. The inten-
tion is that the tutorial will cover sucient material to allow the reader
to become productive in successfully applying search based optimisation
to a chosen Software Engineering problem of interest.
1
Introduction
Search Based Software Engineering (SBSE) is the name given to a body of work
in which Search Based Optimisation is applied to Software Engineering. This
approach to Software Engineering has proved to be very successful and generic.
It has been a subfield of software engineering for ten years [45], the past five of
which have been characterised by an explosion of interest and activity [48]. New
application areas within Software Engineering continue to emerge and a body
of empirical evidence has now accrued that demonstrates that the search based
approach is definitely here to stay.
SBSE seeks to reformulate Software Engineering problems as 'search prob-
lems' [45, 48]. This is not to be confused with textual or hypertextual searching.
Rather, for Search Based Software Engineering, a search problem is one in which
optimal or near optimal solutions are sought in a search space of candidate solu-
tions, guided by a fitness function that distinguishes between better and worse
solutions. The term SBSE was coined by Harman and Jones [45] in 2001, which
was the first paper to advocate Search Based Optimisation as a general approach
to Software Engineering, though there were other authors who had previously
applied search based optimisation to aspects of Software Engineering.
 
Search WWH ::




Custom Search