2nd International Symposium on "Generation and Transfer of Knowledge for Digital Transformation"  "SITIC2023" -I Taller Internacional de Tecnologías y Aplicaciones de Web Semántica en el entorno de Inteligencia Artificial de las Cosas

2nd International Symposium on "Generation and Transfer of Knowledge for Digital Transformation"

SITIC2023

Automatic Classification of Software Requirements Based on Machine Learning Method

Abstract

Requirement engineering (RE) is the first and the most important step in software production and development. The RE is aimed to specify software requirements. One of the tasks in RE is the categorization of software requirements as functional and non-functional requirements. The functional requirements (FR) show the responsibilities of the system while non-functional requirements represent the quality factors of software. Discrimination between FR and NFR is a challenging task. Nowadays Deep Learning (DL) has entered all fields of engineering and has increased accuracy and reduced time in their implementation process. In this paper, we use deep learning for the classification of software requirements. Five prominent DL algorithms are trained for classifying requirements. Also, two voting classification algorithms are utilized for creating ensemble classifiers based on five DL methods. The PURE, a repository of Software Requirement Specification (SRS) documents, is selected for our experiments. We created a dataset from PURE which contains 4661 requirements where 2617 requirements are functional and the remaining are non-functional. Our methods are applied to the dataset and their performance analysis is reported. The results show that the performance of deep learning models is satisfactory and the voting mechanisms provide better results.

Resumen

La ingeniería de requisitos (IR) es el primer y más importante paso en la producción y el desarrollo de software. La IR tiene como objetivo especificar los requisitos de software. Una de las tareas en RE es la clasificación de los requisitos de software en requisitos funcionales y no funcionales. Los requisitos funcionales (FR) muestran las responsabilidades del sistema, mientras que los requisitos no funcionales representan los factores de calidad del software. La discriminación entre FR y NFR es una tarea desafiante. Actualmente el Deep Learning (DL) ha entrado en todos los campos de la ingeniería y ha aumentado la precisión y reducido el tiempo en su proceso de implementación. En este trabajo, utilizamos el aprendizaje profundo para la clasificación de requisitos de software. Se entrenan cinco algoritmos DL destacados para clasificar requisitos. Además, se utilizan dos algoritmos de clasificación de votación para crear clasificadores de conjuntos basados en cinco métodos DL. Para nuestros experimentos se selecciona PURE, un repositorio de documentos de especificación de requisitos de software (SRS), que contiene 4661 requisitos, de los cuales 2617 son funcionales y el resto no son funcionales. Nuestros métodos se aplican al conjunto de datos y se informa su análisis de rendimiento. Los resultados muestran que el desempeño de los modelos de aprendizaje profundo es satisfactorio y los mecanismos de votación brindan mejores resultados.

About The Speaker

Vladimir Milián Núñez

Prof. Vladimir Milián Núñez

UCI Flag of Cuba

Discussion

Practical Info
Presentation
English (US)
November 16, 2023 11:10 AM
5 minutes
Salon SITIC 1
Authors
Prof. Vladimir Milián Núñez
Keywords
aprendizaje profundo
clasificación de requisitos
deep learning
pure dataset
requirement classification
Documents