Simposio “Transferencia de Conocimiento en Tecnologías de la Información”

Simposio “Transferencia de Conocimiento en Tecnologías de la Información”

Software Requirements Classification Using Machine Learning Algorithms

The correct classification of requirements has become an essential task within software engineering. The automatic classification of requirements written in natural language into functional requirements and the subcategories of non-functional requirements is still a challenge. This paper shows a comparison among the text feature extraction techniques (Bag of Words (BoW) vs. Term Frequency–Inverse Document Frequency (TF-IDF) vs. Chi Squared (CHI2)), and several machine learning algorithms to the problem of requirements engineer classification into Functional Requirements and Non-Functional Requirements (and the sub-classes). The data used to perform the research was the PROMISE_exp, a repository that contains labeled software requirements. This work will serve as a reference for the software engineering community and will help other researchers to understand the requirement classification process. We noticed that the use of TF-IDF followed by the use of Random Forest had a better classification result to differentiate requirements. As future work we intend to compare more algorithms (mainly deep learning approach) and new forms to improve the precision of our models, like embedded models.

La correcta clasificación de requisitos se ha convertido en una tarea fundamental dentro de la ingeniería de software. La clasificación automática de requisitos escritos en lenguaje natural en funcionales y las subcategorías de requisitos no funcionales sigue siendo un desafío. En este artículo se muestra una comparación entre varias técnicas de extracción de características de texto y varios algoritmos de aprendizaje automático para la clasificación de  requisitos funcionales y no funcionales (y sus subclases). Los datos utilizados para realizar la investigación fueron PROMISE_exp, un repositorio que contiene requisitos de software etiquetados. Este trabajo servirá como referencia para la comunidad de ingenieros de software y ayudará a otros investigadores a comprender el proceso de clasificación de requisitos. Notamos que el uso de TF-IDF seguido del uso de Random Forest tuvo un mejor resultado de clasificación para diferenciar los requisitos. Como trabajo futuro pretendemos comparar más algoritmos (principalmente enfoque de aprendizaje profundo) y nuevas formas para mejorar la precisión de nuestros modelos, como los modelos embebidos.

About The Speaker

Vladimir Milián Núñez

Prof. Vladimir Milián Núñez

UCI Flag of Cuba
Practical Info
Spanish / Español
Not defined
15 minutes
Not defined
Authors
Prof. Vladimir Milián Núñez
Keywords
functional requirements; non-functional requirements; text normalization; feature extraction; machine learning
requisitos funcionales; requisitos no funcionales; normalización de texto; extracción de características; aprendizaje automático
Documents


RED TIC
CITMATEL
DATYS