RealTime IT News

Microsoft and UML Together at Last

Microsoft isn't often known for being the first to embrace a technology. That doesn't mean it can't be successful coming late to the party. Whether it's Word, Internet Explorer or the Xbox, the company has displayed a knack for jumping into a market long-dominated by other players and still fighting its way to the top.

It remains to be seen if lightning will strike again with "Oslo," the codename for a project under way at Microsoft based on the Unified Modeling Language (UML).

A modeling language like UML is aimed at making it easier to specify and visualize complex software projects. Microsoft's Oslo effort is a three-pronged approach to UML that consists of: the UML language, known as "M," that helps people create and use textual domain-specific languages (DSLs) and data models; a relational repository built on SQL Server for both tools and platforms; and a tool codenamed Quadrant that helps people define and interact with models in a rich and visual manner.

UML's history traces back to the mid-1990s, when Rational Software attempted to create a single, object-oriented language to help fight the fragmentation caused by so many object-oriented languages already on the market.

The final result of Rationa's efforts was known as UML, and it became the company's bread and butter for years, until IBM bought the firm in 2002 for $2.1 billion.

Microsoft never really paid UML much mind -- until now. The company said it sees an opportunity to take what it views as a niche language into something mainstream.

"We are thinking about how we can take something that is viewed as a niche technology today and turn it into a mainstream adoption," Burley Kawasaki, director of product management in the Connected Systems division told InternetNews.com. "We are just trying to make it a core piece of .NET and Visual Studio, and make it something we think the broad network of developers can adopt."

Most programmers don't identify themselves as modelers, Kawasaki continued. They design in modeling and then print it out or design in Visio, Microsoft's charting and layout utility, and implement it from there.

But the term "niche" may be in the eye of the beholder. Ray Valdes, research director for Gartner, has his own analogy. "In the U.S., you would say football is mainstream and soccer is a niche. Outside of the U.S., soccer is a global sport and football is a niche. Microsoft and IBM are two totally different worlds in the enterprise," he told InternetNews.com.

Modeling for the masses

Kawasaki said Microsoft sees Oslo as "modeling for the masses," giving them a consistent modeling tool that works across a number of disciplines.

"We think part of the problem is where you do see developers use modeling concepts, it's very much in silos," he said. "They have to learn different tools, different languages in many cases for each bit or piece of the application. We're pulling a lot of that into the core .NET general-purpose runtime, which breaks down a lot of those silos."

The licensing model for the M language will allow third parties to implement their own version of the language specifically for non-Microsoft databases and non-Windows platforms. It will also allow for creating new DSLs for specific industries, so a financial services firm could create its own language for its industry's concerns and needs.

Kawasaki said Microsoft thinks there's a great deal of opportunity around domain-specific languages.

"There are a lot of mainstream developers who have not embraced UML," he said. "The mass appeal will further help drive adoption in ways that will further benefit the UML community."

Gartner's Valdes said the reason UML has not taken off in a big way among Windows developers is the scale of the projects. "Where Microsoft is strong is on a smaller scale of projects, where the methodology is more informal," he said. "Programmers in that environment don't use it because it's viewed as too much of a burden. Some programmers prefer to code first and ask questions later."

He applauded Microsoft for "trying to bring more rigor and best practices through to support." He also sees Microsoft's UML embrace as an attempt to move up-market into enterprise-scale development.

Oslo is available for developers under Microsoft's community technology preview program, which gives developers an early look at the product while in development. It has not set a release date for the final product.