MetaCase Newsletter 2012/1

February 2012

Visual Studio integration with MetaEdit+ 

Integrate your modeling and coding with the MetaEdit+ extension for Visual Studio. One click access to your MetaEdit+ repository and a live tree view of all your models: just double-click to open a model and edit it. With the extension's Autobuild button in Visual Studio you can generate code from the models, have it imported into a Visual Studio project, build and link it with existing hand-written code, and run the resulting application. As the application runs you can trace and debug it on both the code and model levels simultaneously.

Watch a video (5 min) demonstrating the integration. You can try it out for yourself with MetaEdit+ 4.5, or for the best experience download the beta version of MetaEdit+ 5.0. The included digital watch example shows how the C# code and other project data is generated and imported into Visual Studio, and built and run there. The tutorial also demonstrates the power of Domain-Specific Models as the same models generate functionally identical applications to multiple platforms (C# Windows executable, W7 phone app, and Java applications). 

The extension is available for download from the Visual Studio Gallery. The complete user guide and source code is available from CodePlex, released as open source under the MIT license.

In this issue: 

  • Visual Studio integration with MetaEdit+ 
  • Workshop on Graphical Modeling Language Development 
  • DSM tutorials
  • Sponsoring Code Generation 2012 
  • From the forums: Exporting graphs to XML
  • Webinars on creating Domain-Specific Modeling languages with MetaEdit+ 
  • Upcoming events 

Workshop on Developing Graphical Modeling Languages 

With the growing interest in Domain-Specific Modeling, MetaCase is proud to announce the workshop on Developing Graphical Modeling Languages, which it will co-organize at the coming ECMFA conference, 3 July in Kgs. Lyngby, Denmark. 

All users of MetaEdit+ are invited to submit papers and participate in the workshop. This workshop should provide a great place to share experiences and learn best practices from other language engineers. While we are interested to see working domain-specific modeling languages, we want to cover all the phases of language development, including definition, testing, evaluation, and maintenance of modeling languages. 

For submission and registration details please visit the workshop webpage.

Tutorials on Domain-Specific Modeling 

This spring MetaCase personnel are giving a number of tutorials on various aspects of Domain-Specific Modeling languages. 

Hands-on with MetaEdit+: In this popular double session you'll implement five fully functional DSLs, with generators and complete tool support (CodeGen 2012, 29th March, Cambridge, UK) 

Concrete syntax matters: Based on cognitive and empirical research Dr. Steven Kelly describes how to define languages that look great and are appreciated by users (CodeGen 2012, 30th March, Cambridge, UK). 

Domain-Specific Modeling for full code generation: Dr. Juha-Pekka Tolvanen describes how to identify language constructs and define DSLs, different ways to implement generators, and how to build tool support for your language (ECMFA 2012, 2 July, Kgs Lyngby, Denmark)

Sponsoring Code Generation 2012 

MetaCase is proud to continue sponsoring the Code Generation conference, which will be held on 28-30 March in Cambridge, UK. 

The Code Generation conference is Europe's leading event on the practical applications of Model-Driven Software Development. It offers a high quality learning experience by combining discussions and debates with a diverse range of practical tutorials and workshops. It will also give you the opportunity to share experiences and knowledge with fellow developers. 

The conference is now in its sixth year and is considered to provide a high-value learning experience. This reputation has been built up by attracting industry-recognized experts to speak at the conference.

From the Forums: Exporting graph to XML

When you have a question, the MetaEdit+ Web Forums have proven to be a great way to get accurate answers quickly. At the same time, your question helps others for the future: some threads have been read over 3000 times. 

This issue's highlighted topic comes from Mafkeeswho asks how to how to create a relationship that can link more than two objects.


Q: I have a custom graph type which I use for developing models. After the creation, I want to export the model to XML. Rather than exporting each graph to XML via the menu, I prefer a button in the graph toolbar that allows me to export the model to XML directly. When the model is exported, I want to execute a program (that is installed on my pc) that reads the just generated XML file. 

Thank you in advance!

Create a new generator called '!XML' - the ! means it will be shown as a button in the diagram editor toolbar. 

The start of the generator will export the model to a .mxm file - MetaEdit+'s XML model format: 

filename id '.mxm' print 

Next you want to execute a program, let's say processXML.exe, with the new file as a parameter enclosed in double quotes: 

external 'processXML.exe "' id '.mxm"' execute 

Both these commands start and end with a keyword, and between the keywords we build up the filename or command. 

When you open one of your graphs, you'll see a new XML button at the end of the toolbar. Pressing it will export that graph and process it. If the graph has subgraphs, they'll be included.


See other topics from the MetaEdit+ Web Forums here

Free Webinars: Domain-Specific Modeling with MetaEdit+

The 30 minute webinar will demonstrate how MetaEdit+ allows you to incrementally define your own modeling tool - without having to write a single line of code. As soon as you define a modeling language, or even a partial prototype, you and your team can start to use it in MetaEdit+. You will learn: 

  • How to define domain-specific languages with MetaEdit+
  • How to define rich dynamically changing notations 
  • How MetaEdit+ updates models on the fly as the modeling language changes
  • How to test and debug the modeling language and generator 

For the webinar you can use your computer's microphone and speakers - a headset is recommended. The schedule for the webinars and instructions are available on the webinar page

Alongside the webinars, we're also offering company-specific webmeetings for DSM. These allow us to focus on your particular vertical, e.g. automotive, product line, UI, telecom or service specification. We can show you and your team DSM languages and cases from your vertical as well as discussing your company-specific requirements - all of course with no obligation. Book your own free one-to-one webmeeting now!

Upcoming events - see you there!

Meet our experts and see a demonstration of Domain-Specific Modeling with MetaEdit+ at any of the following events:

Language Workbench Challenge, Cambridge, UK, 27 March 2012 

Code Generation Conference, Cambridge, UK, 28-30 March 2012 

Graphical Modeling Language Development, Kgs. Lyngby, Denmark, 3 July 2012 

European Conference on Modeling Foundations and Applications, Kgs. Lyngby, Denmark, 3 July 2012