“Sampling” as a Baseline Optimizer for Search-Based Software Engineering | IEEE Journals & Magazine | IEEE Xplore

“Sampling” as a Baseline Optimizer for Search-Based Software Engineering


Abstract:

Increasingly, Software Engineering (SE) researchers use search-based optimization techniques to solve SE problems with multiple conflicting objectives. These techniques o...Show More

Abstract:

Increasingly, Software Engineering (SE) researchers use search-based optimization techniques to solve SE problems with multiple conflicting objectives. These techniques often apply CPU-intensive evolutionary algorithms to explore generations of mutations to a population of candidate solutions. An alternative approach, proposed in this paper, is to start with a very large population and sample down to just the better solutions. We call this method “Sway”, short for “the sampling way”. This paper compares Sway versus state-of-the-art search-based SE tools using seven models: five software product line models; and two other software process control models (concerned with project management, effort estimation, and selection of requirements) during incremental agile development. For these models, the experiments of this paper show that Sway is competitive with corresponding state-of-the-art evolutionary algorithms while requiring orders of magnitude fewer evaluations. Considering the simplicity and effectiveness of Sway, we, therefore, propose this approach as a baseline method for search-based software engineering models, especially for models that are very slow to execute.
Published in: IEEE Transactions on Software Engineering ( Volume: 45, Issue: 6, 01 June 2019)
Page(s): 597 - 614
Date of Publication: 08 January 2018

ISSN Information:

Citations are not available for this document.

1 Introduction

Software engineers often need to answer questions that explore trade-offs between competing goals. For example:

What is the smallest set of test cases that cover all program branches?

What is the set of requirements that balances software development cost and customer satisfaction?

What sequence of refactoring steps take the least effort while most decreasing the future maintenance costs of a system?

Cites in Papers - |

Cites in Papers - IEEE (10)

Select All
1.
Tim Menzies, "Retrospective: Data Mining Static Code Attributes to Learn Defect Predictors", IEEE Transactions on Software Engineering, vol.51, no.3, pp.858-863, 2025.
2.
Pengzhou Chen, Jingzhi Gong, Tao Chen, "Accuracy Can Lie: On the Impact of Surrogate Model in Configuration Tuning", IEEE Transactions on Software Engineering, vol.51, no.2, pp.548-580, 2025.
3.
Chenxing Zhong, Shanshan Li, He Zhang, Huang Huang, Lanxin Yang, Yuanfang Cai, "Refactoring Microservices to Microservices in Support of Evolutionary Design", IEEE Transactions on Software Engineering, vol.51, no.2, pp.484-502, 2025.
4.
Andre Lustosa, Tim Menzies, "iSNEAK: Partial Ordering as Heuristics for Model- Based Reasoning in Software Engineering", IEEE Access, vol.12, pp.142915-142929, 2024.
5.
Lauren Alvarez, Tim Menzies, "Don’t Lie to Me: Avoiding Malicious Explanations With STEALTH", IEEE Software, vol.40, no.3, pp.43-53, 2023.
6.
Miqing Li, Tao Chen, Xin Yao, "How to Evaluate Solutions in Pareto-Based Search-Based Software Engineering: A Critical Review and Methodological Guidance", IEEE Transactions on Software Engineering, vol.48, no.5, pp.1771-1799, 2022.
7.
Rahul Krishna, Vivek Nair, Pooyan Jamshidi, Tim Menzies, "Whence to Learn? Transferring Knowledge in Configurable Systems Using BEETLE", IEEE Transactions on Software Engineering, vol.47, no.12, pp.2956-2972, 2021.
8.
Rodrigo Morales, Rubén Saborido, Yann-Gaël Guéhéneuc, "MoMIT: Porting a JavaScript Interpreter on a Quarter Coin", IEEE Transactions on Software Engineering, vol.47, no.12, pp.2771-2785, 2021.
9.
Christian Kaltenecker, Alexander Grebhahn, Norbert Siegmund, Sven Apel, "The Interplay of Sampling and Machine Learning for Software Performance Prediction", IEEE Software, vol.37, no.4, pp.58-66, 2020.
10.
Vivek Nair, Amritanshu Agrawal, Jianfeng Chen, Wei Fu, George Mathew, Tim Menzies, Leandro Minku, Markus Wagner, Zhe Yu, "Data-Driven Search-Based Software Engineering", 2018 IEEE/ACM 15th International Conference on Mining Software Repositories (MSR), pp.341-352, 2018.

Cites in Papers - Other Publishers (19)

