This page gives an overview of my research projects starting from the thesis followed by two research internships and a project in model-driven engineering course.
Master's Thesis: A Modelled Visual Multi-Paradigm Modelling and Enactment Environment for Workflow Modelling
In multi-paradigm modelling, workflow (process) modelling is used to precisely describe the order of execution of model operations applied on a set of formalisms. The UML 2.0 Activity Diagrams, used in this thesis, inherently possess design patterns for modelling concurrency and synchronization, among others, at a high level of abstraction. In addition, activities in a process model (PM) can orchestrate with external services. Such behaviours of workflow modelling require that they should be explicitly modelled. This thesis, thereby, realizes the semantics of a PM using Statecharts Class-diagram (SCCD) formalism. SCCD facilitates the specification of dynamic-structure systems that are timed, autonomous and reactive. Moreover, SCCD is a low-level language where its semantic domain is already defined and simulated. Denotationally mapping PM onto SCCD, thus, provided explicit modelling of its behaviour such as concurrency, and essentially enabled the enactment of the PM itself. Furthermore, expressing the behaviour of PM activities in an explicitly modelled SCCD allowed interactivity of a PM with an external service and/or a user. A visual modelling environment that integrates the graphical concrete syntax of both languages (PM and SCCD) is developed using Tkinter on top of the Modelverse, which is a multi-paradigm modelling and simulation environment. The user interface behaviour of the visual editor is also explicitly modelled in SCCD.
Research Internship 2: A Visual Modelling and Simulation Environment for State-Charts Class-Diagram (SCCD) Formalism
SCCD is a formalism that combines Harel Statecharts with UML Class-diagrams. It allows users to model complex, timed, autonomous, reactive, and dynamic-structure systems. Moreover, a textual concrete syntax, i.e. SCCDXML, was defined and a compiler was developed that generates executable code, from models expressed in SCCDXML, for dierent platforms and target languages. Nonetheless, Statecharts, and its extension, SCCD, is a visual topological formalism. Hence, a visual notation is better suited to express SCCD models, and this work brings together the visual concrete syntax of UML's Class-diagram with Harel's Statecharts and builds an interface that supports a modelling and simulation environment for SCCD. SCCD models can be exported to SCCDXML notation which can then be compiled. This environment is bootstrapped, to create and model the editor and its UI behaviour within itself.
Research Internship 1: Model-Driven UI Engineering and Workflow Design Patterns.
-A Literature Review Front-end design includes expressing user interaction control-flow behaviour and data-flow of content in user interfaces of software applications. The emergence of an unprecedented mix of devices, technological platforms, and communication channels is not accompanied by novel approaches for creating a platform independent model (PIM). PIM is used to express interaction design decisions independently of implementation platform. This literature review, thereby, introduces the Interaction Flow Modeling Language (IFML), a standard front-end modeling language adopted by the Object Management Group (OMG) and employs a model-driven UI engineering paradigm. For a broader perspective of such UI modeling, this literature review essentially conducts a comparative study of the IFML with similar modeling languages in support of workflow design patterns used in the development of process-driven applications. The comparative study is also well supported with an experimental analysis by providing an IFML model representation for a BPMN model and a UML 2.0 Activity Diagram. In addition, the IFML is also experimentally evaluated for the support of UI modelling that are timed, autonomous, reactive and with dynamic structure.
Model-Driven Engineering: Analysis of BPMN Models
The Business Process Modeling Notation (BPMN) is a standard notation for capturing business processes. The mix of constructs found in BPMN and the lack of an unambiguous definition of the notation makes it possible to create models with semantic errors. Hence, analysis of BPMN models is desirable. This paper, thus, gives a highlight to the basic constructs of BPMN and employs model driven engineering approach to provide denotational semantics of BPMN, by mapping it onto a formal language, namely Petri nets, for which analysis techniques are available. |
Maintained by Addis Gebremichael. | Last Modified: 2022/08/02 14:29:57. |