Event

PhD defence of Rijul Saini - Automated, Interactive, and Traceable Domain Modelling

Wednesday, November 23, 2022 10:30to12:30
McConnell Engineering Building , Room 603, 3480 rue University, Montreal, QC, H3A 0E9, CA

 

Abstract

Model-Driven Software Engineering advocates the use of models and their transformations across different stages of software engineering to better understand and analyze envisioned software systems. One of the most widely used models is Domain models (class diagrams) which capture the structural aspects of a system. During requirements analysis or the early stages of design, informal requirements written in natural language are transformed into domain models which are analyzable and more concise. Since domain modelling is time-consuming, labor-intensive, and error-prone, many approaches have been proposed to extract domain concepts and relationships automatically. Despite the existing work on domain model extraction, some non-trivial challenges remain unaddressed: (i) the extracted domain models are not accurate enough to be used directly or with minor modifications in software development or for learning purposes, (ii) existing approaches do not facilitate interactions between a modeller and automated model extraction system, and (iii) existing approaches do not support traceability of automated modelling decisions.

In this thesis, we present a domain modelling bot, DoMoBOT, that aims to support automated, interactive, and traceable domain modelling. First, we present a layered architecture that uses Natural Language Processing (NLP) and Machine Learning (ML) techniques to extract domain models with accuracy higher than existing approaches. Second, we extend the layered architecture to discover alternative configurations and support bot-modeller interactions. In addition, we present a bot-assisted approach that aims to support modellers during the evolution of domain modelling exercises. Moreover, we present an incremental learning strategy that aims to learn a modeller’s preferred decisions during bot-modeller interactions and improves the bot's responses and extraction results over time. Third, we present the Traceability Information Model (TIM) that weaves various artifacts generated across the model extraction process. We also report the evaluation results from case studies and a pilot user study to evaluate our extended layered architecture, bot-assisted approach, and incremental learning strategy. Finally, we present the technical details of the bot and discuss the results of the summative user study where we evaluate our bot. We observe that: (1) a combination of NLP and ML techniques may extract model elements that are otherwise not possible or difficult with either of these techniques alone, (2) traceability of modelling decisions using TIM may assist modellers in gaining insights into the automated decisions taken by the bot, (3) bot-modeller interactions can enable adaptability of extracted domain models for including modelling decisions preferred by a modeller, and (4) synergy between automated model extraction and bot-modeller interactions may better assist modellers in making coherent changes in problem descriptions and their domain models.

Back to top