Once again, Microsoft has proclaimed its support for software modeling, this time joining the premier organization backing the adoption of modeling in the enterprise, the Object Management Group OMG, and pledging to support the OMG’s primary modeling standard, the Unified Modeling Language.
Microsoft began talking about supporting modeling in earnest in 2003 when company Chairman Bill Gates announced to financial analysts that modeling would be a means by which Microsoft could make software development easier for developers. That vision is being borne out in the company’s “Oslo” modeling platform, which Microsoft’s CSD (Connected Systems Division) is championing. However, Oslo and the overall modeling initiative is intended to permeate Microsoft and reach users through various Microsoft groups and products, particularly the Developer Division and the company’s flagship Visual Studio tools.
So although Microsoft announced on Sept. 10 its approach for taking modeling into mainstream industry use and announced its membership in OMG, Gates sort of pre-empted this announcement at Microsoft’s TechEd Developers 2008 conference in Orlando in June when he said Microsoft would be providing support for UML in the upcoming version of Visual Studio.
The move indicates something of a turnabout for Microsoft and is supported by Bob Muglia, senior vice president, Server and Tools Business at Microsoft, who is credited with being serious about interoperability, transparency, openness and taking Microsoft beyond squabbles of the past. For instance, this is not the first time Microsoft has been a member of OMG. The company was previously a member of the organization, but fell out of favor with the group over disagreements around OMG’s support for the CORBA (Common Object Request Broker Architecture), as Microsoft was in favor of its own COM (Component Object Model) technology.
Moreover, although Microsoft is announcing its OMG membership now, sources said the company actually became a member as early as July. Yet, the move signals progress in an otherwise chilly relationship and indicates Microsoft’s and Muglia’s willingness to move beyond petty stances. For instance, Steve Cook, a Microsoft engineer who has been particularly critical of the UML specification, is now Microsoft’s representative to the OMG.
Modeling as a Core Part of Platform
Modeling is a core focus of Microsoft’s Dynamic IT strategy, the company’s long-term approach to provide customers with technology, services and best practices to enable IT and development organizations to be more strategic to the business.
Microsoft officials said that although the promise of modeling has existed for decades, it has failed to have a mainstream impact on the way organizations develop and manage their core applications, and the company said models must evolve to be more than static diagrams defining a software system; they are a core part of daily business discussions, from organizational charts to cash flow diagrams. Thus, to make model-driven development a reality, Microsoft is focused on providing a model-driven platform and visual modeling tools that make it easy for all “mainstream” users, including information workers, developers, database architects, software architects, business analysts and IT professionals, to collaborate throughout the application development life cycle. By putting model-driven innovation directly into the Microsoft .NET platform, organizations will gain visibility and control over applications from end to end, Microsoft officials said.
“We’re building modeling in as a core part of the platform,” Muglia said in a statement. “This enables IT pros to specify their business needs and build applications that work directly from those specifications. It also brings together the different stages of the IT life cycle-connecting business analysts, who specify requirements, with system architects, who design the solution, with developers, who build the applications, and with operations experts, who deploy and maintain the applications. Ultimately, this means IT pros can innovate and respond faster to the needs of their business.”
Richard Mark Soley, CEO of OMG, told eWEEK:
““Since the adoption of UML in 1997 and the introduction of the Model Driven Architecture in 2001, OMG has been successfully applying modeling languages including UML to problems like electronic payments interoperability, healthcare records portability, space systems integration, property and casualty insurance systems and many other vertical-market areas. I’m ecstatic that Microsoft has decided to join several of those vertical-market efforts, lending both their deep and broad expertise and their market presence. Software developers want common, standardized solutions not only in modeling infrastructure like the UML, but in vertical-market solutions to increase choice and bring down costs. Microsoft has assembled a world-class team of modeling experts in many areas, and we welcome them as a leading member of the OMG.”“
In addition to joining OMG, Microsoft will take an active role in several OMG working groups to help contribute to the open industry dialogue and assist with evolution of the standards to meet mainstream customer needs. For example, Microsoft is already working with the finance working group on information models for insurance business functions related to the property and casualty industry, and will eventually look to expand those models so that they can be applied to other areas. Another early focus will be on developing specifications for converting messages across the various payments messaging standards.
Microsoft said developers can begin to implement model-driven approaches today through innovations such as Extensible Application Markup Language (XAML) – the declarative model that underlies Windows Presentation Foundation (WPF) and Windows Workflow Foundation (WCF) – and ASP.NET MVC, which integrates model-driven development into the .NET Framework and makes it easy to implement the model-view-controller (MVC) pattern for Web applications. Both XAML and MVC are examples of models that drive the actual runtime behavior of .NET applications , Microsoft said. These are part of Microsoft’s broader companywide efforts to deliver a connected platform modeling, which includes technologies being delivered across both “Oslo” and Visual Studio “Rosario” initiatives.
It’s good to see Microsoft lending its weight behind OMG and getting beyond former discord with the organization.
Indeed, in a paper from 1999, Microsoft’s own Don Box, now a partner architect in Microsoft’s CSD unit, who at the time was still with DevelopMentor, the company he co-founded, said: “Ironically, while Microsoft and the Object Management Group (OMG) were arguing over whether the Internet would be run on DCOM [Distributed Component Object Model] or CORBA, the Hypertext Transfer Protocol (HTTP) took over as the dominant Internet protocol.”
Moreover, Box cogently observed:
““At the end of the day, the primary function of a component technology is to act as glue between multiple pieces of software. This is true of the Component Object Model (COM), as well as Java (the technology). This is also true of Common Object Request Broker Architecture (CORBA). All three technologies provide infrastructure for integrating software components written by autonomous organizations. From the 10,000-foot view, these three technologies are more or less the same. Up close, however, each technology uses radically different techniques and programming styles to achieve its goals.”“
Microsoft’s participation in OMG helps not only with the company’s plans to garner support for modeling, but also to extend one of Bill Gates’ legacy issues. Modeling was one of Gates’ pet projects. The company has even courted the attentions of leaders in the UML space, including Ivar Jacobson and Grady Booch, two of the co-authors of UML. Jacobsen lent his support to the Microsoft Solutions Framework and sources said Microsoft has twice tried to hire Booch, once when Gates personally attempted to woo the IBM Fellow, and again since Gates’ departure at the end of June.
Microsoft eschewed UML at one point in favor of a modeling strategy around domain-specific languages (DSLs). And although with this move Microsoft is not abandoning DSLs in favor of UML, there is sufficient demand for UML that Microsoft cannot afford to ignore it. Brad Lovering, a Microsoft technical fellow in the CSD unit, said Oslo would support UML because of significant customer demand. Research firm Forrester estimates that 71 percent of the development shops that do software modeling use UML.