RePizer: a framework for prioritization of software requirements
Saif Ur Rehman KHAN, Sai Peck LEE, Mohammad DABBAGH1, Muhammad TAHIR, Muzafar KHAN, Muhammad ARIF
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.
Software requirements / Requirements prioritization techniques / Prioritization framework / Planning game / Analytical hierarchy process
[1] |
Achimugu, P., Selamat, A., Ibrahim, R.,
|
[2] |
Ahl, V., 2005. An Experimental Comparison of Five Prioritization Methods—Investigating Ease of Use, Accuracy and Scalability. MS Thesis, Blekinge Institute of Technology, Ronneby, Sweden.
|
[3] |
Arias, T.B.C., America, P., Avgeriou, P., 2011. Defining and documenting execution viewpoints for a large and complex software-intensive system. J. Syst. Softw., 84(9): 1447–1461. http://dx.doi.org/10.1016/j.jss.2010.11.908
|
[4] |
Avesani, P., Bazzanella, C., Perini, A.,
|
[5] |
Bebensee, T., van de Weerd, I., Brinkkemper, S., 2010. Binary priority list for prioritizing software requirements. LNCS, 6182:67–78. http://dx.doi.org/10.1007/978-3-642-14192-8_8
|
[6] |
Beck, K., 2000. Extreme Programming Explained: Embrace Change. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA.
|
[7] |
Berander, P., 2007. Evolving Prioritization for Software Product Management. PhD Thesis, Blekinge Institute of Technology, Sweden.
|
[8] |
Berander, P., Andrews, A., 2005. Requirements prioritization. In: Aurum, A., Wohlin, C. (Eds.), Engineering and Managing Software Requirements. Springer, p.69–94. http://dx.doi.org/10.1007/3-540-28244-0_4
|
[9] |
Berander, P., Jönsson, P., 2006. Hierarchical cumulative voting (HCV)—prioritization of requirements in hierarchies. Int. J. Softw. Eng. Knowl. Eng., 16(6):819–849. http://dx.doi.org/10.1142/S0218194006003026
|
[10] |
Bourque, P., Fairley, R.E., 2014. Guide to the Software Engineering Body of Knowledge (SWEBOK®), Version 3.0. IEEE Computer Society Press, Piscataway, New Jersey.
|
[11] |
Brackett, J.W., 1990. Software Requirements. Technical Report, No. SEI-CM-19-1.2. Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, USA.
|
[12] |
Creswell, J.W., 2013. Research Design: Qualitative, Quantitative, and Mixed Methods Approaches (4th Ed.). Sage Publications.
|
[13] |
Dabbagh, M., Lee, S.P., 2013. A consistent approach for prioritizing system quality attributes. Proc. 14th ACIS Int. Conf. on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing, p.317–322. http://dx.doi.org/10.1109/SNPD.2013.9
|
[14] |
Dabbagh, M., Lee, S.P., 2014. An approach for integrating the prioritization of functional and nonfunctional requirements. Sci. World J., Article ID 737626. http://dx.doi.org/10.1155/2014/737626
|
[15] |
Dabbagh, M., Lee, S.P., 2015. An approach for prioritizing NFRs according to their relationship with FRs. Lect. Notes Softw. Eng., 3(1):1–5. http://dx.doi.org/10.7763/LNSE.2015.V3.154
|
[16] |
Dabbagh, M., Lee, S.P., Parizi, R.M., 2014. Application of hybrid assessment method for priority assessment of functional and non-functional requirements. Proc. Int. Conf. on Information Science and Applications, p.1–4. http://dx.doi.org/10.1109/ICISA.2014.6847365
|
[17] |
Danesh, A.S., Mortazavi, S.M., Danesh, S.Y.S., 2009. Requirements prioritization in on-line banking systems using value-oriented framework. Int. Conf. on Computer Technology and Development, p.158–161. http://dx.doi.org/10.1109/ICCTD.2009.41
|
[18] |
Daneva, M., Damian, D., Marchetto, A.,
|
[19] |
Dominguez, J., 2009. The Curious Case of the Chaos Report 2009. Available from http://www.projectsmart.co.uk/thecurious-case-of-the-chaos-report-2009.html
|
[20] |
Firesmith, D., 2004. Prioritizing requirements. J. Obj. Technol., 3(8):35–47. http://dx.doi.org/10.5381/jot.2004.3.8.c4
|
[21] |
Gorschek, T., 2006. Requirements Engineering Supporting Technical Product Management. PhD Thesis, Blekinge Institute of Technology, Sweden.
|
[22] |
Karlsson, J., Ryan, K., 1997. A cost-value approach for prioritizing requirements. IEEE Softw., 14(5):67–74. http://dx.doi.org/10.1109/52.605933
|
[23] |
Khan, S.U.R., Rehman, I.U., Malik, S.U.R., 2009. The impact of test case reduction and prioritization on software testing effectiveness. Int. Conf. on Emerging Technologies, p.416–421. http://dx.doi.org/10.1109/ICET.2009.5353136
|
[24] |
Lauesen, S., 2002. Software Requirements: Styles and Techniques. Addison-Wesley Professional.
|
[25] |
Leffingwell, D., Widrig, D., 2003. Managing Software Requirements: a Unified Approach. Addison-Wesley.
|
[26] |
Lehtola, L., 2006. Providing Value by Prioritizing Requirements Throughout Product Development: State of Practice and Suitability of Prioritization Methods. PhD Thesis, Helsinki University of Technology, Finland.
|
[27] |
Lehtola, L., Kauppinen, M., 2006. Suitability of requirements prioritization methods for market-driven software product development. Softw. Process Improv. Pract., 11(1):7–19. http://dx.doi.org/10.1002/spip.249
|
[28] |
Library of Congress Portals Applications Interest Group (LCPAIG), 2003. Functional Requirements for an Open-URL Resolver for the Library of Congress. Available fromhttp://www.loc.gov/catdir/lcpaig/openurl_require ments_20031104.pdf
|
[29] |
Likert, R., 1932. A technique for the measurement of attitudes. Arch. Psychol., 22:1–55.
|
[30] |
Liu, X.Q., Veera, C.S., Sun, Y.,
|
[31] |
Mead, N., 2006. Requirements Prioritization Introduction. Software Engineering Institute Web Publication, Carnegie Mellon University, Pittsburgh, USA.
|
[32] |
Mohammadi, S., Nikkhahan, B., Sohrabi, S., 2008. An analytical survey of “on-site customer” practice in extreme programming. Int. Symp. on Computer Science and Its Applications, p.1–6. http://dx.doi.org/10.1109/CSA.2008.72
|
[33] |
Moisiadis, F., 2002. The fundamentals of prioritising requirements. Proc. Systems Engineering, Test and Evaluation Conf., p.109–119.
|
[34] |
Otero, C.E., Dell, E., Qureshi, A.,
|
[35] |
Perini, A., Ricca, F., Susi, A., 2009. Tool-supported requirements prioritization: comparing the AHP and CBRank methods. Inform. Softw. Technol., 51(6):1021–1032. http://dx.doi.org/10.1016/j.infsof.2008.12.001
|
[36] |
Perini, A., Susi, A., Avesani, P., 2013. A machine learning approach to software requirements prioritization. IEEE Trans. Softw. Eng., 39(4):445–461. http://dx.doi.org/10.1109/TSE.2012.52
|
[37] |
Ramzan, M., Jaffar, M.A., Iqbal, M.A.,
|
[38] |
Ramzan, M., Jaffar, M.A., Shahid, A.A., 2011. Value based intelligent requirement prioritization (VIRP): expert driven fuzzy logic based prioritization technique. Int. J. Innov. Comput. Inform. Contr., 7(3):1017–1038.
|
[39] |
Ribeiro, R.A., Moreira, A.M., van den Broek, P.,
|
[40] |
Saaty, T.L., 2008. Decision making with the analytic hierarchy process. Int. J. Serv. Sci., 1(1):83–98. http://dx.doi.org/10.1504/IJSSCI.2008.017590
|
[41] |
Sadiq, M., Shahid, M., Ahmad, S., 2010. Adding threat during software requirements elicitation and prioritization. Int. J. Comput. Appl., 1(9):50–54. http://dx.doi.org/10.5120/200-339
|
[42] |
Siegel, S., Castellan, N.J., 1988. Nonparametric Statistics for the Behavioral Sciences (2nd Ed.). McGraw-Hill.
|
[43] |
Sommerville, I., 2010. Software Engineering (9th Ed.). Pearson.
|
[44] |
Tahriri, F., Dabbagh, M., Ale Ebrahim, N., 2014. Supplier assessment and selection using fuzzy analytic hierarchy process in a steel manufacturing company. J. Sci. Res. Rep., 3(10):1319–1338.
|
[45] |
Wiegers, K., Beatty, J., 2013. Software Requirements (3rd Ed.). Microsoft Press.
|
[46] |
Wohlin, C., Runeson, P., Höst, M.,
|
[47] |
Young, R.R., 2004. The Requirements Engineering Handbook. Artech House, Norwood, MA, USA.
|
/
〈 | 〉 |