skip to main content
research-article

Uncertainty-wise Requirements Prioritization with Search

Authors Info & Claims
Published:31 December 2020Publication History
Skip Abstract Section

Abstract

Requirements review is an effective technique to ensure the quality of requirements in practice, especially in safety-critical domains (e.g., avionics systems, automotive systems). In such contexts, a typical requirements review process often prioritizes requirements, due to limited time and monetary budget, by, for instance, prioritizing requirements with higher implementation cost earlier in the review process. However, such a requirement implementation cost is typically estimated by stakeholders who often lack knowledge about (future) requirements implementation scenarios, which leads to uncertainty in cost overrun. In this article, we explicitly consider such uncertainty (quantified as cost overrun probability) when prioritizing requirements based on the assumption that a requirement with higher importance, a higher number of dependencies to other requirements, and higher implementation cost will be reviewed with the higher priority. Motivated by this, we formulate four objectives for uncertainty-wise requirements prioritization: maximizing the importance of requirements, requirements dependencies, the implementation cost of requirements, and cost overrun probability. These four objectives are integrated as part of our search-based uncertainty-wise requirements prioritization approach with tool support, named as URP. We evaluated six Multi-Objective Search Algorithms (MOSAs) (i.e., NSGA-II, NSGA-III, MOCell, SPEA2, IBEA, and PAES) together with Random Search (RS) using three real-world datasets (i.e., the RALIC, Word, and ReleasePlanner datasets) and 19 synthetic optimization problems. Results show that all the selected MOSAs can solve the requirements prioritization problem with significantly better performance than RS. Among them, IBEA was over 40% better than RS in terms of permutation effectiveness for the first 10% of prioritized requirements in the prioritization sequence of all three datasets. In addition, IBEA achieved the best performance in terms of the convergence of solutions, and NSGA-III performed the best when considering both the convergence and diversity of nondominated solutions.

