PhD Defence Notice - Parsa Pourali

Tuesday, January 14, 2020 10:00 am - 10:00 am EST (GMT -05:00)

Candidate: Parsa Pourali

Title: A User-Centric Approach to Improve the Quality of UML-like Modelling Tools and Reduce the Efforts of Modelling

Date: January 14, 2020

Time: 10:00 AM

Place: E5 4047

Supervisor(s): Atlee, Joanne (School of Computer Science) - Czarnecki, Krzysztof

Abstract:

As software systems are growing in size and complexity, their development and maintenance is becoming increasingly challenging. Model-Driven Engineering (MDE) has been proposed as a mean to increase the developer's productivity of such large-scale complex software systems. Despite its benefits, MDE has not been fully adopted in the software industry due to several barriers. Research has shown that modelling tools are amongst the top barriers for the industry's reluctance to adopt MDE, mostly because there is a little investigation of the modellers' interactions with modelling tools when editing and debugging models, which are cognitively difficult tasks. More specifically, MDE tool research has not considered 1) a thorough analysis of modellers and their tasks to understand their challenges of using modelling tools, 2) the underlying human-cognitive factors, and 3) a systematic assessment of the effectiveness of the proposed solutions (i.e., tooling techniques) on human users.

This thesis argues that MDE tools can be enhanced to overcome (some of the) the challenges of adoption by considering human-cognitive factors when designing and proposing model-easing techniques for model editors. We promote our thesis in three main steps. As a first step, we conducted an empirical study to identify the most-severe cognitive difficulties of modellers when using UML model editors. In our study, we asked the recruited subjects to perform several model-editing and model-debugging tasks. We collected information during the sessions that could help us understand the subjects' cognitive challenges. The results show that users' face multiple challenges, amongst which the most prominent challenges are remembering contextual information when performing a particular modelling task; and locating, understanding, and fixing errors in the models.

In the second stage, we identified the cognitive factors that drive the most prominent challenges and subsequently devised several tooling advancements that provide enhanced cognitive support and automation in the user's interaction with a model editor. The philosophy behind our tooling advancements is to provide the contextual information that are relevant to performing a particular modelling task, thereby, alleviating the modellers' cognitive challenges of recollecting information from different diagrams. We also proposed an on-the-fly error-resolution technique that aims at resolving errors as they occur. We implemented our Eclipse-based model-editor and embedded our tooling techniques in the tool.

Lastly, we conducted two empirical studies to assess the effectiveness of our model-editor on human users. The Context study aimed at evaluating our tool's ability to reduce the challenges of remember contextual information, whereas the Debugging study aimed at assessing our tool's ability to improve the users' experience of debugging models. Our results reveal that our interfaces help users 1) improve their ability to successfully fulfill their tasks, 2) avoid unnecessary context switches among diagrams, 3) produce more error-free models, 4) remember contextual information, and 5) reduce time on tasks.