scispace - formally typeset
Book ChapterDOI

Software Requirements Classification and Prioritisation Using Machine Learning

TLDR
Existing requirements prioritisation techniques based on ease of use, speed, scalability and accuracy are compared and a new architecture that will use both types of datasets to create a generalised model is proposed.
Abstract
Software Development Lifecycle (SDLC) is a systematic process used to achieve high quality software that meets customer requirements. During SDLC requirements, engineering plays an important role. Prioritisation helps to focus on the most important requirements in terms of importance, cost, penalty, time and risk. Stakeholders (users, developers) of the software product identify requirements. The two major activities of requirement engineering process are requirements classification and requirements prioritisation. Sometimes requirement mentioned by stakeholder can be of both types, i.e. functional and non-functional. So it is challenging to classify requirements separately in two different categories. There are many fundamental prioritisation techniques available to prioritise software requirements. In this paper, we have compared existing requirements prioritisation techniques based on ease of use, speed, scalability and accuracy. Our literature study suggests that the appropriate requirements prioritisation technique has to be selected that can help software developer to minimise the risk, penalty. In automating various tasks of software engineering, machine learning (ML) has shown useful positive impact. This paper discusses the various algorithms used to classify and prioritise the software requirements. The results in terms of performance, scalability and accuracy from different studies are contradictory in nature due to variations in research methodologies and the type of dataset used. Based on the literature survey conducted, we propose a new architecture that will use both types of datasets, i.e. Software Requirement Specifications (SRS) and user text reviews to create a generalised model. Our proposed architecture will attempt to extract features which can be used to train the model using ML algorithms. The ML algorithms for classifying and prioritising software requirements will be developed and assessed based on performance, scalability and accuracy.

read more

Citations
More filters
Journal ArticleDOI

Code Quality Prediction Under Super Extreme Class Imbalance

TL;DR: In this article , a code quality prediction framework, called Automated Incremental Effort Investments (AIEl), is proposed to fasten the process of going from data to a performant model under super extreme class imbalance.
Journal ArticleDOI

Built-In Calibration Standard and Decision Support System for Controlling Structured Data Storage Systems Using Soft Computing Techniques

TL;DR: The research presents a decision support system (DSS) to help non-kinetics discover their proper DBMS solutions and otherwise information retention types faster and improves visibility into the choice method, which gives a deeper prioritized choice range than if customers have conducted their study individually.
References
More filters
Journal ArticleDOI

A Review of Machine Learning Algorithms for Text-Documents Classification

TL;DR: This paper provides a review of the theory and methods of document classification and text mining, focusing on the existing techniques and methodologies, focused mainly on text representation and machine learning techniques.
Journal ArticleDOI

An evaluation of methods for prioritizing software requirements

TL;DR: An evaluation of six different methods for prioritizing software requirements for a telephony system found the analytic hierarchy process to be the most promising method, although it may be problematic to scale-up.
Proceedings ArticleDOI

Automatically Classifying Functional and Non-functional Requirements Using Supervised Machine Learning

TL;DR: This paper developed and evaluated a supervised machine learning approach employing meta-data, lexical, and syntactical features to automatically classify requirements as functional (FR) and non-functional (NFR) in the dataset with supervised machineLearning.
Proceedings ArticleDOI

Automatic Classification of Non-Functional Requirements from Augmented App User Reviews

TL;DR: The finding shows that augmented user reviews can lead to better classification results, and the machine learning algorithm Bagging is more suitable for NFRs classification from user reviews than Naïve Bayes and J48.
Proceedings ArticleDOI

Automatic Classification of Requirements Based on Convolutional Neural Networks

TL;DR: This paper presents an approach to automatically classify content elements of a natural language requirements specification as "requirement" or "information", which uses convolutional neural networks.