Skip to main content

ReproTizer: A Fully Implemented Software Requirements Prioritization Tool

  • Chapter
Book cover Transactions on Computational Collective Intelligence XXII

Part of the book series: Lecture Notes in Computer Science ((TCCI,volume 9655))

Abstract

Before software is developed, requirements are elicited. These requirements could be over-blown or under-estimated in a way that meeting the expectations of stakeholders becomes a challenge. To develop a software that precisely meets the expectations of stakeholders, elicited requirements need to be prioritized. When requirements are prioritized, contract breaches such as budget over-shoot, exceeding delivery time and missing out important requirements during implementation can be totally avoided. A number of techniques have been developed but these techniques do not addresses some of the crucial issues associated with real-time prioritization of software requirements such as computational complexities and high time consumption rate, inaccurate rank results, inability of dealing with uncertainties or missing weights of requirements, scalability problems and rank update issues. To address these problems, a tool known as ReproTizer (Requirements Prioritizer) is proposed to engender real-time prioritization of software requirements. ReproTizer consist of a WS (Weight Scale) which avails project stakeholders the ability to perceive the influence, different requirements weights may have on the final results. The WS combines a single relative weight decision matrices to determine the weight vectors of requirements with an aggregation operator (AO) which computes the global weights of requirements. The tool was tested for scalability, computational complexity, accuracy, time consumption and rank updates. Results of the performance evaluation showed that the tool is highly reliable (98.89 % accuracy), scalable (prioritized over 1000 requirements), less time consumption and complexity ranging from 500–29,804 milliseconds (ms) of total prioritization time and able to automatically update ranks whenever changes occurs. Requirements prioritization, a multi-criteria decision making task is therefore an integral aspect of the requirements engineering phase of the development life cycle phases. It is used for software release planning and leads to the development of software systems based on the preferential requirements of stakeholders.

