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.
Multiple-criteria decision making (MCDM) is widely used in ranking choices from a set of available alternatives with respect to multiple criteria. To analytically rank requirements under various criteria, we propose a tool called requirements prioritizer (RP) which has the capacity of keeping records of project stakeholders with their relative weights against each requirement, utilized by the system to compute an ordered list of prioritized requirements. The proposed approach offers a novel way of involving stakeholders in the entire decision making process irrespective of their numbers in an automated fashion. In this proposed approach, the relative weights assigned by each stakeholder are normalized and aggregated. The output of the system consists of prioritized requirements with an automatically generated graph showing the relative values of requirements across project stakeholders in a chronological order.  Non-functional requirements (NFRs) determine the characteristics of a software product or service as a whole. The research described in this paper presents a quantitative framework involving respondents of both the project and the business organization, in order to determine the priority of a list of NFRs to be considered for implementation during a software development. The framework also provides a quantitative basis for evaluating the extent of value addition that can be achieved while deciding upon whether or not to consider a particular non-functional requirement for inclusion to the project's requirement set. The assessment process also indicates the extent to which different business values are perceived important by representatives of business organizations, and their perception of the importance of the different NFRs. The work distinguishes from others by explicitly considering dependencies among NFRs in the evaluation process. The final results are expected to be beneficial to both the business and the project organization by identifying and implementing the desired NFRs that contribute to business value in a cost-effective manner.