Microsoft's Oslo project aims to radically reduce the time to design, develop and manage complex projects by improving the communication between developers, business analysts and systems managers. At a high level, Oslo breaks down the barriers to sharing models, which enables people to create and deploy applications by connecting up various components.
In a sense, Oslo is simply an extension of Microsoft's work on the process of developing, deploying and managing software, which has evolved from technologies like COM type libraries to .NET metadata attributes and XAML, according to Don Box, an architect at Microsoft who is working on the Oslo language stack. All of these transitions make it easier to write things down directly as data rather than encoding them in machine code.
On the development side, Oslo technology will be rolled into the next versions of Visual Studio, .NET 4 framework, BizTalk Services and BizTalk Server. IT personnel will be able to connect to Oslo services through new hooks in Operations Manager and Configuration Manager. Business users will be able to piece together application using a new design tool code named "Quadrant," and a planned central repository will store these different modeling components for use by all members of an organization.
"Oslo is the first step in my vision to make everyone a programmer (even if they don't know it)," wrote Doug Purdy, product unit manager for Oslo in a blog during PDC 2008. He boiled Oslo to three components:
- A graphical tool ("Quadrant") that helps people define and interact with models.
- A language ("M") that helps people create and use textual domain-specific languages and data models
- A relational repository that makes models available to both
Modeling is fairly common today in software development. Programmers use models to analyze business processes and managing complex systems, but the models created by business analysts don't directly translate into models programmers can use. In order to bridge these gaps, Microsoft plans to weave Oslo technology throughout its software line up including Visual Studio, .NET, BizTalk, and Operations Manager.
But building models is complex work, and traditionally, only large enterprises could afford to do it -- and only on a limited scale, said Bob Muglia, senior vice president of Microsoft's server and tools business at last year's TechEd. One of Microsoft's goals is to build a modeling platform, which it plans to integrate with .NET.
The first release out of the Oslo program was the CTP of M, the project's programming language, last fall. Numerous other elements will have to fall into place before organizations can do real world development.