Diploma thesis

Currently I’m working on my diploma thesis. I am developing a graphical dataflow editor which gives users the ability to visually connect filter components defined in a C++ framework. A generator finally creates the corresponding C++ code setting all components up. As development platform I have chosen the Eclipse/Java platform paired with these frameworks and technologies:

  • openArchitectureWare framework (oAW) fully defines a model-driven workflow according to the MDSD approach. It highly builds upon OMG’s MDA standards (CIM>PIM>PSM>Code, QVT, OCL, UML, MOF), though sometimes lowering complexy and making use of modeling solutions offered by Eclipse; for example they use EMF/Ecore, a subset of MOF, UML’s metamodel offered by Eclipse. oAW incorporates different technologies (languages as well as so-called cartridges) connected by a workflow definition file:
    • oAW Xtext gives you the ability to specify your own textual domain-specific language (DSL) through enhanced EBNF grammar rules, for which it creates a fully-blown Eclipse editor (syntactical highlighting, outline view, keyword completion, error viualization), an Ecore meta model, as well as a parser for transforming a DSL instance file into a meta model instance.
    • oAW Xtend lets you transform one meta model instance into another meta model instance using a QVT-like rule style and OCL expression.
    • oAW Xpand is a pattern-based language. It helps you transform models into code.
    • oAW Checks is a language for specifying model constraints. Like in any oAW technology, OCL is used. A GMF Adaptor enables you to use constraints defined in Checks in your (visual) GMF model editor, you don’t have to define each and every constraint again.
    • the oAW Recipe framework is for marking parts of generated artifacts which have to be further edited by hand (most MDSD-projects contain non-repeating parts, they have to be manually written).
    • a UML2 Adaptor let’s you decide to not use EMF/Ecore as meta-metamodel, but UML2.
  • the Eclipse Modeling Framework (EMF) is an implementation of essential MOF (EMOF), a subset of UML’s meta language MOF, coined to the Java platform.
  • Eclipse Graphical Editing Framework (GEF) and Graphical Modeling Framework (GMF). While GEF is a framework for manually writing graphical editors embedded into the Eclipse IDE, GMF goes one step further: just create the underlying Ecore model and some Ecore models of your editor appearance and a mapping between model, editing elements and toolbox elements and voila, an EMF interface and EMF and GEF editor plugins are automatically generated.
  • last but not least I’m using Eclipse Subversion (SVN) as version control system. On a Mac there’s just a
    svnadmin create /Volumes/USBSTICK/SVNRepository

    on the terminal to create a local repository on my USB stick. In Subclipse, I added the location URL file:///Volumes/USBSTICK/SVNRepository as a new repository and did an initial check-out. Cf. this tutorial
  • .

To be continued…


No Comments to “Diploma thesis”  

  1. No Comments

Leave a Reply