A quick look at the MDE keywords appearing in job offers show that UML is still by far the most common MDE skill requested. Probably the fact that some still think that UML is a development method helps.
Another (non-scientific) conclusion from the graph is that the MDE job market is growing very slowly. UML demand has stalled and only MDA (first) and MDD (now) demand has increased a little bit. As much as I like metamodeling it is clear that metamodeling experts have no future in the job market (they could reinvent themselves as DSL experts to have a slightly brighter future) 🙂
You can “play” with other keywords and discover new job trends using this page (thanks to El Arbi for the link)
FNR Pearl Chair. Head of the Software Engineering RDI Unit at LIST. Affiliate Professor at University of Luxembourg. Â More about me.
I think metamodeling and DSL designing are akin to framework/API designing. It is hard to find job ads for that kind of work, and I think that it is for a reason. Those encompass just an aspect of software development, that is usually taken on by the more experienced/capable developers in an organization, instead of some role you would be hiring for.
Cheers,
Rafael
http://abstratt.com/blog
Modeling is a way of reasoning and organizing domain knowledge. Employers might not understand its use yet, but as the plethora of information increases and the need to make sense of all that exist becomes so more important, modeling will start to permeate all areas of problem solving – not just software development.
http://kayodedosunmu.blogspot.com/
The problem WITH modelling IS maitanance OF the model artifacts, which have TO be updated AS the model changes. Currently modelling IS MORE used TO understand the project IN the intial stages OF the project. Also making sure the model IS the one being implemented IS another painful issue. What we need IS executable models. Also executable models help you IN changing the model much faster than traditional development(converting the model TO code manually).
Am I missing something OR executable models IS a new NAME FOR an old concept: code generation FROM models WITH precise semantic?
Some examples OF established practice exist FOR this: see our experience WITH the WebML DSL (www.webml.org) AND WebRatio (www.webratio.com): we have model transformations (e.g., BPMN TO WebML), code generation, AND transformation rule customization. Thus, we GRANT alignment OF models AND code, because you customize the rules AND NOT the running apps. The approach has been successfully applied TO mid-SIZE TO huge industrial cases.
For quantitative productivity evaluation see this paper AND presentation.
See also this presentation ON SlideShare AND the demo movie ON YouTube.
To me Executable UML is more than code-generation. Code-generation is a strategy to achieve Executable UML but not the only one, we could have a UML virtual machine able to directly interpret and run UML models (see for instance: The Architecture of a UML Virtual Machine )
Indeed. AlphaSimple (http://alphasimple.com) prototypes run on a UML runtime, no code generation, thus the fast turnaround in the edit-save-compile-run cycle.
Rafael