It hasn’t received much attention in SOA circles yet, but last week Bill Gates broke what might be the biggest news Microsoft has made in the SOA space since the debut of .NET.
At the TechEd conference in Orlando, Fla. he announced Oslo, Microsoft’s SOA modeling project, will incorporate UML. It was also revealed that Visual Studio 10 will feature UML support. At first blush that may not sound like a big deal. After all, it’s just Microsoft embracing a popular standard modeling language.
Yet Oslo is Microsoft’s Hail Mary pass over the rest of the SOA market and apparently the company has decided to end its religious differences with UML for the sake of giving Oslo mass appeal. Previously Microsoft had been pushing domain specific languages (DSLs) as an alternative to the general purpose format of UML. Unfortunately for the folks in Redmond, DSLs have failed to gain much traction. Part of the problem is getting the people who form a domain to agree upon a standard syntax. Another part is having that DSL interact with anything outside of its domain. Those things surely will come with the march of time, but the uptake has been painfully slow.
SOA demands some commonality, that everyone stop trying to be so special and idiosyncratic. Microsoft has always understood that on some levels, but it’s got skin in the proprietary software business (actually it’s got skin, blood, muscle, bone, you name it). Its maverick tendencies have often led to it offering users products that do SOA the Microsoft way. That is in stark contrasts to the company’s Web services tooling, which has for the most part embraced open standards and heterogeneous systems (most notably Windows Communication Foundation). This is where I remind some readers out there that, yes, there truly is a difference between SOA and Web services.
In fact, one way to look at Oslo, which supposedly will offer a Community Technical Preview in September, is that this is Microsoft’s flag in the ground for SOA. It emphasizes the importance of modeling, attempting to bring the technology as close as possible to the business. As such, UML represents an excellent choice. It should create interoperability between Oslo projects and those built with rival modeling tools (e.g. IBM Rational). And Eclipse’s Modeling Development Tools Project will have a UML2 component ready by the end of the month.
UML gives Oslo a reach it never would have had if it were based on a proprietary modeling language. The UML foundation means Oslo stands a chance of being truly universal, which is as SOA a concept as you can get. It also puts pressure on the vendors backing Service Component Architecture. Has Microsoft managed to leapfrog them in terms of offering a general purpose SOA modeling platform? Or perhaps could this lead to Microsoft embracing SCA at some level, perhaps via Apache Tuscany?
With this UML announcement, Oslo suddenly ranks as a potentially powerful new addition to the SOA space. Nice to see that Bill Gates can still shake things up, even as he prepares to step down as full-time chairman of Microsoft.