ABSTRACT
Background: Resolving issues is central to modern agile software development where a software is developed and evolved incrementally through series of issue resolutions. An issue could represent a requirement for a new functionality, a report of a software bug or a description of a project task.
Aims: Knowing how long an issue will be resolved is thus important to different stakeholders including end-users, bug reporters, bug triagers, developers and managers. This paper aims to propose a multi-objective search-based approach to estimate the time required for resolving an issue.
Methods: Using genetic programming (a meta-heuristic optimization method), we iteratively generate candidate estimate models and search for the optimal model in estimating issue resolution time. The search is guided simultaneously by two objectives: maximizing the accuracy of the estimation model while minimizing its complexity.
Results: Our evaluation on 8,260 issues from five large open source projects demonstrate that our approach significantly (p < 0.001) outperforms both the baselines and state-of-the-art techniques.
Conclusions: Evolutionary search-based approaches offer an effective alternative to build estimation models for issue resolution time. Using multiple objectives, one for measuring the accuracy and the other for the complexity, helps produce accurate and simple estimation models.
- A. Arcuri and L. Briand. A practical guide for using statistical tests to assess randomized algorithms in software engineering. In 2011 33rd International Conference on Software Engineering (ICSE), pages 1--10. IEEE, 2011. Google ScholarDigital Library
- A. Arcuri and L. Briand. A hitchhiker's guide to statistical tests for assessing randomized algorithms in software engineering. Software Testing, Verification and Reliability, 24(3):219--250, 2014. Google ScholarDigital Library
- M. Choetkiertikul, H. K. Dam, T. Tran, and A. Ghose. Characterization and prediction of issue-related risks in software projects. In Proceedings of the 12th Working Conference on Mining Software Repositories (MSR), pages 280--291. IEEE, 2015. Google ScholarCross Ref
- J. Cohen. Statistical power analysis for the behavioral sciences. 1988, hillsdale, nj: L. Lawrence Earlbaum Associates, 2.Google Scholar
- M. de Oliveira Barros and A. C. Dias-Neto. 0006/2011-threats to validity in search-based software engineering empirical studies. RelaTe-DIA, 5(1), 2011.Google Scholar
- K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan. A fast and elitist multiobjective genetic algorithm: Nsga-ii. IEEE transactions on evolutionary computation, 6(2):182--197, 2002. Google ScholarDigital Library
- A. Dehghan, K. Blincoe, and D. Damian. A hybrid model for task completion effort estimation. In Proceedings of the 2nd International Workshop on Software Analytics, pages 22--28. ACM, 2016. Google ScholarDigital Library
- J. J. Dolado, D. Rodriguez, M. Harman, W. B. Langdon, and F. Sarro. Evaluation of estimation models using the minimum interval of equivalence. Applied Soft Computing, pages 1--12, 2016. Google ScholarDigital Library
- F. Ferrucci, M. Harman, J. Ren, and F. Sarro. Not going to take this anymore: Multi-objective overtime planning for software engineering projects. In Proceedings of the 2013 International Conference on Software Engineering, ICSE '13, pages 462--471, Piscataway, NJ, USA, 2013. IEEE Press. Google ScholarCross Ref
- F. Ferrucci, M. Harman, and F. Sarro. Search-based software project management. In Software Project Management in a Changing World, pages 373--399. Springer, 2014. Google ScholarCross Ref
- C. Gathercole and P. Ross. An adverse interaction between crossover and restricted tree depth in genetic programming. In Proceedings of the 1st Annual Conference on Genetic Programming, pages 291--296, Cambridge, MA, USA, 1996. MIT Press.Google ScholarDigital Library
- E. Giger, M. Pinzger, and H. Gall. Predicting the fix time of bugs. In Proceedings of the 2nd International Workshop on Recommendation Systems for Software Engineering, pages 52--56. ACM, 2010. Google ScholarDigital Library
- M. Hall, E. Frank, G. Holmes, B. Pfahringer, P. Reutemann, and I. H. Witten. The weka data mining software: An update. SIGKDD Explor. Newsl., 11(1):10--18, Nov. 2009. Google ScholarDigital Library
- P. Hooimeijer and W. Weimer. Modeling bug report quality. In Proceedings of the 22 IEEE/ACM international conference on Automated software engineering (ASE), pages 34--44. ACM Press, nov 2007. Google ScholarDigital Library
- S.-J. Huang and N.-H. Chiu. Optimization of analogy weights by genetic algorithm for software effort estimation. Information and software technology, 48(11):1034--1045, 2006. Google ScholarCross Ref
- R. Kikas, M. Dumas, and D. Pfahl. Using dynamic and contextual features to predict issue lifetime in github projects. In Proceedings of the 13th International Workshop on Mining Software Repositories, pages 291--302. ACM, 2016. Google ScholarDigital Library
- E. Kocaguneli, T. Menzies, and J. W. Keung. On the value of ensemble effort estimation. IEEE Transactions on Software Engineering, 38(6):1403--1416, 2012. Google ScholarDigital Library
- J. R. Koza. Genetic programming: on the programming of computers by means of natural selection, volume 1. MIT press, 1992.Google Scholar
- W. B. Langdon, J. Dolado, F. Sarro, and M. Harman. Exact mean absolute error of baseline predictor, marp0. Information and Software Technology, 73:16--18, 2016. Google ScholarDigital Library
- C. Lokan. What should you optimize when building an estimation model? In 11th IEEE International Software Metrics Symposium (METRICS'05), pages 1--10. IEEE, 2005. Google ScholarDigital Library
- L. Marks, Y. Zou, and A. E. Hassan. Studying the fix-time for bugs in large open source projects. In Proceedings of the 7th International Conference on Predictive Models in Software Engineering, page 11. ACM, 2011. Google ScholarDigital Library
- D. R. McCallum and J. L. Peterson. Computer-based readability indexes. In Proceedings of the ACM'82 Conference, pages 44--48. ACM, 1982. Google ScholarDigital Library
- T. Menzies. Occam's razor and simple software project management. In G. Ruhe and C. Wohlin, editors, Software Project Management in a Changing World, pages 447--472. Springer, 2014. Google ScholarCross Ref
- T. Menzies, Z. Chen, J. Hihn, and K. Lum. Selecting best practices for effort estimation. IEEE Transactions on Software Engineering, 32(11):883--895, 2006. Google ScholarDigital Library
- T. Menzies and M. Shepperd. Special issue on repeatable results in software engineering prediction. Empirical Software Engineering, 17(1):1--17, 2012. Google ScholarDigital Library
- L. L. Minku and X. Yao. Software effort estimation as a multiobjective learning problem. ACM Transactions on Software Engineering and Methodology (TOSEM), 22(4):35, 2013. Google ScholarDigital Library
- L. D. Panjer. Predicting eclipse bug lifetimes. In Proceedings of the Fourth International Workshop on mining software repositories, page 29. IEEE Computer Society, 2007. Google ScholarDigital Library
- F. Sarro, A. Petrozziello, and M. Harman. Multi-objective software effort estimation. In Proceedings of the 38th International Conference on Software Engineering, pages 619--630. ACM, 2016. Google ScholarDigital Library
- M. Shepperd and S. MacDonell. Evaluating prediction systems in software project estimation. Information and Software Technology, 54(8):820--827, 2012. Google ScholarDigital Library
- Y. Tian, D. Lo, and C. Sun. Drone: Predicting priority of reported bugs by multi-factor analysis. In ICSM, pages 200--209, 2013.Google ScholarDigital Library
- A. Vargha and H. D. Delaney. A critique and improvement of the cl common language effect size statistics of mcgraw and wong. Journal of Educational and Behavioral Statistics, 25(2):101--132, 2000.Google Scholar
- C. Weiss, R. Premraj, T. Zimmermann, and A. Zeller. How long will it take to fix this bug? In Proceedings of the Fourth International Workshop on Mining Software Repositories, page 1. IEEE Computer Society, 2007. Google ScholarDigital Library
- X. Xia, D. Lo, E. Shihab, X. Wang, and B. Zhou. Automatic, high accuracy prediction of reopened bugs. Automated Software Engineering, 22(1):75--109, 2015. Google ScholarDigital Library
- X. Xia, D. Lo, X. Wang, X. Yang, S. Li, and J. Sun. A comparative study of supervised learning algorithms for re-opened bug prediction. In Software Maintenance and Reengineering (CSMR), 2013 17th European Conference on, pages 331--334. IEEE, 2013. Google ScholarDigital Library
Recommendations
Search space-based multi-objective optimization evolutionary algorithm
Evolutionary multi-objective optimization (EMO) algorithms are actively used for answering optimization problems with multiple contradictory objectives and scheming interpretable and precise real-time applications. A majority of existing EMO algorithms ...
Multi-objective oriented search algorithm for multi-objective reactive power optimization
ICIC'09: Proceedings of the Intelligent computing 5th international conference on Emerging intelligent computing technology and applicationsThis paper presents a novel algorithm, multi-objective oriented search algorithm (MOOSA), to deal with the problem of multi-objective reactive power optimization in power system. The multi-objective oriented search algorithm has strong ability to search ...
Cellular teaching-learning-based optimization approach for dynamic multi-objective problems
Many real-world optimization problems involve several conflicting objectives that must be optimized simultaneously. Furthermore, most optimization problems have a dynamic structure and change over time. In addition to trying to establish trade-offs ...
Comments