Aspect-oriented modelling

Wallis, Tom (2024) Aspect-oriented modelling. PhD thesis, University of Glasgow.

Full text available as:
[thumbnail of 2024WallisPhD.pdf] PDF
Download (3MB)

Abstract

Aspect-oriented programming is a software engineering paradigm used to modularise parts of a program which are difficult to separate using other means. It does this using aspects: combinations of program modifications and places to apply them. While it has received some academic interest, aspect orientation has seen lukewarm adoption from industry and its practical benefits are not well demonstrated. The paradigm lacks a use-case for which aspects are particularly well-suited.

One such use-case may be in producing and maintaining codebases for research purposes. In many fields, research is conducted with the aid of software models. Changes to these models are delicate: they may invalidate results, add complexity to a codebase, or absorb researchers’ time. These changes could be represented as aspects, but the paradigm is yet to be applied to codebases for scientific models. We propose that aspects are particularly well-suited to describe these changes and that aspect-oriented modelling may ease model maintenance.

This thesis investigates the viability of aspect-oriented modelling for simulation purposes. An aspect-oriented programming framework is implemented which addresses criticisms of the paradigm, and contributes new kinds of aspects which are useful for describing changes to models. With this tool, a case study of aspect-oriented modelling is constructed using a model of a real-world mobile game and its players’ activity. This forms the foundation of three experiments. They demonstrate that aspects can be used to successfully augment models, can add new behaviours and parameters to models, and can be reused across different models in some cases. As these contributions invite new research in many fields, the thesis also enumerates the possibilities enabled for others researching aspect orientation, simulation & modelling, and research software engineering, as well as the methodological implications for researchers whose hypotheses are encoded within software models.

Item Type: Thesis (PhD)
Qualification Level: Doctoral
Additional Information: Supported by funding from International Data Flows Ltd.
Subjects: Q Science > QA Mathematics > QA75 Electronic computers. Computer science
Q Science > QA Mathematics > QA76 Computer software
Colleges/Schools: College of Science and Engineering > School of Computing Science
Funder's Name: International Data Flows Ltd.
Supervisor's Name: Storer, Dr. Tim
Date of Award: 2024
Depositing User: Theses Team
Unique ID: glathesis:2024-84511
Copyright: Copyright of this thesis is held by the author.
Date Deposited: 29 Aug 2024 13:19
Last Modified: 29 Aug 2024 13:30
Thesis DOI: 10.5525/gla.thesis.84511
URI: https://theses.gla.ac.uk/id/eprint/84511
Related URLs:

Actions (login required)

View Item View Item

Downloads

Downloads per month over past year