Step 1: Define domain-specific concepts
Language development starts by defining the concepts of your modeling language. Depending on your domain the concepts raise from the required output to be generated, from product components in use, from product architecture, from product-line characteristics, etc. MetaEdit+ makes your domain concepts then automatically available as modeling languages: it provides domain concepts and rules to the developers. Use of domain-specific concepts in models have shown ten times productivity improvements making own modeling language implementation very cost-effective (look success stories for more information).
|
Define concepts |
Use them in designs |
|---|---|
![]() |
|
DSM language development is fast and easy with MetaEdit+’s metamodeling tools. The tools do the hard work allowing you to concentrate on designing a modeling language that fit your domain. You create the language's concepts and their associated properties and rules by filling in the forms or by specifying them graphically. There are six metamodeling concepts and related tool for specifying languages into MetaEdit+:
- Object Tool: here you specify the basic concepts of your modeling language. Objects are the main elements of your design, symbols you connect together and often reuse, such as Process, Message, Button and State.
- Property Tool: here you define the properties (attributes) which characterize other language concepts. Properties can be of different data types (string, text, number, Boolean, collection etc.) and link to other modeling language concepts or to external files. Examples of properties are State name, Function identifier, Display type, and Data type.
- Relationship Tool: here you define properties and symbols for the objects’ connections, such as Inheritance, Message, Call and Transition.
- Role Tool: here you specify the lines and end-points of relationships, like the Superclass part of Inheritance relationships and the Client part of Message Connections.
- Port Tool: here you define possible interfacing constraints when connecting objects, like digital input at hardware card or control flow attached to the bottom of the process elements.
- Graph Tool: here you manage specifications of whole modeling techniques, such as State Diagram and Component Diagram. Techniques are composed of the Objects, Relationships and Roles defined with other tools, together with bindings and rules on how these can be connected. Different techniques can be integrated with explosions, decompositions and reusable modeling concepts.