1.
Kirti Bhandari, Kuldeep Kumar, Amrit Lal Sangal, "DBOS_US: a density-based graph under-sampling method to handle class imbalance and class overlap issues in software fault prediction", The Journal of Supercomputing, 2024.
2.
Kirti Bhandari, Kuldeep Kumar, Amrit Lal Sangal, "Alleviating Class Imbalance Issue in Software Fault Prediction Using DBSCAN-Based Induced Graph Under-Sampling Method", Arabian Journal for Science and Engineering, 2024.
3.
Andre Lustosa, Tim Menzies, "Learning from Very Little Data: On the Value of Landscape Analysis for Predicting Software Project Health", ACM Transactions on Software Engineering and Methodology, 2023.
4.
Zhaoqiang Guo, Shiran Liu, Xutong Liu, Wei Lai, Mingliang Ma, Xu Zhang, Chao Ni, Yibiao Yang, Yanhui Li, Lin Chen, Guoqiang Zhou, Yuming Zhou, "Code-line-level Bugginess Identification: How Far have We Come, and How Far have We Yet to Go?", ACM Transactions on Software Engineering and Methodology, vol.32, no.4, pp.1, 2023.
5.
Yi Xiang, Xiaowei Yang, Han Huang, Zhengxin Huang, Miqing Li, "Sampling configurations from software product lines via probability-aware diversification and SAT solving", Automated Software Engineering, vol.29, no.2, 2022.
6.
Yi Xiang, Han Huang, Yuren Zhou, Sizhe Li, Chuan Luo, Qingwei Lin, Miqing Li, Xiaowei Yang, "Search-based Diverse Sampling from Real-world Software Product Lines", 2022 IEEE/ACM 44th International Conference on Software Engineering (ICSE), pp.1945-1957, 2022.
7.
Somya Goyal, "Effective software defect prediction using support vector machines (SVMs)", International Journal of System Assurance Engineering and Management, 2021.
8.
Junghyun Lee, Chani Jung, Yoo Hwa Park, Dongmin Lee, Juyeon Yoon, Shin Yoo, "Preliminary Evaluation of SWAY in Permutation Decision Space via a Novel Euclidean Embedding", Search-Based Software Engineering, vol.12914, pp.26, 2021.
9.
Somya Goyal, "Handling Class-Imbalance with KNN (Neighbourhood) Under-Sampling for Software Defect Prediction", Artificial Intelligence Review, 2021.
10.
Somya Goyal, "Predicting the Defects using Stacked Ensemble Learner with Filtered Dataset", Automated Software Engineering, vol.28, no.2, 2021.
11.
Zhaoqiang Guo, Shiran Liu, Jinping Liu, Yanhui Li, Lin Chen, Hongmin Lu, Yuming Zhou, "How Far Have We Progressed in Identifying Self-admitted Technical Debts? A Comprehensive Empirical Study", ACM Transactions on Software Engineering and Methodology, vol.30, no.4, pp.1, 2021.
12.
Aurora Ramírez, Pedro Delgado-Pérez, Javier Ferrer, José Raúl Romero, Inmaculada Medina-Bulo, Francisco Chicano, "A systematic literature review of the SBSE research community in Spain", Progress in Artificial Intelligence, vol.9, no.2, pp.113, 2020.
13.
Islem Saidani, Ali Ouni, Moataz Chouchen, Mohamed Wiem Mkaouer, "Predicting continuous integration build failures using evolutionary search", Information and Software Technology, vol.128, pp.106392, 2020.
14.
Amritanshu Agrawal, Tim Menzies, Leandro L. Minku, Markus Wagner, Zhe Yu, "Better software analytics via ?DUO?: Data mining algorithms using/used-by optimizers", Empirical Software Engineering, vol.25, no.3, pp.2099, 2020.
15.
Nikolaos Mittas, Lefteris Angelis, "Data‐driven benchmarking in software development effort estimation: The few define the bulk", Journal of Software: Evolution and Process, vol.32, no.9, 2020.
16.
Yi Xiang, Xiaowei Yang, Yuren Zhou, Zibin Zheng, Miqing Li, Han Huang, "Going deeper with optimal software products selection using many-objective optimization and satisfiability solvers", Empirical Software Engineering, vol.25, no.1, pp.591, 2020.
17.
Júnea Eliza Brandão Caldeira, Sérgio Roberto Imaeda Yoshioka, Bruno Rafael de Oliveira Rodrigues, Fernando Silva Parreiras, "Multiobjective Optimization Using Evolutionary Algorithms in Agile Teams Allocation", Proceedings of the XVIII Brazilian Symposium on Software Quality, pp.89, 2019.
18.
Tim Menzies, Martin Shepperd, "?Bad smells? in software analytics papers", Information and Software Technology, vol.112, pp.35, 2019.
19.
Aurora Ramirez, Jose Raul Romero, Sebastian Ventura, "A survey of many-objective optimisation in search-based software engineering", Journal of Systems and Software, vol.149, pp.382, 2019.
Contact IEEE to Subscribe

References

References is not available for this document.