{'fraction_non_alphanumeric': 0.019736842105263157, 'fraction_numerical': 0.002349624060150376, 'mean_word_length': 6.316151202749141, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Prioritizing solution-oriented software requirements using the multiple perspective prioritization technique algorithm: An empirical investigation

This research proposed an algorithm to enhance the software requirements prioritization activity, called the multiple perspective prioritization technique. This proposed technique (algorithm) attempts to represent three perspectives: the customer, business and technical perspectives. In addition, this technique is designed for a medium to large number of requirements. The effectiveness and efficiency of the proposed multiple perspective prioritization technique were investigated empirically, in order to show whether it is worthy to be adopted in the real working environment. For this reason, a controlled experiment was conducted among 159 participants, where they were asked to prioritize 42 requirements using the three techniques: our proposed technique (multiple perspective prioritization technique), analytical hierarchical process and Wiegers’ technique. The aim of this experiment was to compare and evaluate the multiple perspective prioritization technique with two other techniques, which are among the most widely used prioritization techniques. By this comparison, we would like to show which of these techniques (multiple perspective prioritization technique, analytical hierarchical process and Wiegers) is more efficient, understandable, easy to use, more scalable and less time-consuming by the participants in practice. This will help the software industry and associated experts to improve the quality of their software products. The experiment outcome reveals in general that the multiple perspective prioritization technique is more effective, understandable, less time-consuming, more scalable and easier for prioritizing requirements than the analytical hierarchical process and Wiegers’ techniques. As a conclusion, the multiple perspective prioritization technique is worthy to be implemented in real environments. Our findings reflecting the three perspectives would provide valuable insights into the domain of prioritizing software requirements.