Detecting Requirements Smells With Deep Learning: Experiences, Challenges and Future Work

08/06/2021
by   Mohammad Kasra Habib, et al.
0

Requirements Engineering (RE) is the initial step towards building a software system. The success or failure of a software project is firmly tied to this phase, based on communication among stakeholders using natural language. The problem with natural language is that it can easily lead to different understandings if it is not expressed precisely by the stakeholders involved, which results in building a product different from the expected one. Previous work proposed to enhance the quality of the software requirements detecting language errors based on ISO 29148 requirements language criteria. The existing solutions apply classical Natural Language Processing (NLP) to detect them. NLP has some limitations, such as domain dependability which results in poor generalization capability. Therefore, this work aims to improve the previous work by creating a manually labeled dataset and using ensemble learning, Deep Learning (DL), and techniques such as word embeddings and transfer learning to overcome the generalization problem that is tied with classical NLP and improve precision and recall metrics using a manually labeled dataset. The current findings show that the dataset is unbalanced and which class examples should be added more. It is tempting to train algorithms even if the dataset is not considerably representative. Whence, the results show that models are overfitting; in Machine Learning this issue is solved by adding more instances to the dataset, improving label quality, removing noise, and reducing the learning algorithms complexity, which is planned for this research.

READ FULL TEXT
research
05/11/2023

Automated Smell Detection and Recommendation in Natural Language Requirements

Requirement specifications are typically written in natural language (NL...
research
02/02/2022

Detecting Privacy Requirements from User Stories with NLP Transfer Learning Models

To provide privacy-aware software systems, it is crucial to consider pri...
research
01/06/2020

Cross-Dataset Design Discussion Mining

Being able to identify software discussions that are primarily about des...
research
02/10/2022

Natural Language in Requirements Engineering for Structure Inference – An Integrative Review

The automatic extraction of structure from text can be difficult for mac...
research
03/12/2017

Why we have switched from building full-fledged taxonomies to simply detecting hypernymy relations

The study of taxonomies and hypernymy relations has been extensive on th...
research
03/06/2022

Support for Traceability Management of Software Artefacts using Natural Language Processing

One of the major problems in software development process is managing so...
research
08/06/2017

Rookie: A unique approach for exploring news archives

News archives are an invaluable primary source for placing current event...

Please sign up or login with your details

Forgot password? Click here to reset