GALADE: A Round-Trip Graphical Modelling Tool for Abstraction Layered Architecture Applications

Date
2021
Authors
Sen, Arnab
Supervisor
Sinha, Roopak
Spray, John
Item type
Thesis
Degree name
Master of Philosophy
Journal Title
Journal ISSN
Volume Title
Publisher
Auckland University of Technology
Abstract

In recent years, a new software architecture, the Abstraction Layered Architecture (ALA), has emerged at Datamars Ltd to help address the issue of code bases becoming harder to maintain over time. Previous quantitative assessments, using a refined set of metrics based on the ISO/IEC 25010 and 25023 quality models, have strongly indicated that using ALA to develop an application allows for high modularity, testability, reusability, and analysability. These merits are largely supported through the separation of logical software components into artefacts called \textit{domain abstractions}. These domain abstractions are wired together at runtime through common interfaces, through which they communicate with one another.

This usage of wiring has enabled the visualisation of ALA applications as directed port graphs, and has led ALA application development to incorporate a diagram-first approach. The design of the application would be drawn first, from which the application code would be written. The problem that arose, then, was that it was a manual and time-consuming process to ensure that changes in the diagram were correctly reflected in the code, and vice versa. After seeing promising results from a prototype code generation tool, Datamars Ltd sought to develop a graphical tool that could visualise ALA diagrams, automatically generate the corresponding application code, and keep both ends synchronised.

We have systematically examined the literature, and found that no tools exist that can holistically satisfy the requirements that such a tool would impose.

Therefore, this thesis presents the Graphical Abstraction Layered Architecture Development Environment (GALADE), a novel tool to support the visualisation and maintenance of ALA applications. The creation of this tool has been the result of a productive partnership between Auckland University of Technology (AUT) and Datamars Ltd. All of the development for this tool has been performed by the author, with consultation and resources provided by Datamars Ltd.

We have used the Design Science research methodology to frame the design, development, and evaluation of GALADE. A case study of GALADE in use at Datamars Ltd suggested that it improves productivity in ALA-based development, and a qualitative and quantitative evaluation has shown that GALADE shows significant improvements to the previous diagram-first design process for ALA.

Finally, ALA is a reference software architecture that has so far shown promise in the embedded software field, and research is underway to examine its applicability in other software fields. This implies that GALADE has the potential to be a general-purpose tool for the visualisation and development of highly maintainable software, therefore GALADE may be significant for the wider community of software engineering researchers and practitioners.

Description
Keywords
Round-trip , Code generation , Abstraction layered architecture , Automatic layout , Graphical IDE , Graphical modelling tool
Source
DOI
Publisher's version
Rights statement
Collections