When the model becomes the application


(The funny video on the right (although a bit too long) explains in common language what this post is about.)

“Oslo” is the code name for a set of modeling technologies currently under development. Model based development is not new and has been used over the past 20 years in a variety of environments, really old readers will remember IEF that generated code based on business specifications and also in the ‘80ties IBM with AD/Cycle. You might also remember Microsoft Repository from the 90ties which was a pre-.NET effort and lots of other tools over the past 30 years.
Modeling is used across a wide range of domains and makes it easier for people to write things down in ways that make sense for the problem domain they are working. And then make those models available to platform components during program execution. It also enables developers to write applications at a higher level of abstraction than with other development methods. With distributed environments within and cross firewall gaining traction model based development is going to help a lot in simplifying team development but even more maintaining existing applications and changing the business processes when the original developers have moved on. I love Azure and cloud computing, but it’s clear that by expanding the traditional boarders of SOA from the company in the cloud you’ll need some more overview to keep track of what’s happening.

Oslo consists of three components, which will surface in the Visual Studio family of products:

  • A visual design tool (code-named “Quadrant”)  to design business processes and applications with well-understood, flowchart-like graphics
  • A modeling language (code-named “M”) for extending system provided models like WCF or WF or create your own models
  • A repository (SQL based) containing the models

Models stored in the Oslo repository are available to “Quadrant” and any other tool or application that has the appropriate permissions.  But also applications can examine, use and manipulate the models that they are made up from themselves during runtime. Sounds a bit complex in my words, but you can read a nice expert white paper (again from David Chappell).

Community Technology Previews are available since yesterday and more information is available in the new “Oslo” Developer Center at http://msdn.microsoft.com/oslo or http://www.modelsremixed.com for a high-level overview. Some good blogs "Oslo" Modeling Language Team Blog ; Steve Martin (Prod Man); Martin Fowler

Technorati Tags: , , , ,