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

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...

Full description

Bibliographic Details
Main Author: Sen, Arnab (Author)
Other Authors: Sinha, Roopak (Contributor), Spray, John (Contributor)
Format: Others
Published: Auckland University of Technology, 2021-10-26T00:42:28Z.
Subjects:
Online Access:Get fulltext
LEADER 03600 am a22002413u 4500
001 14596
042 |a dc 
100 1 0 |a Sen, Arnab  |e author 
100 1 0 |a Sinha, Roopak  |e contributor 
100 1 0 |a Spray, John  |e contributor 
245 0 0 |a GALADE: A Round-Trip Graphical Modelling Tool for Abstraction Layered Architecture Applications 
260 |b Auckland University of Technology,   |c 2021-10-26T00:42:28Z. 
520 |a 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. 
540 |a OpenAccess 
546 |a en 
650 0 4 |a Round-trip 
650 0 4 |a Code generation 
650 0 4 |a Abstraction layered architecture 
650 0 4 |a Automatic layout 
650 0 4 |a Graphical IDE 
650 0 4 |a Graphical modelling tool 
655 7 |a Thesis 
856 |z Get fulltext  |u http://hdl.handle.net/10292/14596