Due to dynamic nature of current software development methods, changes in requirements are embraced and given proper consideration. However, this triggers the rank reversal problem which involves re-prioritizing requirements based on stakeholders’ feedback. It incurs significant cost because of time elapsed in large number of human interactions. To solve this issue, a Semi-Automated Framework for soFtware Requirements priOritizatioN (SAFFRON) is presented in this paper. For a particular requirement, SAFFRON predicts appropriate stakeholders’ ratings to reduce human interactions. Initially, item-item collaborative filtering is utilized to estimate similarity between new and previously elicited requirements. Using this similarity, stakeholders who are most likely to rate requirements are determined. Afterwards, collaborative filtering based on latent factor model is used to predict ratings of those stakeholders. The proposed approach is implemented and tested on RALIC dataset. The results illustrate consistent correlation, similar to state of the art approaches, with the ground truth. In addition, SAFFRON requires 13.5-27 less human interaction for reprioritizing requirements.
The authors in @cite_11 used Fuzzy multi-criteria decision-making (FMCDM) method to effectively deal with the inherent imprecision, vagueness and ambiguity associated with human decision making process in RP. Questionnaires to collect relative ranks from stakeholders were used to prioritize requirements. This approach did not prioritize stakeholders and also failed to take dependencies in requirements into account. Moreover, there could be assessment bias in the results of this approach.
@cite_11
165253968
Software elicitation process is the act of extracting and sorting requirements of a proposed system perceived to reflect the projected performance of the software under consideration for development. For software systems to be long-lived and satisfy stakeholder’s expectations; there will be need to prioritize choices at the elicitation level. However, these choices could be distorted or misleading if appropriate techniques are not utilized in analyzing and prioritizing them. Consequently, if software systems are developed on vague prioritization results, the end product will not meet stakeholder’s expectations. In this research, we present a scalable innovative prioritization model that is capable of comparing sets of elicited requirements by computing the weights of each criterion that makes up specified requirements. To achieve our aim, the weights assigned to each requirement by relevant stakeholders are normalized and a confidence function is computed to ascertain the ranking order of requirements. To validate the applicability of our model, we describe an empirical case scenario detailing the adaptability prowess of the proposed model.