Assessing the Effectiveness of MoSCoW Prioritization in Software Development: A Holistic Analysis across Methodologies - Suchetha Vijayakumar; Krishna Prasad K; Holla M., Raviraja (EAI Endorsed Transactions on Internet of Things, 2024)
Effective software Requirement Prioritization plays a pivotal role in the success of the Software Development process, ultimately contributing to the successful delivery of high-quality products. Among the various methods for Requirement Prioritization, the MoSCoW method has gained widespread adoption due to its ease of use. However, its overall effectiveness remains a subject of inquiry. This paper presents a rigorous assessment of the MoSCoW Requirement Prioritization technique, drawing insights from software developers who engage in the Prioritization process. Our evaluation encompasses a distinct perspective: that of the developers tasked with Prioritization. The feedback solicited from developers encapsulates a diverse set of criteria, shedding light on the method’s efficacy. Additionally, we perform sentiment analysis on the user experience of the Prioritization task to corroborate the method’s accuracy and efficiency. Our study unfolds through a practical exercise involving the Prioritization of a predefined set of requirements using MoSCoW principles. A mixed method approach is employed for the purpose of assessing the effectiveness of MoSCoW. The findings of our quantitative research underscore the method’s limitations, indicating that it may not be as effective and precise as previously believed. Furthermore, through qualitative analysis, we are able to highlight the complexities and challenges associated with MoSCoW-based Prioritization. The insights gained from this analysis prompt contemplation regarding the potential introduction of an evolved Requirement Prioritization method, while leveraging MoSCoW as a foundational framework. This research aims to inform the ongoing evolution of Requirement Prioritization methodologies, ultimately enhancing the efficiency and accuracy of Software Development processes.