An AI-Based Human-Centered Approach to Support Multidisciplinary Requirements Engineering

Date
2023-01-30
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Multidisciplinary teams are often a necessity for software projects as they provide the required expertise to effectively solve complex problems. However, efficient collaboration between teams with different disciplines is challenging due to several factors including gaps of knowledge areas, establishing a process, and different requirements from various groups of stakeholders. Agile methodologies such as scrum provide a powerful approach to effectively manage software projects through tools and approaches to properly address change which is often more common in multidisciplinary teams. In this study, we will leverage process evaluation tools and techniques to analyze the efficiency of our software development process. We have evaluated this approach based on the project data recorded in Jira and GitHub. This approach is applied to a case study of a virtual healthcare intervention system to measure the team's productivity. Several deficiencies have been identified and discussed based on the results. We conclude that the enumerated deficiencies are related to the requirements engineering (RE) process. To improve the RE process, a set of solutions have been analyzed to determine their feasibility. Automating the requirements engineering process can be an efficient approach to address the aforementioned issues. The main objectives of this thesis is to devise an automated approach to 1) identify the system requirements including the new features and bugs from the users' speech and break them down into tasks, 2) find similar Jira tickets that are already implemented, and 3) estimate the amount of effort needed for the new task. By providing smart and automated support for requirements analysis and elicitation, this solution seamlessly integrates with scrum and is expected to considerably improve the efficiency of the software development process for the virtual intervention system that is used as the case study of this thesis. As part of this thesis, we aim to implement a model to determine whether tasks are similar and a model to estimate the effort required to complete each new task, which is the second and third objectives. For finding the similarities between tasks that relate to objectives 2 and 3 of the thesis, S-BERT, one of the most powerful transformer-based machine learning techniques, was utilized and trained with a dataset that was collected, pre-processed, and normalized. For estimating the required effort of the tasks, we have used an approach that converts original commit instances into a high-dimensional feature space using Kernel-based Principal Component Analysis (KPCA) along with Adversarial Learning (AL). Based on the results, the trained model has improved its ability for topic segmentation and finding similarities between requirements. As well, our model has an accuracy of 86\% when it comes to estimating the required effort.
Description
Keywords
Citation
Salmani, A. (2023). An AI-based human-centered approach to support multidisciplinary requirements engineering (Master's thesis, University of Calgary, Calgary, Canada). Retrieved from https://prism.ucalgary.ca.