Migrating a large modeling environment from XML/UML to Xtext/GMF

  • Authors:
  • Moritz Eysholdt;Johannes Rupprecht

  • Affiliations:
  • itemis AG, Kiel, Germany;VSA Group, Munich, Germany

  • Venue:
  • Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

If you use UML to drive code generation, what do you do when a UML model grows so large that the tool needs 60 minutes to open it? What if it turns out that UML doesn't provide the expressiveness you need? What if your UML editor barely provides feedback about the validity of your models and the turnaround time from modeling to codegeneration and compilation is somewhere between setting up a new can of coffee and reading a day's amount of slashdot.org news? Time to look for a different modeling solution... This paper reports how VSA (Verrechnungsstelle der Süddeutschen Apotheken GmbH, one of the most well-known billing centers for pharmacies in Germany) migrated their inhouse modeling environment and their existing models from UML to an Eclipse Modeling based solution: Models of all five pre-existing modeling languages are now persisted textually and can be edited using Xtext. Models of two chosen modeling languages can additionally be edited graphically using GMF-based editors which store their models textually using Xtext. The modeling environment provides tight integration with the JDT for referencing and navigating to Java elements. Custom validation rules provide the earliest feedback possible for the modeler. An Eclipse Builder triggers incremental code generation, which keeps the turnaround time to a minimum. This paper describes the old modeling environment, addresses the challenges of the migration and outlines the new modeling environment. Furthermore, it documents how to integrate GMF with Xtext. The project has been realized in cooperation between VSA and itemis AG. VSA had the knowledge about the existing modeling environment, itemis AG, a consulting company with several full-time Eclipse Modeling Committers, brought in their knowledge about EMF, Xtext, GMF, etc.