Below, you can find a list of software that I have developed or co-developed. I am happy for you to use this software, but you do so at your own risk. If you find the software useful, please let me know. Also, where you need to make changes to the software, please let me know about them. Some of this software was co-developed with my students or with other researchers in a research project--when reusing or modifying the software, please acknowledge both them and me appropriately.
MDEOptimiser provides support for optimisation of EMF-based models.
GTSMorpher supports the algebraic manipulation (composition, transformation, model typing...) of executable domain-specific modelling languages
This is an extension of the Epsilon Generation Language allowing code to be generated from a number of templates, which are woven together by the generation engine.
VML* is a generic specification language for modelling product-line variability. In particular, it allows expressing the mapping between features and their effect on system models.
The DPIO is a tool for finding design patterns based on a description of a design problem. It is based on an ontology-based specification of the design-pattern intent.
Reuseware is an Eclipse-based system for generic, model-based invasive software composition. See our paper "On Language-Independent Model Modularisation" for an extensive discussion of the concepts in Reuseware.
A Java framework for point of sale applications that is being used in undergraduate problem-based project courses. I developed the original versions of this system up to version 3.0 (co-developed with students from UniBW Munich). Salespoint has been used as the support system for group projects with a total of up to 500 students.
A framework and toolkit for parsing, interpreting, compiling and evaluating OCL expressions. Mostly used as a research prototype and testbed for new ideas in the area of OCL and constraint languages, it has seen substantial use in the community. I co-developed and co-administrated the toolkit during my time at Technische Universitšt Dresden, Germany.