Model-driven architecture (MDA) aims at automating soft-ware design processes. Design models are divided into platform-independentmodels (PIMs) and platform-speci c models (PSMs). A model compilertransforms the former models into the latter automatically. We can re-gard PIMs as a new kind of reusable software component because theycan be reused even if a platform is changed. However, a generated PSMis useless if it does not satisfy system limitations such as memory us-age and real-time constraints. It is necessary to allow a modeler tocustomize transformation rules because model modi cations for deal-ing with these limitations may be speci c to an application. However,current model compilers do not provide the modeler su cient customiza-tion methods. In order to tackle this problem, we propose a method forconstructing an extensible model compiler based on aspect orientation,a mechanism that modularizes crosscutting concerns. Aspect orientationis useful for platform descriptions because it crosscuts many model el-ements. A modeler can extend model transformation rules by de ningnew aspects in the process of modeling. In this paper, an aspect-orientedmodeling language called AspectM (Aspect for Modeling) for supportingmodeling-level aspects is introduced. Using AspectM, a modeler can de-scribe not only crosscutting concerns related to platforms but also otherkinds of crosscutting concerns. We believe that MDA is one of the ap-plications of aspect-oriented mechanisms. The contribution of this paperis to show that a model compiler can actually be constructed based onaspect-oriented mechanisms.
展开▼