Components

Beyond domain specific languages for business applications and necessary code generators, die modellwerkstatt supplies runtime environments and components to execute generated code straight away. This let our java toolchain for business application development become a plug and play solution when looking for a stable long-term application platform. 

Currently, die modellwerkstatt provides three target platforms to run generated code on:

  1. A fat-client platform, which lets you run your applications on desktop computers without the need for an application server. We employ Java FX8, the user interface toolkit that ships with Java 8, as frontend. The well known spring framework is used to provide common application services, leaving you with almost no dependencies to other technologies. The fat client platform is robust and easy to maintain. You can start your business application simply straight away from the development IDE. 
     
  2. A servlet platform, which lets you deploy generated applications to a server. Following the java servlet standard, we offer a runtime to execute business applications in any servlet container. No need for clunky and complex java application servers which are hard to set up and run. Tomcat or jetty can provide the functionality to deliver your business application to users. die modellwerkstatt supports out of the box a jquery mobile frontend and an even more compact html5 frontend, which targets at mobile scanning devices. However, you can write your own html frontend and use our platform only for backend services - just stick to our H1Page architecture.

  3. With winter 2015 we provide a vaadin web-browser frontend which comes with all features available in the fat-client platform. It even looks the same! This runtime configuration let you deploy your business application straight on a web-server (e.g tomcat) where users can access it via a web-browser and a single URL. Vaadin is a modern way for building HTML5 based web applications. Your application looks and feels snappy and you're able to create an instant wow effect. Your application will work on all devices out of the box. However, as a developer you do not have to fiddle around with vaadin itself. You will just use our simple and easy to learn forms dsl.    

Figure 2 illustrates all three runtime environments. Without regenerating or recompiling your applications, the executable code can be deployed to all three targets. Tomcat and spring leaves you with an easy to maintain server architecture. Develop your application on the desktop, test it and deploy it later on to a server. 





  

(Figure 1: Runtime Environments)







The development environment is shown in figure 2. Three domain specific languages are stacked on top of Jetbrains Java baselanguage. Three code generators create executable code. Developers can focus on the business aspects of the applications. No technical knowledge regarding the system architecture, runtime environments and java libraries are necessary.   



(Figure 2: Development Environment)