The Current State and Future of Search Based Software Engineering
By Mark Harman. Future of Software Engineering (FOSE '07), 2007
690 citations recorded by the source corpus.
Subfields: Information Systems, Software
View Paper: https://www.semanticscholar.org/paper/e2ee8df90829f8fe41bf1a1ebc233113885c124a
How researchers see this paper
The researchers whose trusted networks rank it highest, strongest advocate first. Every researcher gets a different order.
In Information Systems
- Mark Harman
- Claire Le Goues
- Earl T. Barr
- Shin Yoo
- Yue Jia
- Koushik Sen
- Chakkrit Kla Tantithamthavorn
- David Lo
In Software
- Mark Harman
- Yue Jia
- Koushik Sen
- Claire Le Goues
- Shin Yoo
- Earl T. Barr
- Chakkrit Kla Tantithamthavorn
- Ken-ichi Matsumoto
Citations in the corpus
- Search Based Software Engineering: A Comprehensive Analysis and Review of Trends Techniques and Applications (2009, background): “There are only two key ingredients [215] [218] for the application of search-based optimisation to Software Engineering problems: 1) The choice of the representation of the problem.”
- A survey of combinatorial testing (2011, methodology): “Techniques from the .eld of search-based software engineering proposed by Harman can be applied to improve the test suite for CT [Harman 2007].”
- Software Testing Research: Achievements, Challenges, Dreams (2007, methodology): “Search-based test data generation is just one possible application of search-based software engineering [ 42 ].”
- Higher Order Mutation Testing (2009, methodology): “Milu is also the first tool to use Search Based Software Engineering (SBSE) to optimise mutation testing, although SBSE has been widely used to optimise other aspects of testing [116, 179].”
- The Impact of Automated Parameter Optimization on Defect Prediction Models (2018, background): “Prior studies in the area of the search-based software engineering show that search algorithms can be used to find useful solution to software engineering problems [45], [46].”
- A systematic review of search-based testing for non-functional system properties (2009, positive): “All approaches to SBST are based on satisfaction of a certain test adequacy criterion represented by a fitness function [2].”
- Sapienz: multi-objective automated testing for Android applications (2016, methodology): “Sapienz optimises for three objectives: code coverage, sequence length and the number of crashes found, using a Pareto-optimal Search Based Software Engineering (SBSE) approach [38,39].”
- History Driven Program Repair (2016, methodology): “In the last phase, we use a modified stochastic search technique [16] to evolve patches to a given buggy program, until we find a desired number of solutions.”
- Genetic algorithms: theory, genetic operators, solutions, and applications (2023, neutral): “In addition, the GA is utilized in automated cost estimation [65], project planning [65], requirements engineering [63, 65], software design [65, 89] and optimizing source code [65].”
- Is the cure worse than the disease? overfitting in automated program repair (2015, methodology): “G&V approaches fall in the space of search-based software engineering [25], which adapts search methods, such as genetic programming, to software engineering tasks.”
- FairFuzz: A Targeted Mutation Strategy for Increasing Greybox Fuzz Testing Coverage (2017, methodology): “Search-based software testing (SBST) [24, 25, 27–29, 35, 38, 39, 50] uses optimization techniques such as hill climbing and genetic algorithms to generate inputs that optimize some observable fitness function.”
- Automatically finding patches using genetic programming (2009, methodology): “SBSE also uses evolutionary methods to improve software project management and effort estimation [9], to find safety violations [3], and in some cases to re-factor or re-engineer large software bases [28].”
- Easy over hard: a case study on deep learning (2017, methodology): “According to our literature review, there are several searching algorithms used in SE community:simulated annealing [19, 46]; various genetic algorithms [3, 27, 30] augmented by techniques such as differential evolution [1, 12, 21, 22, 62], tabu search and scatter search [6, 16, 49]; particle swarm ”
- A systematic study of automated program repair: Fixing 55 out of 105 bugs for $8 each (2012, neutral): “See Harman [40] for a survey.”
- The ManyBugs and IntroClass Benchmarks for Automated Repair of C Programs (2015, methodology): “Some of these methods produce multiple candidate repairs, and then validate them using test cases, such as by using stochastic search or methods based on search-based software engineering [39] (e.g., GenProg, PAR, AutoFix-E, ClearView, Debroy and Wong, TrpAutoRepair).”
- GenProg: A Generic Method for Automatic Software Repair (2012, methodology): “The field of Search-Based Software Engineering [69] uses evolutionary and related methods for software testing, e.”
- Genetic programming for Reverse Engineering (2013, background): “offs and tensions between the objectives, something often advocated as an advantage of SBSE [42], [34].”
- Software Module Clustering as a Multi-Objective Search Problem (2011, background): “In order to formulate software engineering problems as search problems, the representation and fitness function need to be defined [6, 12].”