The use of knapsack 0/1 in prioritizing software requirements and Markov chain to predict software success

Abstract
Requirements prioritization is one of the most valuable aspects of software engineering. This is primarily due to the fact that resources, be it time, skillset, or budget, are limited. Existing complex methodologies, such as ana lytical heuristic process (AHP) and planning game, face low adoption in the industry, promoting the need for more accessible techniques. This research introduces a novel con tribution to software engineering by ofering a simple and scalable approach to requirement prioritization (RP) and software acceptance prediction. The proposed approach con sists of two key methods, knapsack 0/1 and Markov, to opti mize RP and predict software acceptance respectively. By considering constraints, organizations can make enlightened decisions on handling requirements and optimize their mini mum viable product. The results showcase signifcant time efciency, with an average worst-case time of 5.645s for 10,000 requirements and an upper bound of 0.023s for the Markov prediction. This study aims to provide practitioners with a practical solution for prioritizing requirements and predicting software outcomes from user acceptance tests. By simplifying the process and ofering compelling time complexity, this approach contributes to the enhancement of software development practices.
Description
This article is published by Springer, 2023 and is also available at https://doi.org/10.1007/s41870-023-01476-4
Keywords
Citation
Int. j. inf. tecnol. (March 2024) 16(3):1967–1979
Collections