Microsoft eyes Oslo as game-changer for application development

Tool's goal is for models to become the applications

With its ambitious Oslo software-modeling platform, Microsoft Corp. is seeking a new application-development paradigm that raises the level of abstraction. But the effort has brought up questions about whether Oslo crowds the modeling landscape and whether Microsoft can achieve its lofty goals.

The company describes Oslo as a code name for a modeling platform consisting of three components: the Quadrant tool to help define and interact with models visually, a relational repository that holds the models and a declarative language code-named "M" for building textual domain-specific languages. Microsoft plans to release a preview version of Oslo in late October at the Microsoft Professional Developers Conference in Los Angeles.

(Microsoft has talked about Oslo for a year. Get early reactions from InfoWorld's "Open Sources" blogger Savio Rodrigues and from InfoWorld's "Enterprise Windows" blogger J. Peter Bruzzese.)

A goal of Oslo has been to enable application models themselves to become the applications. At varying times, Oslo has been described as a platform for composite applications and service-oriented architecture (SOA), as well as a technology allowing greater levels of agility in the software-development process. Oslo lets more people participate in application development and can be used to build any type of application, according to Microsoft.

"Oslo allows you to model things in higher-level ways. It allows you to rapidly assemble things," says Burley Kawasaki, director of product management in the Microsoft Connected Systems Division. Similar to a mashup, Oslo will help developers assemble applications in Lego block-like fashion, Kawasaki says.

Through Oslo, Microsoft intends for developers to spend more time on business intent and less on application plumbing. Currently, developers spend 80% of their time on infrastructure and lower-level details and 20% of their time on business intent. "We want to flip that," Kawasaki says.

What will Oslo do for developers? A Microsoft business partner lauded Oslo as a game-changer for composite applications. "Everybody's been building these composite applications but with tools and approaches that really weren't designed with composite apps in mind," says Ed Horst, vice president of marketing and strategy at AmberPoint Inc., which sells a SOA management platform.

Oslo hides a lot of complexity from the development process, Horst says. "If you use conventional tools and conventional languages, the developer has to be quite aware that they're going to deploy this in a distributed environment," he says. "In Oslo, that's not true." The declarative language in Oslo was "built with this kind of distributed nature in mind, which again is a big breakthrough," Horst notes.

Oslo modeling is set to address the additional complexity that concepts such as SOA and cloud computing entail, Kawasaki says. "People often have thought about modeling as only the upfront visual design," he says. In that paradigm, a model is printed out and handed to the developer. But Microsoft is pondering how to take models and make them part of the full application life cycle, Kawasaki says.

Technologies such as UML (Unified Modeling Language), BPEL (Business Process Execution Language) and BPMN (Business Process Modeling Notation) are accommodated in Oslo, says Robert Wahbe, Microsoft's corporate vice president of the Microsoft Connected Systems Division. BPEL 2.0 is supported in .Net Framework 4.0 and, as a workflow runtime, BPEL could be the subject of a textual DSL in "M" or it could be a visual DSL in Quadrant. "It's exactly the kind of thing that Oslo can make easier for developers," says Wahbe. BPMN could also complement Oslo.

"UML is primarily a visual notation for doing models, and 'M' is exclusively a textual notation, and secondarily, it has the purpose of building these domain-specific languages," Wahbe says. "They're complementary technologies and we're supporting both." With UML backing, Microsoft hopes to attract enterprise architects who use UML to describe applications. But beyond UML, Microsoft sees modeling in a broader way than it has been viewed historically, says Microsoft's Kawasaki.

But do developers really need Oslo? One developer has questioned Microsoft's strategy. "They're creating something for the über-geek," says Michael Rowley, director of technology and standards at Active Endpoints, which offers a business process management orchestration server that competes with Microsoft.

Oslo lets developers build their own languages for defining new models. "In my opinion, it is bad enough that there are so many different ways to do the same thing. Inventing a new technology that makes it easy to create even more languages [metamodels] can only make things more confusing for users," Rowley says.

And the new "M" language further crowds an already congested field, Rowley says. "It just adds to the proliferation of new languages [and] makes it easier to create more problems." In fact, Microsoft's efforts make it difficult for a user community trying to coalesce around just a couple of different languages such as BPMN, he argues.

A Microsoft official rejected Rowley's description. "I don't know what 'über-geek' is, but there's a large class of developers who build apps for a living," says Microsoft's Wahbe. Oslo is interesting to such developers because it aspires to raise the level of abstraction and make them more productive and applications more flexible, he says.

Microsoft intends for standards such as BPEL to be accommodated within Oslo, says John Rymer, an analyst at Forrester Research Inc. But there could be a conflict between Oslo's declarative language and the World Wide Web Consortium's RDF (Resource Description Framework), he notes. Microsoft's Wahbe says that "M" could be used for writing a domain-specific language for the domain of semantic technologies, which in turn could target RDF. A W3C representative said a quick look at Oslo suggests that it is different from RDF.

Will Oslo models really lead to applications? Forrester's Rymer has confidence that Microsoft can make models into the applications themselves via Oslo. "The question is," he asks, "can we pull together and manage models from different sources" such as BPEL, XAML, business rules and languages?

A former Microsoft employee was skeptical of Microsoft's intentions to have models become applications. "I'll have to see it to believe it," says Richard Seroter, who is now a blogger. "Obviously, many folks have been modeling in UML for years, and the challenge is twofold: How do I keep the model in sync with actual deliverables, and how can I accurately represent software characteristics such as latency or data flow between components that don't easily lend themselves to UML modeling? Mix in traditional data modeling, and that is yet another thing that must remain synchronized with other model types," he says.

Is the real Oslo less ambitious than the original vision? Microsoft's recent moves around its Dublin application server extensions for Windows Server have created the impression that Oslo has also been narrowed from its original form.

"It used to be that Oslo was referring to the new modeling technology and the changes to [Windows] Workflow Foundation and this new process server, what they now call the Dublin app server," Rowley says. "It's got to be really confusing to somebody that's trying to follow this."

Rymer concurred about Microsoft's narrower scope for Oslo. "Dublin is the first release of a set of technologies that were formerly known collectively as Oslo," he says. "I think of these technologies as what comes after WCF [Windows Communication Foundation], which unified Microsoft's various distributed-computing programming models. Oslo now refers only to the next generation of tools for building application models that Microsoft is working on, not the whole set of development and runtime technologies [that Microsoft] is building. '.Net [Framework] 4.0' seems to be the new name for all of these developments," Rymer says.

When unveiling Oslo a year ago, Microsoft's intent was for it to be injected into a number of products. These include the recently detailed .Net Framework 4.0 as well as BizTalk Server, BizTalk Services, Microsoft System Center and an upcoming upgrade to the Visual Studio tool set.

Wahbe denies that the company has narrowed the scope for Oslo. "We talked about Oslo as part of the platform and the killer apps," he says. "In that sense, we did talk about Dublin as part of Oslo." But Dublin is not part of Oslo in the sense that Oslo features Quadrant, "M," and the repository, Wahbe says.

What Microsoft said a year ago was that Oslo would surface in products cited at last year's unveiling, such as BizTalk Server, which will use the technology, Wahbe says. "It will be used by many parts of the platform," he adds.

This story, "Microsoft eyes Oslo as game-changer for application development" was originally published by InfoWorld.

Copyright © 2008 IDG Communications, Inc.

7 inconvenient truths about the hybrid work trend
Shop Tech Products at Amazon