Abstract:
Earlier recognition, categorization, and prioritization of elicited requirements in the software development is essential for the project's success because it allows problems to be identified and classified in early stages. The most critical and difficult stage of the Software Development Life Cycle is gathering requirements Following this stage, the requirement priority should be handled and saved for upcoming projects. Using machine learning classification approaches software requirement prioritization can be predicted during the requirement gathering stage. To predict the priority of functional requirements for developing new software, a dataset having the attributes of software requirements is required. In this research, a dataset named software requirement prioritization(SRP) is presented that includes requirements from Software Requirement Specification (SRS) of several open-source projects' and ranking value of different factors that help in priority prediction. Ranking value is obtained from the IT experts through survey on rating scale of 1 to 5 where 1 ranks lowest and 5 ranks highest. Further for our proposed SRP system, content-based n-gram approach is considered at word and character level. After that combine multi-label classifier i.e. One Vs Rest, Label Powerset, with six classical machine learning classifiers i.e. Linear SVC, Logistic Regression etc. Micro F1 score, Accuracy score, and Hamming loss are used for evaluation. However, when compared to the other combination of OVR and Label power set with Gradient Boost Classifier, Random Forest, Nave Baise, linear SVC, Bagging, and Adaboost, Label Powerset with Linear SVC performed well.