Article

Guest editorial: Search-based software engineering

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract

Search-based software engineering (SBSE) models complex software engineering problems as optimization problems, and uses metaheuristic search algorithms to solve these. SBSE has the potential to address the challenges posed by the growing size of complexity of modern computer systems, and has already been successfully applied to solve problems in nearly all software development life cycle phases. This special issue presents three articles demonstrating the versatility of SBSE by tackling three very different aspects of software engineering: Software module clustering, network optimisation, requirements for dynamic adaptive systems.

No full-text available

Request Full-text Paper PDF

To read the full-text of this research,
you can request a copy directly from the authors.

... The research field of Search-based Software Engineering (SBSE) [3,7,16,21] proposes the use of heuristic search techniques to solve Software Engineering challenges which are described as optimization problems. These techniques are more efficient in processing power than traditional search, although they cannot be guaranteed to find optimal solutions to the analyzed problem. ...
Conference Paper
Heuristic search algorithms have been applied in various areas of Software Engineering, such as requirements prioritization, software architecture improvement, and time and cost planning. The research field of Search-based Software Engineering (SBSE) proposes the use of heuristic search techniques to solve Software Engineering challenges, which are described as optimization problems. One of the challenges frequently analyzed from the SBSE perspective is the Software Module Clustering (SMC) problem. This problem involves distributing a software project’s component modules (or classes) among larger structures called clusters (or packages). Practice and experimental studies have shown a strong correlation between poor distributions and the presence of component failures. The main factors used to assess the quality of distributions are coupling and cohesion. However, research shows that optimization based on metrics that capture structural characteristics does not result in an adequate distribution of classes in packages from the point of view of software developers. One of the reasons that might have led to such limited results is that the algorithms produce non-hierarchical distributions of classes into packages. In this study, we executed the same greedy algorithm using two different fitness functions: one that does not consider hierarchy and the other that does. We wanted to measure whether they produced different results regarding authoritativeness. We found indications that a hierarchy-based approach produces solutions closer to those software developers propose.
... Research Context. Metaheuristic approaches, often hybridized with local search techniques [42] are popular in Search-Based Software Engineering (SBSE) [19], [22], e.g., in defect prediction [27], [28], automated testing [24] and more [21], [23]. However, to achieve further generality, streamline the creation of new metaheuristics, and organize the knowledge acquired over the years metaheuristic optimization frameworks (MOFs) have been proposed. ...
ResearchGate has not been able to resolve any references for this publication.