Not All Requirements Prioritization Criteria Are Equal at All Times: A Quantitative Analysis
This addresses the problem of inefficient requirement prioritization in software development, but it is incremental as it builds on existing prioritization techniques.
The study investigated which requirements prioritization criteria are most important in industry and whether their importance changes during the development process, finding that not all criteria are equally important and that this importance varies based on a requirement's progress.
Requirement prioritization is recognized as an important decision-making activity in requirements engineering and software development. Requirement prioritization is applied to determine which requirements should be implemented and released. In order to prioritize requirements, there are several approaches/techniques/tools that use different requirements prioritization criteria, which are often identified by gut feeling instead of an in-depth analysis of which criteria are most important to use. Therefore, in this study we investigate which requirements prioritization criteria are most important to use in industry when determining which requirements are implemented and released, and if the importance of the criteria change depending on how far a requirement has reached in the development process. We conducted a quantitative study of one completed project from one software developing company by extracting 32,139 requirements prioritization decisions based on eight requirements prioritization criteria for 11,110 requirements. The results show that not all requirements prioritization criteria are equally important, and this change depending on how far a requirement has reached in the development process.