Repository logo

An approach to composing aspect-oriented design models

Abstract

Developers of complex software systems are often required to address security, fault-tolerance and other extra-functional goals. The features that realize these goals are often spread across and tangled with other features in a design. It can be difficult to modify and evolve these crosscutting features. Localizing crosscutting features in a design can help developers manage the evolution of the features. The aspect-oriented modeling (AOM) approach supports separation of crosscutting features from other features during design. An aspect-oriented design consists of a primary (base) model and a set of aspect models. A primary model describes the dominant structure of a design and an aspect model describes a feature that crosscuts the dominant structure. The aspect models and the primary model must be composed to obtain a system view that integrates features described by the models. Composing aspect and primary models using a general-purpose model composition procedure may produce a composed model with undesirable properties. Composition directives can be used to alter how a general-purpose composition procedure composes models in the case where it is known or expected th at the procedure will produce incorrect results. In this thesis, we provide a technique for composing aspect and primary design models consisting of class and sequence models. Model composition involves merging aspect class models with primary class models and incorporating sequences of interactions specified in aspect models into primary sequence models. The aspect and primary class models are merged using signatures consisting of model element properties. The signatures provide a more flexible way to merge class models than the name based approach used by other researchers. We describe a general-purpose composition procedure that can be varied using composition directives. The research provides composition metamodels that can be used as the basis for developing model composition tools. The class model composition metamodel developed in this research is very detailed than the metamodel provided by other researchers. The composition metamodel described in this thesis contains specifications of composition behavior that can be used to implement the composition. We have developed a prototype tool that implements the composition metamodel. The interaction model composition technique developed in this research for composing aspect and primary sequence models is novel. Composition of sequence models has not been addressed by any other researcher previously. The class model and sequence model composition techniques are applied in pilot studies to demonstrate the usage of the composition techniques.

Description

Rights Access

Subject

computer science

Citation

Endorsement

Review

Supplemented By

Referenced By