Gandalf: software development environments
IEEE Transactions on Software Engineering
A structural approach to the maintenance of structure-oriented environments
SDE 2 Proceedings of the second ACM SIGSOFT/SIGPLAN software engineering symposium on Practical software development environments
A transformational approach to generating application-specific environments
SDE 5 Proceedings of the fifth ACM SIGSOFT symposium on Software development environments
Object-oriented analysis and design with applications (2nd ed.)
Object-oriented analysis and design with applications (2nd ed.)
The Unified Modeling Language user guide
The Unified Modeling Language user guide
VisPro: A Visual Language Generation Toolset
VL '98 Proceedings of the IEEE Symposium on Visual Languages
Montages/Gem-Mex: A Meta Visual Programming Generator
VL '98 Proceedings of the IEEE Symposium on Visual Languages
MULTIGRAPH: an architecture for model-integrated computing
ICECCS '95 Proceedings of the 1st International Conference on Engineering of Complex Computer Systems
Metamodeling-rapid design and evolution of domain-specific modeling environments
ECBS'99 Proceedings of the 1999 IEEE conference on Engineering of computer-based systems
Hi-index | 0.00 |
Domain-specific modeling and metamodeling environments most often base their output generation capability on wizards, output templates, grammar-based transformers, or hard-coded output generators. The complexity of the specification process for such generators, and their dependence on the domain do not encourage customization, flexibility, and reuse. This paper proposes a solution to this problem. In the proposed approach, the domains are (meta) modeled using the standard object-oriented paradigm. Second, the generation of a model in the target domain from a model in the source domain is specified using extended UML object diagrams that allow specification of conditional, repetitive, and sequential creation of instances of the target domain's abstractions. Finally, the transformation of models may be performed in a pipelined fashion, where each domain model and mapping may be either created from the scratch or reused from the repository. This approach allows more efficient, incremental building of more abstract domains and their mapping into less abstract domains, because each transformation step is much less complicated to specify, maintain, and reuse. Furthermore, by simple choosing another pipeline, different versions of the ultimate implementation from the same initial high-level, user-defined model may be obtained automatically. A prototypal supporting tool has been implemented and briefly presented in the paper.