Abstract
Selection and prioritization of software requirements represents an area of interest in Search-Based Software Engineering (SBSE) and its main focus is finding and selecting a set of requirements that may be part of a software release. This paper uses a systematic review to investigate which SBSE approaches have been proposed to address software requirement selection and prioritization problems. The search strategy identified 30 articles in this area and they were analyzed for 18 previously established quality criteria. The results of this systematic review show which aspects of the requirements selection and prioritization problems were addressed by researchers, the methods approaches and search techniques currently adopted to address these problems, and the strengths and weaknesses of each of these techniques. The review provides a map showing the gaps and trends in the field, which can be useful to guide further research.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Aasem, M., Ramzan, M., Jaffar, A., Islamabad, E.S.: Analysis and optimization of software requirements prioritization techniques. In: Information and Emerging Technologies (ICIET) (2010)
Bagnall, A.J., Rayward-Smith, V.J., Whittley, I.M.: The next release problem. Information and Software Technology 43(14), 883–890 (2001)
Baker, et al.: Search Based approaches to Component Selection and prioritization for the Next Release Problem. In: 22nd IEEE International Conference on Software Maintenance (ICSM 2006), pp. 176–185 (2006)
Barros, M.D.O., Dias-neto, A.C.: Developing a Systematic Approach to Evaluation of Experimental Studies on Search-Based Software Engineering. Brazilian Conference on Software: Theory and Practic (2011) (in Port uguese)
Ben-Tal, A., Nemirovski, A.: Robust Optimization – methodology and applications. Mathematical Programming 92(3), 453–480 (2002)
Boehm, B., Grunbacher, P.: Developing Groupware for Requirements Negotiation:Lessons Learned. IEEE Software 18(2) (2001)
Carlshamre, P., Sandahla, K., Lindvallb, M., Regnellc, B., Natt, J.: An Industrial Survey of Requirements Interdependencies in Software Product Release Planning. In: Fifth IEEE International Symposium on Requirements Engineering (RE 2001), pp. 84–92 (2001)
Cheng, B., Atlee, J.: Research Directions in Requirements Engineering. In: Future of Software Engineering Conference (FOSE 2007) (2007)
Colares, F., et al.: A New Approach to the Software Release Planning. In: XXIII Brazilian Symposium on Software Engineering, pp. 207–215 (2009)
Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A Fast and Elitist Multiobjective Genetic Algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation 6(2), 182–197 (2002)
Del Sagrado, J., Del Aguila, I.M., Orellana, F.J.: Ant Colony Optimization for the Next Release Problem: A Comparative Study. In: 2nd International Symposium on Search Based Software Engineering, pp. 67–76 (2010)
Del Sagrado, J., Águila, I.M., Orellana, F.J.: Requirements Interaction in the Next Release Problem. In: GECCO 2011, pp. 241–242 (2011)
Durillo, J.J., et al.: A Study of the Bi-objective Next Release Problem. Empirical Software Engineering 16(1), 29–60 (2011)
Durillo, J.J., et al.: A Study of the Multi-objective Next Release Problem. 1st International Symposium on Search Based Software Engineering, 49–58 (2009)
Dyba, T., Dingsoyr, T., Hanssen, G.K.: Applying Systematic Reviews to Diverse Study Types: An Experience Report. In: First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007) (2007)
Felows, L., Hooks, I.: A Case for Priority Classifying Requirements. In: 8th Annual International Symposium on Systems Engineering, Seattle, Washington (1998)
Finkelstein, A., Harman, M., Mansouri, S.A., Ren, J., Zhang, Y.: A search based approach to fairness analysis in requirement assignments to aid negotiation, mediation and decision making. Requirements Engineering 14(4), 231–245 (2009)
Finkelstein, A., Harman, M., Mansouri, S., Ren, J., Zhang, Y.: Fairness Analysis in Requirements Assignments. In: Proceedings of the 16th IEEE International Requirements Engineering Conference (RE 2008), September 8-12, pp. 115–124. IEEE Computer Society, Barcelona (2008)
Freitas, F., Coutinho, D.P., Souza, J.T.: Software Next Release Planning Approach through Exact Optimization. International Journal of Computer Applications 22(8), 1–8 (2011)
Goldberg, D.E.: Genetic Algorithms in Search, Optimizatiom, and Machine Learning. Adisson-Wesley, EUA (1989)
Greer, D., Ruhe, G.: Software release planning: an evolutionary and iterative approach. Information and Software Technology 46(4), 243–253 (2004)
Harman, M.: The Current State and Future of Search Based Software Engineering The Current State and Future of Search Based Software Engineering. Techniques (2007)
Harman, M., Jones, B.F.: Search-based software engineering. Information and Software Technology 43(14), 833–839 (2001)
Harman, M., Krinke, J., Ren, J., Yoo, S.: Search Based Data Sensitivity Analysis Applied to Requirement Engineering. Analysis, 1681–1688 (2009)
Harman, M., McMinn, P., de Souza, J.T., Yoo, S.: Search Based Software Engineering: Techniques, Taxonomy, Tutorial. In: Meyer, B., Nordio, M. (eds.) LASER Summer School 2008-2010. LNCS, vol. 7007, pp. 1–59. Springer, Heidelberg (2012)
Heger, D.A.: A Disquisition on The Performance Behavior of Binary Search Tree Data Structures. European Journal for the Informatics Professional (2004)
Jedlitschka, A., Pfahl, D.: Reporting Guidelines for Controlled Experiments in Software Engineering Dietmar Pfahl. In: ISESE, pp. 95–104 (2005)
Jiang, H., Zhang, J., et al.: A Hybrid ACO Algorithm for the Next Release Problem. In: Proceedings of 2nd International Conference on Software Engineering and Data Mining (SEDM 2010), pp. 166–171 (2010)
Jiang, H., Xuan, J., Ren, Z.: Approximate backbone based multilevel algorithm for next release problem. In: Proceedings of the 12th Annual Conference on Genetic and Evolutionary Computation (GECCO 2010), p. 1333 (2010)
Karlsson, J., Wohlin, C., Regnell, B.: An evaluation of methods for prioritizing software requirements. Information and Software Technology 39(14-15), 939–947 (1998)
Karlsson, J., Ryan, K.: A Cost-Value Approach for Prioritizing Requirements. IEEE Software 14(5), 67–74 (1997)
Kitchenham, B.: Procedures for Performing Systematic Reviews (p. 28). Keele UniversityTecnical Report TR/SE-0401 ISSN:1353-776, Australia (2004)
Kitchenham, B.A., Dybå, T., Jorgensen, M.: Evidence-based Software Engineering. In: Proceedings of 26th International Conference on Software Engineering. IEEE Computer Society (2004)
Kitchenham, B., Sjøberg, D.I.K., Brereton, O.P., Budgen, D., Dybå, T., Höst, M., Pfahl, D., et al.: Can we evaluate the quality of software engineering experiments? In: Proceedings of the ACM-IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM 2010) (2010)
Kotonya, G., Sommerville, I.: Requirements Engineering: Processes and Techniques. Wiley (1998)
Kumari, A.C., Srinivas, K., Science, C.: Software Requirements Selection using Quantum inspired Elitist Multi-objective Evolutionary Algorithm. In: IEEE ICAESM (2012)
Li, C., van den Akker, J.M., Brinkkemper, S., Diepen, G.: Integrated Requirement Selection and Scheduling for the Release Planning of a Software Product. In: Sawyer, P., Heymans, P. (eds.) REFSQ 2007. LNCS, vol. 4542, pp. 93–108. Springer, Heidelberg (2007)
Li, C., et al.: An integrated approach for requirement selection and scheduling in software release planning. Requirements Engineering 15(4), 375–396 (2010)
Ngo-The, A., Ruhe, G.: A systematic approach for solving the wicked problem of software release planning. Soft Computing 12(1), 95–108 (2007)
Pressman, R.: Software Engineering, 5th edn. McGraw-Hill (2002)
Ruhe, G., Greer, D.: Quantitative Studies in Software Release Planning under Risk and Resource Constraints University of Calgary. Empirical Software Engineering, 1–10 (2003)
Saaty, T.L.: The Analytic Hierarchy Process, McGraw-Hill, Inc. (1980)
Saliu, M., Ruhe, G.: Bi-Objective Release Planning for Evolving Software Systems. In: Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT International Symposium on Foundations of Software Engineering (ESEC/FSE), pp. 105–114 (2007)
Saliu, O., Ruhe, G.: Supporting Software Release Planning Decisions for Evolving Systems. In: 29th Annual IEEE/NASA Software Engineering Workshop, pp. 14–26 (2005)
Saliu, O., Ruhe, G.: Software release planning for evolving systems. Innovations in Systems and Software Engineering 1(2), 189–204 (2005)
Sjøberg, D.I.K., Hannay, J.E., Hansen, O., Kampenes, V.B.: A Survey of Controlled Experiments in Software Engineering. ISESE 31, 733–753 (2005)
Sommerville, I.: Software Engineering, 8th edn. Pearson-Addison Wesley (2007)
De Souza, J.T., et al.: An Ant Colony Optimization Approach to the Software Release Planning with Dependent Requirements. In: Proceedings of the Third International Conference on Search Based
Talbi, E.-G.: Metaheuristics: from design to implementation. John Wiley & Sons (2009)
Tonella, P., Susi, A., Palma, F.: Interactive Requirements Prioritization using a Genetic Algorithm. Information and Software Technology, 1–15 (2012)
Tonella, P., Susi, A., Palma, F.: Using Interactive GA for Requirements Prioritization. In: 2nd International Symposium on Search Based Software Engineering (Section II), pp. 57–66 (2010)
Van Den Akker, J.M., et al.: Determination of the Next Release of a Software Product: an Approach using Integer Linear. In: Proceedings of CAISE 2005, vol. 03018, pp. 119–124 (2005)
Van Den Akker, J.M., et al.: Flexible Release Planning using Integer Linear Programming. In: Proceedings of the 11th International Workshop on Requirements Engineering for Software Quality (RefsQ 2005) (2005)
Van den Akker, M., et al.: Software product release planning through optimization and what-if analysis. Information and Software Technology 50(1-2), 101–111 (2008)
Wiegers, K.: First Thing First: Prioritizing Requirements. Software Developmnet (September 1999)
Wohlin, C., Runeson, P., Host, M., Ohlsson, M., Regnell, B., Wesslen, A.: Experimentation in Software Engineering; An Introduction. Kluwer Academic Publishers (2000)
Xuan, J., et al.: Solving the Large Scale Next Release Problem with a Backbone-Based Multilevel Algorithm 38(10), 1–18 (2012)
Zave, P.: Classification of Research Efforts in Requirements Engineering. ACM Computing Studis 29(4), 315–321 (1997)
Zhang, Y., et al.: Comparing the performance of metaheuristics for the analysis of multi-stakeholder tradeoffs in requirements optimisation. Information and Software Technology 53(7), 761–773 (2011)
Zhang, Y., Harman, M.: Search Based Optimization of Requirements Interaction Management. In: 2nd International Symposium on Search Based Software Engineering, pp. 47–56 (2010)
Zhang, Y.: Multi-Objective Search-based Requirements Selection and Optimisation. King’s College London, UK (2010)
Zhang, Y., Harman, M., Lim, S.L.: Empirical evaluation of search based requirements interaction management. Information and Software Technology (2012)
Zhang, Y., Harman, M., Mansouri, S.A.: The multi-objective next release problem. In: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation (GECCO 2007), p. 1129 (2007)
Zhang, Y.-Y., Finkelstein, A., Harman, M.: Search Based Requirements Optimisation: Existing Work and Challenges. In: Rolland, C. (ed.) REFSQ 2008. LNCS, vol. 5025, pp. 88–94. Springer, Heidelberg (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pitangueira, A.M., Maciel, R.S.P., de Oliveira Barros, M., Andrade, A.S. (2013). A Systematic Review of Software Requirements Selection and Prioritization Using SBSE Approaches. In: Ruhe, G., Zhang, Y. (eds) Search Based Software Engineering. SSBSE 2013. Lecture Notes in Computer Science, vol 8084. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39742-4_15
Download citation
DOI: https://doi.org/10.1007/978-3-642-39742-4_15
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-39741-7
Online ISBN: 978-3-642-39742-4
eBook Packages: Computer ScienceComputer Science (R0)