Some say the possibility of delivering applications from models exists today in the form of the UML (Unified Modeling Language) and MDA (Model-Driven Architecture). But the use of tools supporting these technologies typically require serious expert involvement, some observers say.
Richard Mark Soley, chief executive of the Object Management Group, located in Needham, Mass., which oversees many of the modeling specifications such as UML and MDA, said developing applications via modeling is entirely feasible.
"The answer is absolutely, yes—software (and hardware) has already been generated from UML models. And other modeling languages also (MDA includes several, including UML, MOF [MetaObject Facility], BPMN [Business Process Modeling Notation] [and] SysML [Systems Modeling Language]) can be used to generate applications from models."
Grady Booch, chief scientist at IBMs Rational business unit and the co-creator of the UML, likes to cite the usage of the technology in various instances. In fact, one of Boochs more salient examples of the prevalence of the use of UML is a reference to the technology on an episode of the CBS television series "NUMB3RS," which involves a math genius who helps the FBI.
The genius sites a UML model as key to delivering an application that helps to solve a case. Indeed, Booch showed a clip of the show at the IBM Rational Software Development Conference in June.
However, Microsoft sees UML and its ilk as too hard and too heavy a process, and is working on delivering its own modeling technology.
S. "Soma" Somasegar, corporate vice president of Microsofts Developer Division, said Microsoft has some incubation projects that focus on modeling. He expects to see fruit from those projects in the next six to 12 months, he said.
Somasegar said the modeling effort has been a pet project of Microsoft chairman Bill Gates. The company has put some of its best developers on the effort, including Don Box and Chris Anderson, who helped build the companys Microsoft Windows Communication Foundation, a key pillar of the .Net Framework 3.0.
Indeed, Box has referred to himself as Microsofts chief modeling officer. On the notion of creating applications from models, Somasegar said, "Weve had aspirations in this company for a long time. Weve had aspirations saying, using business process modeling, we should be able to lay down a set of models and people have to deal with the models and, if they define the models right, then the applications pop out. So you really dont need to write code."
However, "Thats really one extreme view of looking at it," Somasegar said. In certain domains, "we will be able to do that sooner than later," he added. "But I foresee people writing code for a long, long time, particularly in building business applications." But Microsoft has long talked about raising the abstraction level.
"What you had to write five to 10 years ago in terms of the number of lines of code for a particular application, today I am sure it is orders of magnitude less," Somasegar said. "Weve abstracted, weve got frameworks, weve got controls, weve got this, and weve got that. And to me, modeling has taken the abstraction to a whole new level."
Somasegar would not go into specific detail on how Microsoft is approaching the issue of simplifying the model-driven development process. In general, though he said: "If you can have a central repository of models or a common way of working against models...then you can do a lot."
Next Page: Taking a factory approach.