In Model Driven Engineering (MDE) applications are defined by models, enabling code to be automatically generated through a higher level of abstraction than source code. As a developer, you can think about modeling as a way to increase your productivity by avoiding manually writing similar parts of an application in different places, over and over again.
By developing domain-specific languages (DSL) the specification of an application can even be performed by business departments, reducing organizational gaps and misunderstandings between the customer and the development team. As a business analyst, you can think about modeling as a way to directly create parts of the application in an understandable language instead of describing the requirements to a development team.
The Eclipse Modeling Top-Level Project facilitates MDE for Eclipse and is one of the biggest and most active areas in the Eclipse ecosystem. The Eclipse Modeling Framework (EMF) builds the foundation for a variety of modeling technologies such as the Graphical Modeling Framework (GMF) or textual modeling (XText), and has become a widely used standard for modeling worldwide.
EclipseSource team members actively lead and participate in the Eclipse Modeling community. We lead the project EMFStore, which provides a framework to version EMF models and model instances as well as the EMF Client, a highly configurable platform for EMF-based client applications.
Maximilian Koegel and
Jonas Helming
EclipseSource Munich leads
Email: modeling@eclipsesource.com
Phone: +49 89 21 555 301
Fax: +49 89 21 555 302
Modeling allows the generation of parts of an application instead of implementing the source code manually. This increases the development speed and even more importantly, it increases the implementation quality. Models can be checked for consistency before source code is created from them. If an application evolves, changes only have to be applied in the model, while the source code can be re-generated automatically.
Models provide a higher level of abstraction than source code. Developers can focus on key aspects of an application, instead of dealing with the complexities inherent in a programming language. The creation of custom models, so-called Domain-Specific Languages (DSL), can make the application understandable for business departments without a background in programming. The means that business experts can collaborate directly on the model with developers, rather than communicating through requirements documentation.
The Eclipse Modeling project is one of the largest projects in the Eclipse ecosystem. A continuously increasing number of open-source frameworks provide a very rich feature set that can be used in your projects. In turn, the core frameworks, such as the Eclipse Modeling Framework (EMF) have been developed by a community of experts from different companies, over a period of more than 10 years. This technological stability is an important cornerstone of the project and has attracted many tools and frameworks developers to adopt the Eclipse Modeling Technology.
Maximilian Koegel and
Jonas Helming
EclipseSource Munich leads
Email: modeling@eclipsesource.com
Phone: +49 89 21 555 301
Fax: +49 89 21 555 302
Jonas Helming and Maximilian Koegel, March 21st 2011, EclipseCon
This tutorial introduces how to use EMF and explains the basics. It shows how to build a simple data-centric application based on EMF including the UI, how to define a model in EMF and how to generate code from it. In the second part, there will be a brief overview of the most important additional technologies. The projects are EMF Compare, GMF, EEF, EMF Client Platform, Teneo, CDO, EMFStore, EMF Query 2 and EDAPT.
View the slides from EclipseCon 2011 on Slideshare
Register to download the complete tutorial .pdf
Jonas Helming, July 2011, Eclipse Embedded Day
Models are widely used in software projects for communication, simulations and for code generation. In this context, the models are collaboratively developed and as such a version control system is required. However, existing versioning systems such as SVN or GIT are focused on textual artifacts and do not work well for models. The EMFStore is a repository and version control system for the Eclipse Modeling Framework (EMF) designed especially for models. Instead of versioning the textual serialization of a model, it allows semantic versioning of the model and as a result, supports merging and conflict detection more effectively.
Maximilian Koegel and
Jonas Helming
EclipseSource Munich leads
Email: modeling@eclipsesource.com
Phone: +49 89 21 555 301
Fax: +49 89 21 555 302
Our developers and consultants have many years experience with the key modeling technologies at Eclipse. We are project leads and committers on the following projects:
EMFStore - A model repository for EMF models and model instances
EMF Client Platform - A generic and extensible UI for EMF models
EDAPT - A framework to migrate EMF model instances based on meta-model changes.
Maximilian Koegel and
Jonas Helming
EclipseSource Munich leads
Email: modeling@eclipsesource.com
Phone: +49 89 21 555 301
Fax: +49 89 21 555 302
http://www.eclipsesource.com
© EclipseSource 2008 - 2012