Code Generation 2010: Lessons learned in building a Model Driven Software Factory
June 16th to 18th the Code Generation 2010 conference will be held in Cambridge UK. The Code Generation conference is Europe’s leading event on Code Generation and Model-Driven Software Development. The event has a strong practical focus and an emphasis on sharing experiences and knowledge. I’m glad my session proposal "Lessons learned in building a Model Driven Software Factory" has been accepted. The conference program is stuffed with interesting sessions and I think you can’t miss this event if you’re into Model Driven Software Development, Model Driven Development, Model Driven Engineering, Domain-Specific Languages, or what other name you use to say you are raising your level of abstraction.
A while back I wrote an article to explain the different types of Model Driven Engineering tools. We can distinguish DSL tools and Model Driven Software Factories. A DSL tool is used to design a DSL and to define the transformations needed to make a model expressed with that DSL executable. In principle you can build a Model Driven Software Factory using a DSL tool. A Model Driven Software Factory is a combination of one or more DSLs, the modeling tool created to use these DSLs, and the engine or transformations needed to turn the user input into a working software application.
In my session I will share my experiences with developing a successful Model Driven Software Factory. This Model Driven Development Platform is based on multiple DSLs, together describing a complete Service-Oriented Business Application. All DSLs have a graphical concrete syntax and are aimed at involving domain experts in the software development process. The platform has been used for many projects in the last five years and its user base is growing fast. I think it will be a session with some unique sneak peeks in the kitchen of a feature-rich Model Driven Development platform.
See Business Agility through Model Driven Development for a quick introduction into the ‘why’ behind this Model Driven Development platform.
Topics I will cover at Code Generation 2010 include:
- How to design a DSL?
- How to grow a DSL and how to handle that evolution?
- How to generate the application? What about code generation vs. runtime virtual machines?
- How to incorporate quality and testing in a Model Driven Software Factory?
- How to do release planning?
- How to create a large user base?
I think I will pretty much cover all important aspects of developing a Model Driven Software Factory. However, I can’t go into every detail. So, please use the comments below to ask your questions about the mentioned topics to guide me in selecting the right detail for each topic.
It would be very nice to meet you in my session or other sessions at Code Generation 2010. Please let me know if you have planned to go!