Signifying the seriousness of its commitment to pursue and promote a more model-driven approach to building software, Microsoft shed a little more light on its “Oslo” modeling strategy, giving a few more details on the Community Technology Previews the company will deliver at the Microsoft Professional Developers Conference at the end of October.
At the PDC, Microsoft will make available to developers the three core components of “Oslo:” a new declarative programming language, a visual modeling tool and the “Oslo” repository.
Robert Wahbe, corporate vice president of the Microsoft CSD (Connected Systems Division) said Microsoft is moving to shift its development strategy as the market changes. “Platform applications and software are becoming more and more model driven.”
Indeed, Wahbe said, “from my point of view, this is the next big step to raising the abstraction” in software development–comparable to the move from assembly language to 3GLs (third-generation languages), he added.
Moreover, one of the goals of “Oslo” is to enable a larger number of people to be able to create and maintain distributed applications. “We want to make it so that not only developers can change models, but so can IT staff or business analysts,” Wahbe said. Indeed, Oslo’s goal is to make it “easier to author and integrate models and make modeling mainstream,” he said.
Well, if anybody can do that, perhaps Microsoft has the best chance of pulling it off. Wahbe said the three “Oslo” components will ship as part of Visual Studio.
Developers will get the opportunity to see the three parts of the Oslo initiative in a matter of weeks. The new modeling language is referred to as “M,” though it was formerly known as “D” (possibly for declarative) inside Microsoft, and “D” itself was an offshoot from another Microsoft modeling project known as “Q,” sources said. In any event, “‘M’ is about letting you write down the models in a textual format and lets you build out domain-specific languages (DSLs),” Wahbe said. In addition, “M” will have “a great editing experience” in the Visual Studio tools, he said.
In a speech at the recent JAOO–initially known as Java and Object-Oriented–conference in Aarhus, Denmark, Anders Hejlsberg, a technical fellow in the Microsoft Developer Division, said of the move to visual versus textual programming: “A line of code can be worth a thousand pictures. There’s something to be said for text…So my bold prediction is it will still be text” as a leading mode of programming.
The new visual modeling tool for building and interacting with models is known as “Quadrant.” And the new Oslo relational repository houses models and metadata and makes models available to both tools and platform components.
Reaching Across All Microsoft Core Platforms
Meanwhile, “Oslo” enables numerous roles throughout the software development lifecycle to collaborate on application development and management activities, including information workers, developers, database architects, software architects business analysts and IT professionals, Microsoft said. And “Oslo” technologies will integrate with and enhance Microsoft lifecycle tooling in Visual Studio Team System and System Center.
Also, Microsoft is working with ISVs (independent software vendors) on solutions built using “Oslo,” including new line-of-business applications and DSLs. Oslo enables ISVs and solutions integrators to easily build new domain-specific solutions at lower cost by eliminating the need to build custom modeling infrastructure.
Wahbe said “Oslo” will reach across all of Microsoft core platforms to enable developers to create applications for SharePoint, for Live Mesh, for Microsoft’s cloud platform and for any Microsoft platform.
The additional detail on the “Oslo” CTPs follows Microsoft’s recent pledge to further support modeling and to re-join the OMG (Object Management Group).
In a blog post following that announcement, Steve Cook, a Microsoft engineer who is the company’s representative at the OMG, said: “I’m hopeful that my involvement will help to re-energize the UML [Unified Modeling Language] specification process and we can fix some of the things that people complain about.”
With “Oslo” and its overall modeling push, Microsoft has pledged to support “the UML,” as its creators call it. But one has to wonder if that support is just lip service or to satisfy a check list, or whether it is real, serious support. Wahbe said “M” is not competing with UML.
In his blog, Cook also said:
““Secondly, five years ago the market was naive about UML – it was often thought of as the ‘Universal Modeling Language’ and surrounded by too much simplistic thinking. Our entry into the debate with Software Factories and Domain Specific Languages was, I believe, extremely healthy and helped people to grapple with some of the real issues involved in the debate. In case you wondered, we’re still as committed to those initiatives as we ever were.”“
Again you have to ask how far Microsoft actually moved with software factories and even DSLs. Launched with much fanfare at a languages conference several years ago, the software factories approach was absorbed by Microsoft’s Patterns and Practices group, and Jack Greenfield, one of the key proponents of the strategy, has not been heard from in some time.
However, Cook said, “Thirdly, we’re now firmly in the Application Lifecycle Management business, listening hard to our enterprise customers, and they are telling us regularly, loudly and clearly that they want us to support UML in Visual Studio Team System.”
We shall see how this proceeds.