A Study on Extensible Domain-specific Languages
Project/Area Number |
16500020
|
Research Category |
Grant-in-Aid for Scientific Research (C)
|
Allocation Type | Single-year Grants |
Section | 一般 |
Research Field |
Software
|
Research Institution | Kyushu Institute of Technology |
Principal Investigator |
UBAYASHI Naoyasu Kyushu Institute of Technology, Faculty of Computer Science and Systems Engineering, Associate Professor, 情報工学部, 助教授 (80372762)
|
Co-Investigator(Kenkyū-buntansha) |
HASHIMOTO Masaaki Kyushu Institute of Technology, Graduate School of Computer Science and Systems Engineering, Professor, 情報工学部, 教授 (20253560)
|
Project Period (FY) |
2004 – 2006
|
Project Status |
Completed (Fiscal Year 2006)
|
Budget Amount *help |
¥3,500,000 (Direct Cost: ¥3,500,000)
Fiscal Year 2006: ¥1,500,000 (Direct Cost: ¥1,500,000)
Fiscal Year 2005: ¥1,200,000 (Direct Cost: ¥1,200,000)
Fiscal Year 2004: ¥800,000 (Direct Cost: ¥800,000)
|
Keywords | Model-driven Development / Aspect Orientation / Model Compiler / Meta Programming / Domain |
Research Abstract |
We have developed AspectM, an extensible domain-specific language based on UML. In this language, the notion of aspect orientation is introduced. The AspectM support tool consists of the model editor and the model compiler. Using the AspectM model editor, a developer can easily create UML and aspect diagrams. The editor provides the UML metamodel extension mechanism in which metamodel elements can be added or modified by using MMAP (Meta Model Access Protocol)---UML is extended by UML itself. This can be regarded as a kind of modeling-level reflection. In our approach, the model descriptions for extending UML can be accumulated as software components that enhance the functionality of the model editor. Using these components, a developer can create a model whose notation is suitable to a specific domain. The AspectM model compiler is composed of the model weaver and code generator. Adopting model-based development methods, a developer can create a model that represents the essential aspects of the targeted software without considering the detail of the platforms (OS, middleware, and framework) and programming languages. In the model weaver, the mapping rules from the model notations extended by the model editor to the actual platform descriptions are described as aspects. A developer can extend the functionality of the weaver by defining aspects.
|
Report
(4 results)
Research Products
(26 results)