Microsoft wants open-source recruits for new model army
Blinded by the Silverlight
PDC Microsoft is reaching out to open-source and adding a dash of RIA bling to its latest model-driven development crusade.
The company has released M, its new programming language for building textual domain-specific languages (DSLs) and software models using Extensible Application Markup Language (XAML) under its Open Specification Promise (OSP).
Specifically, Microsoft has released MSchema, MGrammar, and MGraph. OSP lets third parties implement a Microsoft specification without getting a nasty phone call from the company's lawyers.
Douglas Purdy, Microsoft product unit manager, told the Professional Developers' Conference (PDC) anyone - including the open-source community - can implement the M language, schema, or graph.
"We will work as hard and diligently as we can to engage third parties including the open source community to implement this approach," Purdy said. "We want it [M] to be as broad as XML is today."
Purdy said his team is also evangelizing Microsoft's own product groups to adopt model-driven development using M. The team is talking to the Systems Center and Windows teams to make models for re-use. Five hundred models were released in the SDK for Microsoft's Oslo this week.
Oslo is Microsoft's model-based development strategy for service-oriented architectures (SOAs), which includes M, a tool called Quadrant for building and viewing models visually, and a repository that uses SQL Server.
By releasing M under the same pledge as things such as XAML and the WS-* web services specs, Microsoft is potentially removing any encumbrance on people building models or languages combining XAML, WS-* and M.
That's key for Microsoft, as it's early days in the Oslo story and the company needs industry buy-in. It needs both partners and third parties to build DSLs and models that are ready, off the shelf, to be used by customers running Visual Studio 2010 when it ships.
The "domain" in this case can be horizontal - like an HR application - or vertical, such as a retail management system for the catering sector.