Universiti Teknologi Malaysia Institutional Repository

AJFCode: an approach for full aspect-oriented code generation from reusable aspect models

Mehmood, Abid and Abang Jawawi, Dayang Norhayati (2022) AJFCode: an approach for full aspect-oriented code generation from reusable aspect models. KSII Transactions on Internet and Information Systems, 16 (6). pp. 1973-1993. ISSN 1976-7277

[img] PDF
745kB

Official URL: http://dx.doi.org/10.3837/tiis.2022.06.011

Abstract

Model-driven engineering (MDE) and aspect-oriented software development (AOSD) contribute to the common goal of development of high-quality code in reduced time. To complement each approach with the benefits of the other, various methods of integration of the two approaches were proposed in the past. Aspect-oriented code generation, which targets obtaining aspect-oriented code directly from aspect models, offers some unique advantages over the other integration approaches. However, the existing aspect-oriented code generation approaches do not comprehensively address all aspects of a model-driven code generation system, such as a textual representation of graphical models, conceptual mapping, and incorporation of behavioral diagrams. These problems limit the worth of generated code, especially in practical use. Here, we propose AJFCode, an approach for aspect-oriented model-driven code generation, which comprehensively addresses the various aspects including the graphical models and their text-based representation, mapping between visual model elements and code, and the behavioral code generation. Experiments are conducted to compare the maintainability and reusability characteristics of the aspect-oriented code generated using the AJFCode with the most comprehensive object-oriented code generation approach. AJFCode performs well in terms of all metrics related to maintainability and reusability of code. However, the most significant improvement is noticed in the separation of concerns, coupling, and cohesion. For instance, AJFCode yields significant improvement in concern diffusion over operations (19 vs 51), coupling between components (0 vs 6), and lack of cohesion in operations (5 vs 9) for one of the experimented concerns.

Item Type:Article
Uncontrolled Keywords:aspect-oriented software development (AOSD), AspectJ, automated code generation, model-driven engineering (MDE), software design
Subjects:Q Science > QA Mathematics > QA75 Electronic computers. Computer science
Divisions:Computing
ID Code:102740
Deposited By: Yanti Mohd Shah
Deposited On:20 Sep 2023 03:36
Last Modified:20 Sep 2023 03:36

Repository Staff Only: item control page