HomeHomeHomeArchiteturMiddlewareMDSDBeratungCoachingTrainig
header
homemailbacksearchimpressum

go back go up Services :: Open Source

dotted Line
dotted Line
menu not Selected Home
dotted Line
menu not Selected Services
   menu selected Open Source
   menu not Selected References
dotted Line
menu not Selected Experience
dotted Line
menu not Selected Conferences
dotted Line
menu not Selected Publications
dotted Line
menu not Selected Vorlesungen
dotted Line
menu not Selected Site
dotted Line
dotted Line

magic Pixel banner 0

magic Pixel banner 1

magic Pixel banner 2

magic Pixel banner 3

magic Pixel banner 4
magic Pixel

Many of the tools I am involved in are available as open source. Below is a list, the most current projects are at the top.

mbeddr.com - rethinking embedded development

mbeddr.com aims at creating a different way of developing embedded software systems. Instead of using archaic modeling tools and manually written C code, we use the open source JetBrains MPS language workbench to create a holistic approach to embedded development, where C programming, modeling, domain specific extensions and product line variability are supported directly. Take a look at this video to learn details.

Xtext Variability Tooling

Google Code Page Product line engineering and model driven development are two approaches to software development that are becoming more and more important. The combination of the two approaches is promising. There are various ways of how those two approaches can be combined. One way is to use feature modeling to define variants of models created with domain specific languages. The tools in this project are in implementation of this approach. For textual DSLs built with openArchitectureWare 4.3.1 Xtext this project contains tools to define variability. This means, that feature dependencies can be annotated to arbitrary grammar elements. A model processor removes all the elements from the model after it has been loaded whose features are not selected in the current configuration. Tool integration exists with pure::variants. Code completion from the DSL into the feature model is implemented, as well as traceability from the feature back to the models. For completeness this project also contains a text processor that can customize text files according to features selections. The download page contains documentation of how these tools should be used. To understand the background, please refer to my Architecture As Language papers, Part 1 and Part 2.

Meta Model Semantic Annotations

Google Code Page Many languages defined with Xtext have aspects in common. One way of exploiting this is to modularize language definitions and then composing specific languages from these modules. However, because of shortcomings of the current (4.3.1) version of Xtext, this is not necessarily a very viable approach. This semantic annotation toolkit provides support for another approach. Languages are generated from scratch (i.e. there is no reuse between grammar fragments), but the semantics of various language building blocks are still reusable. By annotating grammar elements with semantic annotations, the necessary Xtext infrastructure can be generated to make those grammar elements behave in a given way. Technically, this is implemented by generating extensions and checks as well as by model transformations and extensions of the meta model.

Model Visualization

Google Code Project Page This project contains a number of utilities to visualize EMF models. Visualizations are read-only, automatically layouted, and created via a model-to-model transformation. The visualization is based on the Eclipse ZEST project. The visualization toolkit is used in the following way: developers write a model to model transformation for a given language. The transformation maps language abstractions to a generic graph meta model consisting of nodes and edges with various decorations. The current state of the project is still very much a prototype. We are actively looking for additional contributors.

openArchitectureWare

Website oAW is one of the most used MDSD tools worldwide. It is based on Eclipse. The most well-known parts of oAW are the Xpand template engine as well as the Xtext tool for building textual DSLs and the associated editors. As of 2010, all of oAW's ingredients have moved to Eclipse into their own projects or components.