6533b851fe1ef96bd12a8c3b

RESEARCH PRODUCT

Metamodel Specialization for DSL Tool Building

Janis BarzdinsAudris Kalnins

subject

FlowchartTheoretical computer scienceComputingMethodologies_SIMULATIONANDMODELINGComputer scienceProgramming languagecomputer.software_genreTransformation languagelaw.inventionMetamodelingDomain (software engineering)Unified Modeling LanguageSoftware_SOFTWAREENGINEERINGlawAbstract syntaxSpecialization (logic)Class diagramSoftware_PROGRAMMINGLANGUAGEScomputercomputer.programming_language

description

Most of domain-specific tool building and especially diagram editor building nowadays involves some usage of metamodels. However normally the metamodel alone is not sufficient to define an editor. Frequently the metamodel just defines the abstract syntax of the domain, mappings or transformations are required to define the editor. Another approach [8] is based on a fixed type metamodel, there an editor definition consists of an instance of this metamodel to be executed by an engine. However there typically a number of functionality extensions in a transformation language is required. The paper offers a new approach based on metamodel specialization. First the metamodel specialization based on UML class diagrams and OCL is defined. A universal metamodel and an associated universal engine is described, then it is shown how a specific editor definition can be obtained by specializing this metamodel. Examples of a flowchart editor and UML class diagram editor are given.

https://doi.org/10.1007/978-3-319-40180-5_5