IEEE Access (Jan 2022)
Improved Prioritization of Software Development Demands in Turkish With Deep Learning-Based NLP
Abstract
Management of software development demands including bug or defect fixes and new feature or change requests is a crucial part of software maintenance. Failure to prioritize demands correctly might result in inefficient planning and use of resources as well as user or customer dissatisfaction. In order to overcome the difficulty and inefficiency of manual processing, many automated prioritization approaches were proposed in the literature. However, existing body of research generally focused on bug report repositories of open-source software, where textual bug descriptions are in English. Additionally, they proposed solutions to the problem using mostly classical text mining methods and machine learning (ML) algorithms. In this study, we first introduce a demand prioritization dataset in Turkish, which is composed of manually labeled demand records taken from the demand management system of a private insurance company in Turkey. Second, we propose several deep learning (DL) architectures to improve software development demand prioritization. Through an extensive experimentation, we compared the effectiveness of our DL architectures trained with several combinations of different optimizers and activation functions in order to reveal the best combination for demand prioritization in Turkish. We empirically show that DL models can achieve much higher accuracy than classical ML models even with a small amount of training data.
Keywords