Towards Supporting Software Engineering Using Deep Learning: A Case of Software Requirements Classification

Raúl Navarro-Almanza, Reyes Juárez‐Ramírez, Guillermo Licea · 2017

Software Requirements are the basis of high-quality software development process, each step is related to SR, these represent the needs and expectations of the software in a very detailed form. The software requirement classification (SRC) task requires a lot of human effort, specially when there are huge of requirements, therefore, the automation of SRC have been addressed using Natural Language Processing (NLP) and Information Retrieval (IR) techniques, however, generally requires human effort to analyze and create features from corpus (set of requirements). In this work, we propose to use Deep Learning (DL) to classify software requirements without labor intensive feature engineering. The model that we propose is based on Convolutional Neural Network (CNN) that has been state of art in other natural language related tasks. To evaluate our proposed model, PROMISE corpus was used, contains a set of labeled requirements in functional and 11 different categories of non-functional requirements. We achieve promising results on SRC using CNN even without handcrafted features.

Read the paper · More papers on PaperTik