Multi-label software requirement smells classification using deep learning

Abstract Software requirement smell detection is an important part of establishing high-quality software specifications. These smells, which frequently indicate difficulties like ambiguity, vagueness, or incompleteness, can lead to misunderstandings and mistakes in the latter phases of software deve...

Full description

Saved in:
Bibliographic Details
Main Authors: Ashagrew Liyih Alem, Ketema Keflie Gebretsadik, Shegaw Anagaw Mengistie, Muluye Fentie Admas
Format: Article
Language:English
Published: Nature Portfolio 2025-02-01
Series:Scientific Reports
Subjects:
Online Access:https://doi.org/10.1038/s41598-025-86673-w
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1850190997866151936
author Ashagrew Liyih Alem
Ketema Keflie Gebretsadik
Shegaw Anagaw Mengistie
Muluye Fentie Admas
author_facet Ashagrew Liyih Alem
Ketema Keflie Gebretsadik
Shegaw Anagaw Mengistie
Muluye Fentie Admas
author_sort Ashagrew Liyih Alem
collection DOAJ
description Abstract Software requirement smell detection is an important part of establishing high-quality software specifications. These smells, which frequently indicate difficulties like ambiguity, vagueness, or incompleteness, can lead to misunderstandings and mistakes in the latter phases of software development. Traditionally, identifying requirement smells was a manual process, time-consuming, prone to inconsistency, and human mistakes. Moreover, the previous machine learning and deep learning research was insufficient for detecting multiple smells in a single requirement statement. To address this problem, we developed a multi-label software requirement smell model to detect multiple software requirement smells in a single requirement. Therefore, this study explores a deep learning-based approach to multi-label classification of software requirement smells, incorporating advanced neural network architectures such as LSTM, Bi-LSTM, and GRU with combined word embedding like ELMo and Word2Vec. We collected and prepared an 8120 requirements dataset from different sources categorized into 11 linguistic aspects and we used a binary relevance multi-label classification strategy in which each category was treated independently and used the F1-macro average of each label of the smell. Next, we built models that can classify software requirement smell in a multi-label manner using deep learning algorithms. After executing numerous experiments with different parameters in the Bi-LSTM, LSTM, and GRU models, we obtained 90.3%, 89%, and 88.7% of F1-score macro averages with ELMo, respectively. Therefore, Bi-LSTM achieved a greater F1-score macro average than the other algorithms.
format Article
id doaj-art-eeb019d8ae824c1c8c8afe0517465388
institution OA Journals
issn 2045-2322
language English
publishDate 2025-02-01
publisher Nature Portfolio
record_format Article
series Scientific Reports
spelling doaj-art-eeb019d8ae824c1c8c8afe05174653882025-08-20T02:15:06ZengNature PortfolioScientific Reports2045-23222025-02-0115111610.1038/s41598-025-86673-wMulti-label software requirement smells classification using deep learningAshagrew Liyih Alem0Ketema Keflie Gebretsadik1Shegaw Anagaw Mengistie2Muluye Fentie Admas3Department of Software Engineering, Debre Markos UniversityDepartment of Software Engineering, Debre Markos UniversityDepartment of Business, University of Southeastern NorwayDepartment of Information Technology, Debre Markos UniversityAbstract Software requirement smell detection is an important part of establishing high-quality software specifications. These smells, which frequently indicate difficulties like ambiguity, vagueness, or incompleteness, can lead to misunderstandings and mistakes in the latter phases of software development. Traditionally, identifying requirement smells was a manual process, time-consuming, prone to inconsistency, and human mistakes. Moreover, the previous machine learning and deep learning research was insufficient for detecting multiple smells in a single requirement statement. To address this problem, we developed a multi-label software requirement smell model to detect multiple software requirement smells in a single requirement. Therefore, this study explores a deep learning-based approach to multi-label classification of software requirement smells, incorporating advanced neural network architectures such as LSTM, Bi-LSTM, and GRU with combined word embedding like ELMo and Word2Vec. We collected and prepared an 8120 requirements dataset from different sources categorized into 11 linguistic aspects and we used a binary relevance multi-label classification strategy in which each category was treated independently and used the F1-macro average of each label of the smell. Next, we built models that can classify software requirement smell in a multi-label manner using deep learning algorithms. After executing numerous experiments with different parameters in the Bi-LSTM, LSTM, and GRU models, we obtained 90.3%, 89%, and 88.7% of F1-score macro averages with ELMo, respectively. Therefore, Bi-LSTM achieved a greater F1-score macro average than the other algorithms.https://doi.org/10.1038/s41598-025-86673-wMulti-label classificationSoftware RequirementRequirement smellWord embeddingNLPDeep learning
spellingShingle Ashagrew Liyih Alem
Ketema Keflie Gebretsadik
Shegaw Anagaw Mengistie
Muluye Fentie Admas
Multi-label software requirement smells classification using deep learning
Scientific Reports
Multi-label classification
Software Requirement
Requirement smell
Word embedding
NLP
Deep learning
title Multi-label software requirement smells classification using deep learning
title_full Multi-label software requirement smells classification using deep learning
title_fullStr Multi-label software requirement smells classification using deep learning
title_full_unstemmed Multi-label software requirement smells classification using deep learning
title_short Multi-label software requirement smells classification using deep learning
title_sort multi label software requirement smells classification using deep learning
topic Multi-label classification
Software Requirement
Requirement smell
Word embedding
NLP
Deep learning
url https://doi.org/10.1038/s41598-025-86673-w
work_keys_str_mv AT ashagrewliyihalem multilabelsoftwarerequirementsmellsclassificationusingdeeplearning
AT ketemakefliegebretsadik multilabelsoftwarerequirementsmellsclassificationusingdeeplearning
AT shegawanagawmengistie multilabelsoftwarerequirementsmellsclassificationusingdeeplearning
AT muluyefentieadmas multilabelsoftwarerequirementsmellsclassificationusingdeeplearning