References

  1. Klaus Pohl. 2010. Requirements engineering: Fundamentals, principles, and techniques. Springer Publishing Company, IncGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  2. YangMing Zhu. 2016. Software Reading Techniques. Apress, Berkeley, CA.Google ScholarGoogle Scholar
  3. Norman Riegel and Joerg Doerr. 2015. A systematic literature review of requirements prioritization criteria. In Proceedings of the Conference on Requirements Engineering: Foundation for Software Quality (REFSQ’15). Lecture Notes in Computer Science, Vol 9013, S. Fricker and K. Schneider (Eds). Springer, Cham, 300--317. DOI:http://dx.doi.org/10.1007/978-3-319-16101-3_22Google ScholarGoogle ScholarCross RefCross Ref
  4. Jack Shih-Chieh Hsu, Chien-Lung Chan, Julie Yu-Chih Liu, and Houn-Gee Chen. 2008. The impacts of user review on software responsiveness: Moderating requirements uncertainty. Info. Manage. 45, 4 (2008), 203--210. DOI:http://dx.doi.org/10.1016/j.im.2008.01.006Google ScholarGoogle Scholar
  5. Bill Curtis, Herb Krasner, and Neil Iscoe. 1988. A field study of the software design process for large systems. Commun. ACM 31, 11 (1988), 1268--1287. DOI:http://dx.doi.org/10.1145/50087.50089Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Ann M. Hickey and Alan M. Davis. 2004. A unified model of requirements elicitation. J. Manage. Info. Syst. 20, 4 (2004), 65--84. DOI:http://dx.doi.org/10.1080/07421222.2004.11045786Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Christof Ebert and Jozef De Man. 2005. Requirements uncertainty: Influencing factors and concrete improvements. In Proceedings of the 27th International Conference on Software Engineering. ACM, 553--560. DOI:http://dx.doi.org/10.1145/1062455.1062554Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Lingbo Li, Mark Harman, Fan Wu, and Yuanyuan Zhang. 2016. The value of exact analysis in requirements selection. IEEE Trans. Softw. Eng. 43, 6 (2017), 580--596. DOI:http://dx.doi.org/10.1109/TSE.2016.2615100Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Emmanuel Letier, David Stefan, and Earl T. Barr. 2014. Uncertainty, risk, and information value in software requirements and architecture. In Proceedings of the 36th International Conference on Software Engineering. ACM, 883--894. DOI:http://dx.doi.org/10.1145/2568225.2568239Google ScholarGoogle Scholar
  10. Patrik Berander and Anneliese Andrews, 2005. Requirements prioritization. In Engineering and Managing Software Requirements, Aybüke Aurum and Claes Wohlin (Eds). Springer, 69--94.Google ScholarGoogle Scholar
  11. Andrea Herrmann and Maya Daneva. 2008. Requirements prioritization based on benefit and cost prediction: An agenda for future research. In Proceedings of the 16th IEEE International Requirements Engineering Conference. IEEE, 125--134. DOI:http://dx.doi.org/10.1109/RE.2008.48Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Lingbo Li, Mark Harman, Emmanuel Letier, and Yuanyuan Zhang. 2014. Robust next release problem: Handling uncertainty during optimization. In Proceedings of the Annual Conference on Genetic and Evolutionary Computation. ACM, 1247--1254. DOI:http://dx.doi.org/10.1145/2576768.2598334Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Olugbenga Jide Olaniran, Peter E. D. Love, David Edwards, Oluwole Alfred Olatunji, and Jane Matthews. 2015. Cost overruns in hydrocarbon megaprojects: A critical review and implications for research. Project Manage. J. 46, 6 (2015), 126--138. DOI:http://dx.doi.org/10.1002/pmj.21556Google ScholarGoogle Scholar
  14. Paul Baker, Mark Harman, Kathleen Steinhöfel, and Alexandros Skaliotis. 2006. Search based approaches to component selection and prioritization for the next release problem. In Proceedings of the International Conference on Software Maintenance. IEEE, 176--185. DOI:http://dx.doi.org/10.1109/ICSM.2006.56Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Antônio Mauricio Pitangueira, Rita Suzana P. Maciel, and Márcio Barros. 2015. Software requirements selection and prioritization using sbse approaches: A systematic review and mapping of the literature. J. Syst. Softw. 103 (2015), 267--280. DOI:http://dx.doi.org/10.1016/j.jss.2014.09.038Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Alan M. Davis. 2003. The art of requirements triage. IEEE Comput. 36, 3 (2003), 42--49. DOI:http://dx.doi.org/10.1109/MC.2003.1185216Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. John M. Hammersley and D. C. Handscomb. 1965. Monte Carlo Methods. Chapman and Hall, London.Google ScholarGoogle Scholar
  18. David Johnson. 1997. The triangular distribution as a proxy for the beta distribution in risk analysis. J. Roy. Stat. Soci.: Series D (The Statistician) 46, 3 (1997), 387--398. DOI:http://dx.doi.org/10.1111/1467-9884.00091Google ScholarGoogle ScholarCross RefCross Ref
  19. Juan J. Durillo and Antonio J. Nebro. 2011. Jmetal: A java framework for multi-objective optimization. Adv. Eng. Softw. 42, 10 (2011), 760--771. DOI:http://dx.doi.org/10.1016/j.advengsoft.2011.05.014Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Soo Ling Lim. 2010. Social networks and collaborative filtering for large-scale requirements elicitation. Ph.D. Dissertation. University of New South Wales.Google ScholarGoogle Scholar
  21. Antonio Mauricio Pitangueira, Paolo Tonella, Angelo Susi, Rita Suzana Maciel, and Marcio Barros, 2016. Risk-aware multi-stakeholder next release planning using multi-objective optimization. In Requirements Engineering: Foundation for Software Quality. Refsq 2016. Lecture Notes in Computer Science, Vol 9619, M. Daneva and O. Pastor (Eds). Springer, Cham, 3--18. DOI:http://dx.doi.org/10.1007/978-3-319-30282-9_1Google ScholarGoogle Scholar
  22. Muhammad Rezaul Karim and Guenther Ruhe. 2014. Bi-objective genetic search for release planning in support of themes. In Proceedings of the Conference on Search-Based Software Engineering (SSBSE’14). Lecture Notes in Computer Science, Vol 8636, C. Le Goues and S. Yoo (Eds). Springer, Cham, 123--137. DOI:http://dx.doi.org/10.1007/978-3-319-09940-8_9Google ScholarGoogle ScholarCross RefCross Ref
  23. Victor R. Basili, Scott Green, Oliver Laitenberger, Filippo Lanubile, Forrest Shull, Sivert Sørumgård, and Marvin V Zelkowitz. 1996. The empirical investigation of perspective-based reading. Empir. Softw. Eng. 1 (1996), 133--164. DOI:http://dx.doi.org/10.1007/BF00368702Google ScholarGoogle ScholarCross RefCross Ref
  24. Yan Li, Man Zhang, Tao Yue, Shaukat Ali, and Li Zhang. 2017. Search-based uncertainty-wise requirements prioritization. In Proceedings of the 22nd International Conference on Engineering of Complex Computer Systems (ICECCS’17). IEEE, 80--89. DOI:http://dx.doi.org/10.1109/ICECCS.2017.11Google ScholarGoogle ScholarCross RefCross Ref
  25. Yuanyuan Zhang, Mark Harman, Gabriela Ochoa, Guenther Ruhe, and Sjaak Brinkkemper. 2018. An empirical study of meta-and hyper-heuristic search for multi-objective release planning. ACM Trans. Softw. Eng. Methodol. 27, 1 (2018), Article No.: 3. DOI:http://dx.doi.org/10.1145/3196831Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Yuanyuan Zhang, Anthony Finkelstein, and Mark Harman. 2008. Search based requirements optimisation: Existing work and challenges. In Proceedings of the Conference on Requirements Engineering: Foundation for Software Quality (REFSQ’08). Lecture Notes in Computer Science, Vol 5025, B. Paech and C. Rolland (Eds). Springer, Berlin, 88--94. DOI:http://dx.doi.org/10.1007/978-3-540-69062-7_8Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Abdel Salam Sayyad and Hany Ammar. 2013. Pareto-optimal search-based software engineering (posbse): A literature survey. In Proceedings of the 2nd International Workshop on Realizing Artificial Intelligence Synergies in Software Engineering (RAISE’13) IEEE, San Francisco, CA, 21--27. DOI:http://dx.doi.org/10.1109/RAISE.2013.6615200Google ScholarGoogle ScholarCross RefCross Ref
  28. Shaukat Ali, Paolo Arcaini, Dipesh Pradhan, Safdar Aqeel Safdar, and Tao Yue. 2020. Quality indicators in search-based software engineering: An empirical evaluation. ACM Trans. Softw. Eng. Methodol. 29, 2 (2020), Article No. 10. DOI:http://dx.doi.org/10.1145/3375636Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Mark Harman, S. Afshin Mansouri, and Yuanyuan Zhang. 2012. Search-based software engineering: Trends, techniques and applications. ACM Comput. Surveys 45, 1 (2012), Article No. 11. DOI:http://dx.doi.org/10.1145/2379776.2379787Google ScholarGoogle Scholar
  30. Kalyanmoy Deb, Amrit Pratap, Sameer Agarwal, and T. A. M. T. Meyarivan. 2002. A fast and elitist multiobjective genetic algorithm: Nsga-Ii. IEEE Trans. Evolution. Comput. 6, 2 (2002), 182--197. DOI:http://dx.doi.org/10.1109/4235.996017Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Mark Harman and Phil McMinn. 2010. A theoretical and empirical study of search-based testing: Local, global, and hybrid search. IEEE Trans. Softw. Eng. 36, 2 (2010), 226--247. DOI:http://dx.doi.org/10.1109/TSE.2009.71Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Abdullah Konak, David W. Coit, and Alice E. Smith. 2006. Multi-objective optimization using genetic algorithms: A tutorial. Reliabil. Eng. Syst. Safety 91, 9 (2006), 992--1007. DOI:http://dx.doi.org/10.1016/j.ress.2005.11.018Google ScholarGoogle ScholarCross RefCross Ref
  33. Kalyanmoy Deb and Himanshu Jain. 2014. An evolutionary many-objective optimization algorithm using reference-point-based nondominated sorting approach, part I: Solving problems with box constraints. IEEE Trans. Evolution. Comput. 18, 4 (2013), 577--601. DOI:http://dx.doi.org/10.1109/TEVC.2013.2281535Google ScholarGoogle ScholarCross RefCross Ref
  34. Himanshu Jain and Kalyanmoy Deb. 2014. An evolutionary many-objective optimization algorithm using reference-point based nondominated sorting approach, part Ii: Handling constraints and extending to an adaptive approach. IEEE Trans. Evolution. Comput. 18, 4 (2014), 602--622. DOI:http://dx.doi.org/10.1109/TEVC.2013.2281534Google ScholarGoogle ScholarCross RefCross Ref
  35. Indraneel Das and John E. Dennis. 1998. Normal-boundary intersection: A new method for generating the pareto surface in nonlinear multicriteria optimization problems. SIAM J. Optimiz. 8, 3 (1998), 631--657. DOI:http://dx.doi.org/10.1137/S1052623496307510Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. Antonio J. Nebro, Juan J. Durillo, Francisco Luna, Bernabé Dorronsoro, and Enrique Alba, 2007. Design issues in a multiobjective cellular genetic algorithm. In Proceedings of the Conference on Evolutionary Multi-Criterion Optimization (EMO’07). Lecture Notes in Computer Science, Vol 4403, S. Obayashi, K. Deb, C. Poloni, T. Hiroyasu, and T. Murata (Eds). Springer, Berlin, 126--140. DOI:http://dx.doi.org/10.1007/978-3-540-70928-2_13Google ScholarGoogle ScholarCross RefCross Ref
  37. Eckart Zitzler, Marco Laumanns, and Lothar Thiele. 2001. Spea2: Improving the strength pareto evolutionary algorithm for multiobjective optimization. TIK-Report 103. Department of Electrical EngineeringSwiss Federal Institute of Technology (ETH) Zurich.Google ScholarGoogle Scholar
  38. Eckart Zitzler and Simon Künzli. 2004. Indicator-based selection in multiobjective search. In Proceedings of the Conference on Parallel Problem Solving from Nature (PPSN’04). Lecture Notes in Computer Science, Vol 3242, Xin Yao et al. (Eds). Springer, Berlin, 832--842. DOI:http://dx.doi.org/10.1007/978-3-540-30217-9_84Google ScholarGoogle ScholarCross RefCross Ref
  39. Joshua D. Knowles and David W. Corne. 1999. The pareto archived evolution strategy: A new baseline algorithm for pareto multiobjective optimisation. In Proceedings of the Congress on Evolutionary Computation (CEC’99). IEEE, 98--105. DOI:http://dx.doi.org/10.1109/CEC.1999.781913Google ScholarGoogle Scholar
  40. Shaukat Ali, Lionel C. Briand, Hadi Hemmati, and Rajwinder Kaur Panesar-Walawege. 2010. A systematic review of the application and empirical investigation of search-based test case generation. IEEE Trans. Softw. Eng. 36, 6 (2010), 742--762. DOI:http://dx.doi.org/10.1109/TSE.2009.52Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Mark Harman and Bryan F. Jones. 2001. Search-based software engineering. Info. Softw. Technol. 43, 14 (2001), 833--839. DOI:http://dx.doi.org/10.1016/S0950-5849(01)00189-6Google ScholarGoogle ScholarCross RefCross Ref
  42. Joachim Karlsson. 1996. Software requirements prioritizing. In Proceedings of the 2nd International Conference on Requirements Engineering. IEEE, 110--116. DOI:http://dx.doi.org/10.1109/ICRE.1996.491435Google ScholarGoogle ScholarCross RefCross Ref
  43. ISO/IEC/IEEE. 2018. ISO/IEC/IEEE 29148:2018 Systems and software engineering – Life cycle processes – Requirements engineering.Google ScholarGoogle Scholar
  44. Yuanyuan Zhang, Mark Harman, and Soo Ling Lim. 2013. Empirical evaluation of search based requirements interaction management. Info. Softw. Technol. 55, 1 (2013), 126--152. DOI:http://dx.doi.org/10.1016/j.infsof.2012.03.007Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. Åsa G. Dahlstedt and Anne Persson. 2005. Requirements interdependencies: State of the art and future challenges. In Engineering and Managing Software Requirements, Springer, A. Aurum and C. Wohlin (Eds). 95—116. DOI:http://dx.doi.org/10.1007/3-540-28244-0_5Google ScholarGoogle Scholar
  46. Barry Boehm, Chris Abts, and Sunita Chulani. 2000. Software development cost estimation approaches—A survey. Ann. Softw. Eng. 10 (Nov. 2000), 177--205. DOI:http://dx.doi.org/10.1023/A:1018991717352Google ScholarGoogle Scholar
  47. Barry Boehm, Ray Madachy, and Bert Steece. 2000. Software cost estimation with Cocomo II with CDROM. Prentice Hall PTR, United States.Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Olaf Helmer, Bernice Brown, and Theodore Gordon. 1966. Social Technology. Basic Books, New York, NY.Google ScholarGoogle Scholar
  49. Andrew R. Gray and Stephen G. MacDonell. 1997. A comparison of techniques for developing predictive models of software metrics. Info. Softw. Technol. 39, 6 (1997), 425--437. DOI:http://dx.doi.org/10.1016/S0950-5849(96)00006-7Google ScholarGoogle ScholarCross RefCross Ref
  50. Jay Wright Forrester. 1997. Industrial dynamics. J. Operation. Res. Soc. 48, 10 (1997), 1037--1041. DOI:http://dx.doi.org/10.1057/palgrave.jors.2600946Google ScholarGoogle ScholarCross RefCross Ref
  51. Sunita Chulani, Barry Boehm, and Bert Steece. 1999. Bayesian analysis of empirical software engineering cost models. IEEE Trans. Softw. Eng. 25, 4 (1999), 573--583. DOI:http://dx.doi.org/10.1109/32.799958Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Abraham Charnes, William W. Cooper, and Edwardo Rhodes. 1978. Measuring the efficiency of decision making units. European J. Operation. Res. 2, 6 (1978), 429—444.Google ScholarGoogle ScholarCross RefCross Ref
  53. Chiang Kao and Shiang-Tai Liu. 2000. Fuzzy efficiency measures in data envelopment analysis. Fuzzy Sets Syst. 113, 3 (2000), 427--437. DOI:http://dx.doi.org/10.1016/S0165-0114(98)00137-7Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. William W. Cooper, Kyung Sam Park, and Gang Yu. 1999. Idea and ar-idea: Models for dealing with imprecise data in dea. Manage. Sci. 45, 4 (1999), 597--607. DOI:http://dx.doi.org/10.1287/mnsc.45.4.597Google ScholarGoogle Scholar
  55. Dennis Aigner, C. A. Knox Lovell, and Peter Schmidt. 1977. Formulation and estimation of stochastic frontier production function models. J. Econometr. 6, 1 (1977), 21--37.Google ScholarGoogle ScholarCross RefCross Ref
  56. Majid Azadi, Reza Farzipoor Saen, and Madjid Tavana. 2012. Supplier selection using chance-constrained data envelopment analysis with non-discretionary factors and stochastic data. Int. J. Industr. Syst. Eng. 10, 2 (2012), 167--196. DOI:http://dx.doi.org/10.1504/IJISE.2012.045179Google ScholarGoogle ScholarCross RefCross Ref
  57. Scott E. Atkinson and Paul W. Wilson. 1995. Comparing mean efficiency and productivity scores from small samples: A bootstrap methodology. J. Product. Anal. 6, 2 (1995), 137--152. DOI:http://dx.doi.org/10.1007/BF01073408Google ScholarGoogle ScholarCross RefCross Ref
  58. Chiang Kao and Shiang-Tai Liu. 2009. Stochastic data envelopment analysis in measuring the efficiency of taiwan commercial banks. Eur. J. Operation. Res. 196, 1 (2009), 312--322. DOI:http://dx.doi.org/10.1016/j.ejor.2008.02.023Google ScholarGoogle ScholarCross RefCross Ref
  59. R. G. Dyson and Estelle A. Shale. 2010. Data envelopment analysis, operational research and uncertainty. J. Operation. Res. Soc. 61, 1 (2010), 25--34. DOI:http://dx.doi.org/10.1057/jors.2009.145Google ScholarGoogle ScholarCross RefCross Ref
  60. Magne Jørgensen and Kjetil Moløkken-Østvold. 2006. How large are software cost overruns? A review of the 1994 chaos report. Info. Softw. Technol. 48, 4 (2006), 297--301. DOI:http://dx.doi.org/10.1016/j.infsof.2005.07.002Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Michael Bloch, Sven Blumberg, and Jürgen Laartz. 2012. Delivering large-scale it projects on time, on budget, and on value. In Harvard Business Review. 2--7.Google ScholarGoogle Scholar
  62. Boehm Barry. 1981. Software engineering economics. Prentice Hall, Upper Saddle River, NJ.Google ScholarGoogle Scholar
  63. Claes Wohlin, Per Runeson, Martin Höst, Magnus C. Ohlsson, Björn Regnell, and Anders Wesslén. 2012. Experimentation in Software Engineering. Springer Science 8 Business Media.Google ScholarGoogle ScholarCross RefCross Ref
  64. Barbara A. Kitchenham, Shari Lawrence Pfleeger, Lesley M. Pickard, Peter W. Jones, David C. Hoaglin, Khaled El Emam, and Jarrett Rosenberg. 2002. Preliminary guidelines for empirical research in software engineering. IEEE Trans. Softw. Eng. 28, 8 (2002), 721--734. DOI:http://dx.doi.org/10.1109/TSE.2002.1027796Google ScholarGoogle ScholarDigital LibraryDigital Library
  65. Soo Ling Lim and Anthony Finkelstein. 2011. Stakerare: Using social networks and collaborative filtering for large-scale requirements elicitation. IEEE Trans. Softw. Eng. 38, 3 (2012), 707--735. DOI:http://dx.doi.org/10.1109/TSE.2011.36Google ScholarGoogle Scholar
  66. Shuai Wang, Shaukat Ali, Tao Yue, Yan Li, and Marius Liaaen. 2016. A practical guide to select quality indicators for assessing pareto-based search algorithms in search-based software engineering. In Proceedings of the 38th International Conference on Software Engineering. IEEE, 631--642. DOI:http://dx.doi.org/10.1145/2884781.2884880Google ScholarGoogle ScholarDigital LibraryDigital Library
  67. Andrea Arcuri. 2013. It really does matter how you normalize the branch distance in search-based software testing. Softw. Test. Verificat. Reliabil. 23, 2 (2013), 119--147. DOI:http://dx.doi.org/10.1002/stvr.457Google ScholarGoogle ScholarCross RefCross Ref
  68. Barbara Kitchenham, Lech Madeyski, David Budgen, Jacky Keung, Pearl Brereton, Stuart Charters, Shirley Gibbs, and Amnart Pohthong. 2016. Robust statistical methods for empirical software engineering. Empir. Softw. Eng. 22 (2016), 579--630. DOI:http://dx.doi.org/10.1007/s10664-016-9437-5Google ScholarGoogle ScholarDigital LibraryDigital Library
  69. Andrea Arcuri and Lionel Briand. 2011. A practical guide for using statistical tests to assess randomized algorithms in software engineering. In Proceedings of the 33rd International Conference on Software Engineering (ICSE’11). IEEE, 1-10. DOI:http://dx.doi.org/10.1145/1985793.1985795Google ScholarGoogle ScholarDigital LibraryDigital Library
  70. R-Core-Team. 2017. R: A language and environment for statistical computing. R Foundation for Statistical Computing. Retrieved from https://www.r-project.org/.Google ScholarGoogle Scholar
  71. Indra M. Chakravarty, J. D. Roy, and Radha Govind Laha. 1967. Handbook of Methods of Applied Statistics. McGraw-Hill, New York, NY.Google ScholarGoogle Scholar
  72. William H. Kruskal and W. Allen Wallis. 1952. Use of ranks in one-criterion variance analysis. J. Amer. Stat. Assoc. 47, 260 (1952), 583--621. DOI:http://dx.doi.org/10.1080/01621459.1952.10483441Google ScholarGoogle ScholarCross RefCross Ref
  73. András Vargha and Harold D. Delaney. 2000. A critique and improvement of the cl common language effect size statistics of McGraw and Wong. J. Education. Behav. Stat. 25, 2 (2000), 101--132. DOI:http://dx.doi.org/10.3102/10769986025002101Google ScholarGoogle Scholar
  74. Olive Jean Dunn. 1964. Multiple comparisons using rank sums. Technometrics 6, 3 (1964), 241--252.Google ScholarGoogle ScholarCross RefCross Ref
  75. Carlo E. Bonferroni. 1936. Teoria statistica delle classi e calcolo delle probabilita. Libreria Internazionale Seeber.Google ScholarGoogle Scholar
  76. Maurice G. Kendall. 1938. A new measure of rank correlation. Biometrika 30, 1/2 (1938), 81--93. DOI:http://dx.doi.org/10.2307/2332226Google ScholarGoogle ScholarCross RefCross Ref
  77. Yuanyuan Zhang, Mark Harman, and S. Afshin Mansouri. 2007. The multi-objective next release problem. In Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation. ACM, 1129--1137. DOI:http://dx.doi.org/10.1145/1276958.1277179Google ScholarGoogle Scholar
  78. Shin Yoo and Mark Harman. 2007. Pareto efficient multi-objective test case selection. In Proceedings of the International Symposium on Software Testing and Analysis. 140--150. DOI:http://dx.doi.org/10.1145/1273463.1273483Google ScholarGoogle ScholarDigital LibraryDigital Library
  79. Aurora Ramirez, José Raúl Romero, and Sebastian Ventura. 2019. A survey of many-objective optimisation in search-based software engineering. J. Syst. Softw. 149 (2019), 382--395. DOI:http://dx.doi.org/10.1016/j.jss.2018.12.015Google ScholarGoogle ScholarCross RefCross Ref
  80. Wiem Mkaouer, Marouane Kessentini, Adnan Shaout, Patrice Koligheu, Slim Bechikh, Kalyanmoy Deb, and Ali Ouni. 2015. Many-objective software remodularization using nsga-iii. ACM Trans. Softw. Eng. Methodol. 24, 3 (2015), Article No. 17. DOI:http://dx.doi.org/10.1145/2729974Google ScholarGoogle ScholarDigital LibraryDigital Library
  81. David E. Goldberg and Robert Lingle. 1985. Alleles, loci, and the traveling salesman problem. In Proceedings of the International Conference on Genetic Algorithms and Their Applications. Lawrence Erlbaum, Hillsdale, NJ, 154--159.Google ScholarGoogle Scholar
  82. Andrea Arcuri and Gordon Fraser. 2011. On parameter tuning in search based software engineering. In Proceedings of the International Symposium on Search Based Software Engineering (SSBSE’11). M. B. Cohen and M. Ó Cinnéide (Eds). Springer, Berlin, 33--47.Google ScholarGoogle ScholarDigital LibraryDigital Library
  83. Kalyanmoy Deb and Ram Bhushan Agrawal. 1995. Simulated binary crossover for continuous search space. Technical Report IITK/ME/SMD-94027. Department of Mechanical Engineering, Indian Institute of Technology.Google ScholarGoogle Scholar
  84. Bingdong Li, Jinlong Li, Ke Tang, and Xin Yao. 2015. Many-objective evolutionary algorithms: A survey. ACM Comput. Surveys 48, 1 (2015), Article No. 13. DOI:http://dx.doi.org/10.1145/2792984Google ScholarGoogle ScholarDigital LibraryDigital Library
  85. Tom Gilb. 2005. Competitive engineering: A handbook for systems engineering, requirements engineering, and software engineering using planguage. Butterworth-Heinemann, Newton, MA.Google ScholarGoogle Scholar
  86. Pär Carlshamre, Kristian Sandahl, Mikael Lindvall, Björn Regnell, and Och Dag J. Nattz. 2001. An industrial survey of requirements interdependencies in software product release planning. In Proceedings of the International Symposium on Requirements Engineering. IEEE, 84--91. DOI:http://dx.doi.org/10.1109/ISRE.2001.948547Google ScholarGoogle ScholarCross RefCross Ref
  87. Klaus Pohl. 1996. Process-centered requirements engineering. John Wiley 8 Sons, Inc., New York, NY.Google ScholarGoogle Scholar
  88. Johan Dag, Björn Regnell, Pär Carlshamre, Michael Andersson, and Joachim Karlsson. 2002. A feasibility study of automated natural language requirements analysis in market-driven development. Require. Eng. 7, 1 (2002), 20--33. DOI:http://dx.doi.org/10.1007/s007660200002Google ScholarGoogle Scholar
  89. Faiza Allah Bukhsh, Zaharah Allah Bukhsh, and Maya Daneva. 2020. A systematic literature review on requirement prioritization techniques and their empirical evaluation. Comput. Standards Interfaces 69 (2020), 103389. DOI:http://dx.doi.org/10.1016/j.csi.2019.103389Google ScholarGoogle ScholarCross RefCross Ref
  90. Aimin Zhou, BoYang Qu, Hui Li, ShiZheng Zhao, Ponnuthurai Nagaratnam Suganthan, and Qingfu Zhang. 2011. Multiobjective evolutionary algorithms: A survey of the state of the art. Swarm Evolution. Comput. 1, 1 (2011), 32--49. DOI:http://dx.doi.org/10.1016/j.swevo.2011.03.001Google ScholarGoogle ScholarCross RefCross Ref
  91. Mark Harman. 2010. Why the virtual nature of software makes it ideal for search based optimization. In Fundamental Approaches to Software Engineering, David S. Rosenblum and Gabriele Taentzer (Eds). Springer, Berlin, 1--12. DOI:http://dx.doi.org/10.1007/978-3-642-12029-9_1Google ScholarGoogle Scholar
  92. Anthony J. Bagnall, Victor J. Rayward-Smith, and Ian M. Whittley. 2001. The next release problem. Info. Softw. Technol. 43, 14 (2001), 883--890. DOI:http://dx.doi.org/10.1016/S0950-5849(01)00194-XGoogle ScholarGoogle ScholarCross RefCross Ref
  93. E. Robert Bixby, Mary Fenelon, Zonghao Gu, Ed Rothberg, and Roland Wunderling, 1999. Mip: Theory and practice—closing the gap. In Proceedings of the Conference on System Modeling and Optimization (CSMO’99). Springer, M. J. D. Powell and S. Scholtes S. (Eds). 19--49. DOI:http://dx.doi.org/10.1007/978-0-387-35514-6_2Google ScholarGoogle Scholar
  94. Thomas A. Feo and Mauricio G. C. Resende. 1995. Greedy randomized adaptive search procedures. J. Global Optimiz. 6, 2 (1994), 109--134.Google ScholarGoogle ScholarCross RefCross Ref
  95. Moshood Omolade Saliu and Guenther Ruhe. 2007. 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 Symposium on the Foundations of Software Engineering. ACM, 105--114. DOI:http://dx.doi.org/10.1145/1287624.1287641Google ScholarGoogle ScholarDigital LibraryDigital Library
  96. Y. V. Haimes. 1971. On a bicriterion formulation of the problems of integrated system identification and system optimization. IEEE Trans. Syst. Man Cybernet. 1, 3 (1971), 296--297. DOI:http://dx.doi.org/10.1109/TSMC.1971.4308298Google ScholarGoogle Scholar
  97. A. Charan Kumari, K. Srinivas, and M. P. Gupta. 2012. Software requirements selection using quantum-inspired elitist multi-objective evolutionary algorithm. In Proceedings of the International Conference on Advances in Engineering, Science and Management (ICAESM’12). IEEE, 782--787. DOI:http://dx.doi.org/10.1109/CONSEG.2012.6349487Google ScholarGoogle Scholar
  98. Des Greer and Guenther Ruhe. 2004. Software release planning: an evolutionary and iterative approach. Info. Softw. Technol. 46, 4 (2004), 243--253. DOI:http://dx.doi.org/10.1016/j.infsof.2003.07.002Google ScholarGoogle ScholarCross RefCross Ref
  99. Chen Li, Marjan Van denAkker, Sjaak Brinkkemper, and Guido Diepen. 2010. An integrated approach for requirement selection and scheduling in software release planning. Require. Eng. 15, 4 (2010), 375--396. DOI:http://dx.doi.org/10.1007/s00766-010-0104-xGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  100. Juan Li, Liming Zhu, Ross Jeffery, Yan Liu, He Zhang, Qing Wang, and Mingshu Li. 2012. An initial evaluation of requirements dependency types in change propagation analysis. In Proceedings of the 16th International Conference on Evaluation 8 Assessment in Software Engineering (EASE’12). IET, 62--71. DOI:http://dx.doi.org/10.1049/ic.2012.0009Google ScholarGoogle Scholar
  101. Paolo Tonella, Angelo Susi, and Francis Palma. 2013. Interactive requirements prioritization using a genetic algorithm. Info. Softw. Technol. 55, 1 (2013), 173--187. DOI:http://dx.doi.org/10.1016/j.infsof.2012.07.003Google ScholarGoogle ScholarDigital LibraryDigital Library
  102. Huihui Zhang, Shuai Wang, Tao Yue, Shaukat Ali, and Chao Liu. 2017. Search and similarity based selection of use case scenarios: An empirical study. Empir. Softw. Eng. 23, 1 (2017), 87--164. DOI:http://dx.doi.org/10.1007/s10664-017-9500-xGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  103. Muhammad Aasem, Muhammad Ramzan, and Arfan Jaffar. 2010. Analysis and optimization of software requirements prioritization techniques. In Proceedings of the International Conference on Information and Emerging Technologies (ICIET’10). IEEE, 1--6. DOI:http://dx.doi.org/10.1109/ICIET.2010.5625687Google ScholarGoogle ScholarCross RefCross Ref
  104. Paula Laurent, Jane Cleland-Huang, and Chuan Duan. 2007. Towards automated requirements triage. In Proceedings of the 15th IEEE International Requirements Engineering Conference. IEEE, 131--140. DOI:http://dx.doi.org/10.1109/RE.2007.63Google ScholarGoogle ScholarCross RefCross Ref
  105. Claes Wohlin and Aybüke Aurum. 2005. Engineering and Managing Software Requirements. Springer Science 8 Business Media, Berlin.Google ScholarGoogle Scholar
  106. Paolo Avesani, Cinzia Bazzanella, Anna Perini, and Angelo Susi. 2005. Facing scalability issues in requirements prioritization with machine learning techniques. In Proceedings of the 13th IEEE International Conference on Requirements Engineering (RE'05). IEEE, 297--305. DOI:http://dx.doi.org/10.1109/RE.2005.30Google ScholarGoogle ScholarDigital LibraryDigital Library
  107. Gerald Kotonya and Ian Sommerville. 1998. Requirements engineering: Processes and techniques. John Wiley 8 Sons, Chichester.Google ScholarGoogle ScholarDigital LibraryDigital Library
  108. Persis Voola and A. Vinaya Babu. 2012. Requirements Uncertainty Prioritization Approach: A Novel Approach for Requirements Prioritization. Software Engineering: An International Journal (SEIJ) 2, No. 2 (2012), 37--49.Google ScholarGoogle Scholar
  109. Roseanna W. Saaty. 1987. The analytic hierarchy process—What it is and how it is used. Math. Model. 9, 3–5 (1987), 161--176. DOI:http://dx.doi.org/10.1016/0270-0255(87)90473-8Google ScholarGoogle ScholarCross RefCross Ref
  110. Vittorio Cortellessa, Ivica Crnkovic, Fabrizio Marinelli, and Pasqualina Potena. 2008. Experimenting the automated selection of cots components based on cost and system requirements. J. Univers. Comput. Sci. 14, 8 (2008), 1228--1255.Google ScholarGoogle Scholar
  111. Dean Leffingwell and Don Widrig. 2000. Managing Software Requirements: A Unified Approach. Addison-Wesley Professional, Boston.Google ScholarGoogle ScholarDigital LibraryDigital Library
  112. Joachim Karlsson, Claes Wohlin, and Björn Regnell. 1998. An evaluation of methods for prioritizing software requirements. Info. Softw. Technol. 39, 14–15, 939--947. DOI:http://dx.doi.org/10.1016/S0950-5849(97)00053-0Google ScholarGoogle ScholarCross RefCross Ref
  113. Raja Masadeh, Amjad Hudaib, and Abdullah Alzaqebah. 2018. Wgw: A hybrid approach based on whale and grey wolf optimization algorithms for requirements prioritization. Adv. Syst. Sci. Appl. 18, 2 (2018), 63--83. DOI:http://dx.doi.org/10.25728/assa.2018.18.2.576Google ScholarGoogle Scholar
  114. Seyedali Mirjalili and Andrew Lewis. 2016. The whale optimization algorithm. Adv. Eng. Softw. 95 (2016), 51--67. DOI:http://dx.doi.org/10.1016/j.advengsoft.2016.01.008Google ScholarGoogle ScholarDigital LibraryDigital Library
  115. Seyedali Mirjalili, Seyed Mohammad Mirjalili, and Andrew Lewis. 2014. Grey wolf optimizer. Adv. Eng. Softw. 69 (2014), 46--61. DOI:http://dx.doi.org/10.1016/j.advengsoft.2013.12.007Google ScholarGoogle ScholarDigital LibraryDigital Library
  116. Abdullah Alzaqebah, Raja Masadeh, and Amjad Hudaib. 2018. Whale optimization algorithm for requirements prioritization. In Proceedings of the 9th International Conference on Information and Communication Systems (ICICS’18). IEEE, 84--89. DOI:http://dx.doi.org/10.1109/IACS.2018.8355446Google ScholarGoogle ScholarCross RefCross Ref
  117. R. Vijay Anand and M. Dinakaran. 2018. Whalerank: An optimisation based ranking approach for software requirements prioritisation. International J. Environ. Waste Manage. 21, 1 (2018), 1--21. DOI:http://dx.doi.org/10.1504/IJEWM.2018.091307Google ScholarGoogle ScholarCross RefCross Ref
  118. Ankita Gupta and Chetna Gupta. 2018. CDBR: A semi-automated collaborative execute-before-after dependency-based requirement prioritization approach. J. King Saud University-Comput. Info. Sci. Available online 7 October 2018 (Article In Process). DOI:https://doi.org/10.1016/j.jksuci.2018.10.004Google ScholarGoogle Scholar
  119. Heena Ahuja and Usha Batra, 2018. Performance enhancement in requirement prioritization by using least-squares-based random genetic algorithm. In Innovations in Computational Intelligence, Springer, Singapore, B. Panda, S. Sharma, and U. Batra (Eds). 251--263. DOI:http://dx.doi.org/10.1007/978-981-10-4555-4_17Google ScholarGoogle Scholar
  120. Man Zhang, Tao Yue, Shaukat Ali, Bran Selic, Oscar Okariz, Roland Norgre, and Karmele Intxausti. 2018. Specifying uncertainty in use case models. J. Syst. Softw. 144 (2018), 573--603. DOI:http://dx.doi.org/10.1016/j.jss.2018.06.075Google ScholarGoogle ScholarDigital LibraryDigital Library
  121. Betty H. C. Cheng, Pete Sawyer, Nelly Bencomo, and Jon Whittle. 2009. A goal-based modeling approach to develop requirements of an adaptive system with environmental uncertainty. In Proceedings of the International Conference on Model Driven Engineering Languages and Systems. Springer, Berlin, 468--483. DOI:http://dx.doi.org/10.1007/978-3-642-04425-0_36Google ScholarGoogle ScholarDigital LibraryDigital Library
  122. Jon Whittle, Pete Sawyer, Nelly Bencomo, Betty H. C. Cheng, and Jean-Michel Bruel. 2010. Relax: A language to address uncertainty in self-adaptive systems requirement. Require. Eng. 15, 2 (2010), 177--196. DOI:http://dx.doi.org/10.1007/s00766-010-0101-0Google ScholarGoogle ScholarDigital LibraryDigital Library
  123. Pete Sawyer, Nelly Bencomo, Jon Whittle, Emmanuel Letier, and Anthony Finkelstein. 2010. Requirements-aware systems: A research agenda for re for self-adaptive systems. In Proceedings of the 18th IEEE International Requirements Engineering Conference. IEEE, 95--103. DOI:http://dx.doi.org/10.1109/RE.2010.21Google ScholarGoogle ScholarDigital LibraryDigital Library
  124. Rick Salay, Marsha Chechik, Jennifer Horkoff, and Alessio Di Sandro. 2013. Managing requirements uncertainty with partial models. Require. Eng. 18, 2 (2013), 107--128. DOI:http://dx.doi.org/10.1007/s00766-013-0170-yGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  125. Rick Salay, Michalis Famelis, and Marsha Chechik. 2012. Language independent refinement using partial modeling. In Fundamental Approaches to Software Engineering. Fase 2012. Lecture Notes in Computer Science, Vol 7212, J. de Lara and A. Zisman (Eds). Springer, Berlin, 224--239. DOI:http://dx.doi.org/10.1007/978-3-642-28872-2_16Google ScholarGoogle ScholarDigital LibraryDigital Library
  126. Michalis Famelis and Stephanie Santosa. 2013. Mav-Vis: A notation for model uncertainty. In Proceedings of the 5th International Workshop on Modeling in Software Engineering (MiSE’13). IEEE, 7--12. DOI:http://dx.doi.org/10.1109/MiSE.2013.6595289Google ScholarGoogle ScholarCross RefCross Ref
  127. Naeem Esfahani and Sam Malek. 2013. Uncertainty in self-adaptive software systems. In Software Engineering for Self-Adaptive Systems II, R. de Lemos, H. Giese, H. A. Müller. and M. Shaw (Eds). Springer, Berlin, 214--238. DOI:http://dx.doi.org/10.1007/978-3-642-35813-5_9Google ScholarGoogle Scholar
  128. Tao Yue, Lionel C. Briand, and Yvan Labiche. 2015. aToucan: An automated framework to derive uml analysis models from use case models. ACM Trans. Softw. Eng. Methodol. 24, 3 (2015), Article No.: 13. DOI:http://dx.doi.org/10.1145/2699697Google ScholarGoogle ScholarDigital LibraryDigital Library
  129. Tao Yue, Lionel C. Briand, and Yvan Labiche. 2013. Facilitating the transition from use case models to analysis models: Approach and experiments. ACM Trans. Softw. Eng. Methodol. 22, 1 (2013), Article No.: 5 DOI:http://dx.doi.org/10.1145/2430536.2430539Google ScholarGoogle ScholarDigital LibraryDigital Library
  130. Man Zhang, Bran Selic, Shaukat Ali, Tao Yue, Oscar Okariz, and Roland Norgren, 2016. Understanding uncertainty in cyber-physical systems: A conceptual model. In Proceedings of the Modelling Foundations and Applications (ECMFA’16). Lecture Notes in Computer Science, Vol 9764, A. Wąsowski and H. Lönn H. (Eds). Springer, Cham, 247--264. DOI:http://dx.doi.org/10.1007/978-3-319-42061-5_16Google ScholarGoogle Scholar
  131. Ahmed Al-Emran, Puneet Kapur, Dietmar Pfahl, and Guenther Ruhe. 2010. Studying the impact of uncertainty in operational release planning—An integrated method and its initial evaluation. Info. Softw. Technol. 52, 4 (2010), 446--461. DOI:http://dx.doi.org/10.1016/j.infsof.2009.11.003Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Uncertainty-wise Requirements Prioritization with Search

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM Transactions on Software Engineering and Methodology
      ACM Transactions on Software Engineering and Methodology  Volume 30, Issue 1
      Continuous Special Section: AI and SE
      January 2021
      444 pages
      ISSN:1049-331X
      EISSN:1557-7392
      DOI:10.1145/3446626
      • Editor:
      • Mauro Pezzè
      Issue’s Table of Contents

      Copyright © 2020 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 31 December 2020
      • Revised: 1 June 2020
      • Accepted: 1 June 2020
      • Received: 1 November 2019
      Published in tosem Volume 30, Issue 1

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format .

    View HTML Format