Why did MDE miss the boat?
Below is the abstract of the talk I gave to the second Brazilian Workshop on Model Driven Software Development http://reuse.cos.ufrj.br/wbdsdm2011/
Models have failed, at least temporarily. Model Driven Engineering (MDE) is a specific branch of software modeling that has been experimented for less than two decades. One of its best known instantiation is the MDA™ initiative launched in November 2000 by the OMG. The deployment of MDE seems today to have reached a standstill. In spite of the immense hopes that greeted the MDA initial proposal as a possible way to regenerate the entire software engineering practices, we must recognize today that its impact is rather limited and its perspectives quite confined. We consequently propose the view that the current iteration may not be the last one. This piece of technology may need an additional cycle to mature and produce maximum impact. This presentation will summarize the important lessons learnt in the current iteration and examine some of the difficulties that may have hampered a wider adoption. Among these difficulties some loose or contradictory goals will be discussed as well as the ambiguous relation between programming languages and modeling languages. At a time when software engineering is being much questioned – not only in its operation but also in its essence – we may consider the necessary adaptation of MDE not as a failure, but as a chance for the future. To this purpose we need to reflect on the past and select the good set of properties and practices that will, in the medium to long-term, allow MDE to play a central role to produce, maintain and operate software based systems. Knowing the reasons of the temporary failure of MDE may be as important as assessing the progresses made in this area in the past twenty years.