Submitted to Transactions on Computational Collective Intelligence (TCCI) Journal.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  • Perini, A., Ricca, F., Susi, A., Bazzanella, C.: An empirical study to compare the accuracy of AHP and CBRanking techniques for requirements prioritization. In: Proceedings of the Fifth International Workshop on Comparative Evaluation in Requirements Engineering, pp. 23–35. IEEE (2007)

    Google Scholar 

  • Ruhe, G., Eberlein, A., Pfahl, D.: Trade-off analysis for requirements selection. Int. J. Softw. Eng. Knowl. Eng. 13(4), 345–366 (2003)

    Article  Google Scholar 

  • Ahl, V.: An experimental comparison of five prioritization methods–investigating ease of use, accuracy and scalability. Master’s thesis, School of Engineering, Blekinge Institute of Technology, Sweden, August 2005

    Google Scholar 

  • Berander, P., Khan, K.A., Lehtola, L.: Towards a research framework on requirements prioritization. In: Proceedings of Sixth Conference on Software Engineering Research and Practice in Sweden (SERPS 2006), October 2006

    Google Scholar 

  • Kobayashi, M., Maekawa, M.: Need-based requirements change management. In: Proceedings of ECBS 2001 Eighth Annual IEEE International Conference and Workshop on the Engineering of Computer Based Systems, pp. 171–178 (2001)

    Google Scholar 

  • Kassel, N.W., Malloy, B.A.: An approach to automate requirements elicitation and specification. In: Proceedings of the 7th IASTED International Conference on Software Engineering and Applications, Marina Del Rey, CA, USA, 3–5 November 2003

    Google Scholar 

  • Perini, A., Susi, A., Avesani, P.: A machine learning approach to software requirements prioritization. IEEE Trans. Softw. Eng. 39(4), 445–460 (2013)

    Article  Google Scholar 

  • Tonella, P., Susi, A., Palma, F.: Interactive requirements prioritization using a genetic algorithm. Inf. Softw. Technol. Inf. Softw. Technol. 55, 173–187 (2012)

    Article  Google Scholar 

  • Babar, M.I., Ghazali, M., Jawawi, D.N., Shamsuddin, S.M., Ibrahim, N.: PHandler: an expert system for a scalable software requirements prioritization process. Knowl.-Based Syst. 84, 179–202 (2015)

    Article  Google Scholar 

  • Kaur, G., Bawa, S.: A survey of requirement prioritization methods. Int. J. Eng. Res. Technol. 2(5), 958–962 (2013)

    Google Scholar 

  • Voola, P., Babu, A.: Requirements uncertainty prioritization approach: a novel approach for requirements prioritization. Softw. Eng. Int. J. (SEIJ) 2(2), 37–49 (2012)

    Google Scholar 

  • Thakurta, R.: A framework for prioritization of quality requirements for inclusion in a software project. Softw. Qual. J. 21, 573–597 (2012)

    Article  Google Scholar 

  • Ramzan, M., Jaffar, A., Shahid, A.: Value based intelligent requirement prioritization (VIRP): expert driven fuzzy logic based prioritization technique. Int. J. Innovative Comput. 7(3), 1017–1038 (2011)

    Google Scholar 

  • Perini, A., Ricca, F., Susi, A.: Tool-supported requirements prioritization: comparing the AHP and CBRank method. Inf. Softw. Technol. 51, 1021–1032 (2009)

    Article  Google Scholar 

  • Greer, D., Ruhe, G.: Software release planning: an evolutionary and iterative approach. Inf. Softw. Technol. 46(4), 243–253 (2004)

    Article  Google Scholar 

  • Franceschini, F., Rupil, A.: Rating scales and prioritization in QFD. Int. J. Qual. Reliab. Manage. 16(1), 85–97 (1999)

    Article  Google Scholar 

  • Karlsson, J., Wohlin, C., Regnell, B.: An evaluation of methods for prioritizing software requirements. Inf. Softw. Technol. 39(14), 939–947 (1998)

    Article  Google Scholar 

  • Kukreja, N., Payyavula, S., Boehm, B., Padmanabhuni, S.: Value-based requirements prioritization: usage experiences. Procedia Comput. Sci. 16, 806–813 (2012)

    Article  Google Scholar 

  • Kukreja, N.: Decision theoretic requirements prioritization: a two-step approach for sliding towards value realization. In: Proceedings of the 2013 International Conference on Software Engineering, pp. 1465–1467. IEEE Press (2013)

    Google Scholar 

  • Dabbagh, M., Lee, S.: An approach for integrating the prioritization of functional and nonfunctional requirements. Sci. World J. (2014)

    Google Scholar 

  • Voola, P., Vinaya Babu, A.: Interval evidential reasoning algorithm for requirements prioritization. In: Satapathy, S.C., Avadhani, P.S., Abraham, A. (eds.) Proceedings of the InConINDIA 2012. AISC, vol. 132, pp. 915–922. Springer, Heidelberg (2012)

    Google Scholar 

  • Aasem, M., Ramzan, M., Jaffar, A.: Analysis and optimization of software requirements prioritization techniques. In: 2010 International Conference on Information and Emerging Technologies (ICIET), pp. 1–6. IEEE (2010)

    Google Scholar 

  • Racheva, Z., Daneva, M., Herrmann, A., Wieringa, R.: A conceptual model and process for client-driven agile requirements prioritization. In: 2010 Fourth International Conference on Research Challenges in Information Science (RCIS), pp. 287–298. IEEE (2010)

    Google Scholar 

  • Otero, C., Dell, E., Qureshi, A., Otero, L.: A quality-based requirement prioritization framework using binary inputs. In: 2010 Fourth Asia International Conference on Mathematical/Analytical Modelling and Computer Simulation (AMS), pp. 187–192. IEEE (2010)

    Google Scholar 

  • Carod, N., Cechich, A.: Cognitive-driven requirements prioritization: a case study. In: 2010 9th IEEE International Conference on Cognitive Informatics (ICCI), pp. 75–82. IEEE (2010)

    Google Scholar 

  • Gaur, V., Soni, A., Bedi, P.: An agent-oriented approach to requirements engineering. In: 2010 IEEE 2nd International Advance Computing Conference (IACC), pp. 449–454 (2010)

    Google Scholar 

  • Beg, M., Verma, R., Joshi, A.: Reduction in number of comparisons for requirement prioritization using B-Tree. In: IEEE International Advance Computing Conference, 2009, IACC 2009, pp. 340–344. IEEE (2009)

    Google Scholar 

  • Hatton, S.: Choosing the right prioritisation method. In: 19th Australian Conference on Software Engineering, 2008, ASWEC 2008, pp. 517–526. IEEE (2008)

    Google Scholar 

  • Daneva, M., Herrmann, A.: Requirements prioritization based on benefit and cost prediction: a method classification framework. In: EUROMICRO-SEAA, pp. 240–247. IEEE (2008a)

    Google Scholar 

  • Beg, R., Abbas, Q., Verma, R.P.: An approach for requirement prioritization using b-tree. In: First International Conference on Emerging Trends in Engineering and Technology, 2008, ICETET 2008, pp. 1216–1221. IEEE (2008)

    Google Scholar 

  • Laurent, P., Cleland-Huang, J., Duan, C.: Towards automated requirements triage. In: 15th IEEE International Requirements Engineering Conference, 2007, RE 2007, pp. 131–140 (2007)

    Google Scholar 

  • Avesani, P., Bazzanella, C., Perini, A., Susi, A.: Facing scalability issues in requirements prioritization with machine learning techniques. In: RE 2005, pp. 297–306 (2005)

    Google Scholar 

  • Avesani, P., Bazzanella, C., Perini, A., Susi, A.: Supporting the requirements prioritization process: a machine learning approach. In: Proceedings of 16th International Conference on Software Engineering and Knowledge Engineering, SEKE 2004, pp. 306–311. KSI Press, Banff (2004)

    Google Scholar 

  • Moisiadis, F.: The Fundamentals of prioritizing requirements. In: Proceedings of Systems Engineering Test and Evaluation Conference, SETE 2002 (2002)

    Google Scholar 

  • Aaron, K.M., Paul, N., Anton, A.I.: Prioritizing legal requirements. In: Second International Workshop on Requirements Engineering and Law, 2009, RELAW 2009, pp. 27–32. IEEE (2009)

    Google Scholar 

  • Svahnberg, M., Karasira, A.: A study on the importance of order in requirements prioritisation. In: 2009 Third International Workshop on Software Product Management (IWSPM), pp. 35–41. IEEE (2009)

    Google Scholar 

  • Tonella, P., Susi, A., Palma, F.: Using interactive GA for requirements prioritization. In: 2010 Second International Symposium on Search Based Software Engineering (SSBSE), pp. 57–66. IEEE (2010)

    Google Scholar 

  • Bebensee, T., van de Weerd, I., Brinkkemper, S.: Binary priority list for prioritizing software requirements. In: Wieringa, R., Persson, A. (eds.) REFSQ 2010. LNCS, vol. 6182, pp. 67–78. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  • Duan, C., Laurent, P., Cleland-Huang, J., Kwiatkowski, C.: Towards automated requirements prioritization and triage. Requir. Eng. 14(2), 73–89 (2009)

    Article  Google Scholar 

  • Carod, N., Cechich, A.: Requirements Prioritization Techniques (2001)

    Google Scholar 

  • Karlsson, L., Thelin, T., Regnell, B., Berander, P., Wohlin, C.: Pair-wise comparisons versus planning game partitioning-experiments on requirements prioritisation techniques. Empir. Softw. Eng. 12(1), 3–33 (2007)

    Article  Google Scholar 

  • Lehtola, L., Kauppinen, M.: Suitability of requirements prioritization methods for market-driven software product development. Softw. Process Improv. Pract. 11(1), 7–19 (2006)

    Article  Google Scholar 

  • Berander, P., Andrews, A.: Requirements prioritization. In: Aurum, A., Wohlin, C. (eds.) Engineering and Managing Software Requirements, pp. 69–94. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  • Lehtola, L., Kauppinen, M., Kujala, S.: Requirements prioritization challenges in practice. In: Bomarius, F., Iida, H. (eds.) PROFES 2004. LNCS, vol. 3009, pp. 497–508. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  • Karlsson, J., Ryan, K.: A cost-value approach for prioritizing requirements. IEEE Softw. 14, 67–74 (1997)

    Article  Google Scholar 

  • Saaty, T.L.: The Analytic Hierarchy Process. McGraw-Hill, New York (1980)

    MATH  Google Scholar 

  • Herrmann, A., Daneva, M.: Requirements prioritization based on benefit and cost prediction: an agenda for future research. In: RE 2008, pp. 125–134. IEEE Computer Society (2008b)

    Google Scholar 

  • Wiegers, K.E.: First things first: prioritizing requirements. Softw. Dev. 7(9) (1999). www.processimpact.com/pubs.shtml#requirements

  • Regnell, B., Host, M., Dag, J.: An industrial case study on distributed prioritization in market-driven requirements engineering for packaged software. Requir. Eng. 6, 51–62 (2001)

    Article  MATH  Google Scholar 

  • Edwin, D.: Quality function deployment for large systems. In: International Engineering Management Conference 1992, Eatontown, NJ, USA, 25–28 October 1992

    Google Scholar 

  • Olson, H., Rodgers, T.: Multi-criteria preference analysis for systematic requirements negotiation. In: COMPSAC 2002, pp. 887–892 (2002)

    Google Scholar 

  • Berander, P.: Prioritization of Stakeholder Needs in Software Engineering. Understanding and Evaluation. Licenciate Thesis, Blekinge Institute of Technology, Sweden, Licentiate Series, 12 (2004)

    Google Scholar 

  • Karlsson, J., Olsson, S., Ryan, K.: Improved practical support for large scale requirements prioritizing. J. Requir. Eng. 2, 51–67 (1997)

    Article  Google Scholar 

  • Peng, S.: Sample selection: an algorithm for requirements prioritization. ACM (2008)

    Google Scholar 

  • Racheva, Z., Daneva, M., Buglione, L.: Supporting the dynamic reprioritization of requirements in agile development of software products. In: Second International Workshop on Software Product Management, 2008, IWSPM 2008, pp. 49–58. IEEE (2008)

    Google Scholar 

  • Lim, S.L., Finkelstein, A.: StakeRare: using social networks and collaborative filtering for large-scale requirements elicitation. IEEE Trans. Softw. Eng. 38(3), 707–735 (2012)

    Article  Google Scholar 

  • Kyosev, T.H.: Comparing Requirements Prioritization Methods in Industry: A study of the Effectiveness of the Ranking Method, the Binary Search Tree Method and the Wiegers Matrix. MSc Thesis, Negometrix BV, Germany (2014)

    Google Scholar 

  • Babar, M., Ramzan, M., Ghayyur, S.: Challenges and future trends in software requirements prioritization. In: 2011 International Conference on Computer Networks and Information Technology (ICCNIT), pp. 319–324. IEEE (2011)

    Google Scholar 

  • Gruenbacher, P.: Collaborative requirements negotiation with easy winwin. In: Proceedings of 2nd International Workshop on the Requirements Engineering Process, Greenwich London, September 2000

    Google Scholar 

  • Lima, D.C., Freitas, F., Campos, G., Souza, J.: A fuzzy approach to requirements prioritization. In: Cohen, M.B., Ó Cinnéide, M. (eds.) SSBSE 2011. LNCS, vol. 6956, pp. 64–69. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  • Barney, S., Aurum, A., Wohlin, C.: Quest for a silver bullet: creating software product value through requirements selection. In: 32nd EUROMICRO Conference on Software Engineering and Advanced Applications, SEAA 2006. pp. 274–281. IEEE (2006)

    Google Scholar 

  • Karlsson, L., Berander, P., Regnell, B., Wohlin,C.: Requirements prioritization: an experiment on exhaustive pair wise comparisons versus planning game partitioning. In: Proceedings of Empirical Assessment in Software Engineering (EASE 2004), Edinburgh, Scotland (2004)

    Google Scholar 

  • Grunbacher, P., Halling, M., Biffl, S., Kitapci, H., Boehm, B.: Repeatable quality assurance techniques for requirements negotiations. In: Proceedings of the 36th Annual Hawaii International Conference on System Sciences, 9 p. IEEE (2003)

    Google Scholar 

  • Ramzan, M., Arfan, J., AlIliad, I., Anwar, S., Shahid, A.: Value based fuzzy requirement prioritization and its evaluation framework. In: Fourth International Conference on Innovative Computing, Information and Control. pp. 1464–1468 (2009)

    Google Scholar 

  • Achimugu, P., Selamat, A., Ibrahim, R., Mahrin, M.N.R.: A systematic literature review of software requirements prioritization research. Inf. Softw. Technol. 56(6), 568–585 (2014)

    Google Scholar 

  • Lim, S.L., Damian, D., Finkelstein, A.: StakeSource 2.0: using social networks of stakeholders to identify and prioritise requirements. In: Proceedings of the 33rd International Conference on Software Engineering, pp. 1022–1024. ACM (2011)

    Google Scholar 

  • Soni, A.: An evaluation of requirements prioritisation methods. Int. J. Innovative Res. Adv. Eng. 1(10), 402–411 (2014)

    Google Scholar 

Download references

Acknowledgement

The Universiti Teknologi Malaysia (UTM) under Research University funding vot number 02G31 and Ministry of Higher Education (MOHE) Malaysia under vot number 4F550 are hereby sincerely acknowledged for providing the research funds to complete this research.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ali Selamat .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer-Verlag Berlin Heidelberg

About this chapter

Cite this chapter

Achimugu, P., Selamat, A., Ibrahim, R. (2016). ReproTizer: A Fully Implemented Software Requirements Prioritization Tool. In: Nguyen, N.T., Kowalczyk, R. (eds) Transactions on Computational Collective Intelligence XXII. Lecture Notes in Computer Science(), vol 9655. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-662-49619-0_5

Download citation

  • DOI: https://doi.org/10.1007/978-3-662-49619-0_5

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-662-49618-3

  • Online ISBN: 978-3-662-49619-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics