RePizer: a framework for prioritization of software requirements

The standard software development life cycle heavily depends on requirements elicited from stakeholders. Based on those requirements, software development is planned and managed from its inception phase to closure. Due to time and resource constraints, it is imperative to identify the high-priority requirements that need to be considered first during the software development process. Moreover, existing prioritization frameworks lack a store of historical data useful for selecting the most suitable prioritization technique of any similar project domain. In this paper, we propose a framework for prioritization of software requirements, called RePizer, to be used in conjunction with a selected prioritization technique to rank software requirements based on defined criteria such as implementation cost. RePizer assists requirements engineers in a decision-making process by retrieving historical data from a requirements repository. RePizer also provides a panoramic view of the entire project to ensure the judicious use of software development resources. We compared the performance of RePizer in terms of expected accuracy and ease of use while separately adopting two different prioritization techniques, planning game (PG) and analytical hierarchy process (AHP). The results showed that RePizer performed better when used in conjunction with the PG technique.

[1]  Sai Peck Lee,et al.  Functional and non-functional requirements prioritization: empirical evaluation of IPA, AHP-based, and HAM-based approaches , 2015, Soft Computing.

[2]  Sai Peck Lee,et al.  An Approach for Prioritizing NFRs According to Their Relationship with FRs , 2015 .

[3]  Oscar Pastor,et al.  Empirical research methodologies and studies in Requirements Engineering: How far did we come? , 2014, J. Syst. Softw..

[4]  Ali Selamat,et al.  A systematic literature review of software requirements prioritization research , 2014, Inf. Softw. Technol..

[5]  Sai Peck Lee,et al.  Application of Hybrid Assessment Method for Priority Assessment of Functional and Non-Functional Requirements , 2014, 2014 International Conference on Information Science & Applications (ICISA).

[6]  Sai Peck Lee,et al.  An Approach for Integrating the Prioritization of Functional and Nonfunctional Requirements , 2014, TheScientificWorldJournal.

[7]  Richard E. Fairley,et al.  Guide to the Software Engineering Body of Knowledge (SWEBOK(R)): Version 3.0 , 2014 .

[8]  Sai Peck Lee,et al.  A Consistent Approach for Prioritizing System Quality Attributes , 2013, 2013 14th ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing.

[9]  Anna Perini,et al.  A Machine Learning Approach to Software Requirements Prioritization , 2013, IEEE Transactions on Software Engineering.

[10]  Claes Wohlin,et al.  Experimentation in Software Engineering , 2012, Springer Berlin Heidelberg.

[11]  Rita Almeida Ribeiro,et al.  Hybrid assessment method for software engineering decisions , 2011, Decis. Support Syst..

[12]  Inge van de Weerd,et al.  Binary Priority List for Prioritizing Software Requirements , 2010, REFSQ.

[13]  Carlos E. Otero,et al.  A Quality-Based Requirement Prioritization Framework Using Binary Inputs , 2010, 2010 Fourth Asia International Conference on Mathematical/Analytical Modelling and Computer Simulation.

[14]  John W. Creswell,et al.  Research Design: Qualitative, Quantitative, and Mixed Methods Approaches , 2010 .

[15]  Mohd. Shahid,et al.  Adding Threat during Software Requirements Elicitation and Prioritization , 2010 .

[16]  Saif Ur Rehman Malik,et al.  The impact of test case reduction and prioritization on software testing effectiveness , 2009, 2009 International Conference on Emerging Technologies.

[17]  M. Arfan Jaffar,et al.  Value Based Fuzzy Requirement Prioritization and Its Evaluation Framework , 2009, 2009 Fourth International Conference on Innovative Computing, Information and Control (ICICIC).

[18]  Amir Seyed Danesh,et al.  Requirements Prioritization in On-line Banking Systems: Using Value-Oriented Framework , 2009, 2009 International Conference on Computer Technology and Development.

[19]  Anna Perini,et al.  Tool-supported requirements prioritization: Comparing the AHP and CBRank methods , 2009, Inf. Softw. Technol..

[20]  S. Sohrabi,et al.  An Analytical Survey of "On-Site Customer" Practice in Extreme Programming , 2008, International Symposium on Computer Science and its Applications.

[21]  Thomas L. Saaty,et al.  DECISION MAKING WITH THE ANALYTIC HIERARCHY PROCESS , 2008 .

[22]  Patrik Berander,et al.  Hierarchical Cumulative Voting (hcv) - Prioritization of Requirements in Hierarchies , 2006, Int. J. Softw. Eng. Knowl. Eng..

[23]  L. Giddings Research Design: Qualitative, Quantitative, and Mixed Methods Approaches, 2d ed , 2005 .

[24]  Xiaoqing Frank Liu,et al.  Priority assessment of software requirements from multiple perspectives , 2004, Proceedings of the 28th Annual International Computer Software and Applications Conference, 2004. COMPSAC 2004..

[25]  A. Twycross Research design: qualitative, quantitative and mixed methods approaches Research design: qualitative, quantitative and mixed methods approaches Creswell John W Sage 320 £29 0761924426 0761924426 [Formula: see text]. , 2004, Nurse researcher.

[26]  Ralph Young,et al.  The requirements engineering handbook , 2003 .

[27]  Miguel P Caldas,et al.  Research design: qualitative, quantitative, and mixed methods approaches , 2003 .

[28]  Soren Lauesen,et al.  Software Requirements: Styles & Techniques , 2002 .

[29]  T.C. Lethbridge,et al.  Guide to the Software Engineering Body of Knowledge (SWEBOK) and the Software Engineering Education Knowledge (SEEK) - a preliminary mapping , 2001, 10th International Workshop on Software Technology and Engineering Practice.

[30]  Dean Leffingwell,et al.  Managing software requirements: a unified approach , 1999 .

[31]  Joachim Karlsson,et al.  A Cost-Value Approach for Prioritizing Requirements , 1997, IEEE Softw..

[32]  S. Siegel,et al.  Nonparametric Statistics for the Behavioral Sciences , 2022, The SAGE Encyclopedia of Research Design.

[33]  G. Privitera Statistics for the behavioral sciences, 2nd ed. , 2015 .

[34]  Nader Ale Ebrahim,et al.  Supplier Assessment and Selection Using Fuzzy Analytic Hierarchy Process in a Steel Manufacturing Company , 2014 .

[35]  Takeo Kanade,et al.  Software Engineering - International Summer Schools, ISSSE 2009-2011, Salerno, Italy. Revised Tutorial Lectures , 2013, ISSSE.

[36]  M. Jaffar,et al.  VALUE BASED INTELLIGENT REQUIREMENT PRIORITIZATION ( VIRP ) : EXPERT DRIVEN FUZZY LOGIC BASED PRIORITIZATION TECHNIQUE , 2010 .

[37]  Patrik Berander,et al.  Evolving Prioritization for Software Product Management , 2007 .

[38]  Marjo Kauppinen,et al.  Suitability of requirements prioritization methods for market-driven software product development , 2006, Softw. Process. Improv. Pract..

[39]  Tony Gorschek,et al.  Requirements Engineering Supporting Technical Product Management , 2006 .

[40]  Viggo Ahl An experimental comparison of five prioritization methods : Investigating ease of use, accuracy and scalability , 2005 .

[41]  Mark T True,et al.  Software Requirements , 2005 .

[42]  Anna Perini,et al.  Supporting the Requirements Prioritization Process. A Machine Learning approach , 2004, SEKE.

[43]  Frank Moisiadis,et al.  The fundamentals of prioritising requirements , 2002 .

[44]  S. Lauesen Software Requirements Styles and Techniques , 2001 .

[45]  Karl E. Wiegers,et al.  Software Requirements , 1999 .

[46]  Kent L. Beck,et al.  Extreme programming explained - embrace change , 1990 .

[47]  Pierre America,et al.  Elsevier Editorial System(tm) for Journal of Systems and Software Manuscript Draft Title: Defining and Documenting Execution Viewpoints for a Large and Complex Software-intensive System Defining and Documenting Execution Viewpoints for a Large and Complex Software-intensive System , 2022 .