After attending a talk on Oslo/M I am struggling a bit to see the advantages of using it over existing methods and in what situation it would be useful.
I know its quite new and not all details have been released etc but can some one give me some advantages and when you might use it?
Thanks,
Alex
This questions seems to have the answer you're looking for:
What is model driven development good for?
Erik Wynne has a nice blog-post on this topic:
Oslo == 42
He also links to a post on MSDN, that contains some interesting thoughts:
Why do we need Oslo?
I haven't played with the Oslo alpha bits, but my understanding on a superficial level is:
Trying to make it easier for developers to express and store their ideas in ways that make sense for the domain they are working in – i.e. domain modelling.
Trying to make these stored ideas accessible during program execution.
So yet more of the trend towards declarative rather than procedural logic. That seems to be the way the development world is moving. I'm an old fogey, and far from convinced.
But we can't continue making software like an Egyptian pyramid, with millions of bricks piled on top of each other and no structural integrity, just brute force and thousands of slaves. So we need these new ideas.
Sharing of models will also become common, especially once the Oslo repository can be hosted in SQL Data Services in the cloud. Model interoperability is the name of the game.
Oslo has some unintended uses that will become common, but originally I know they were aiming at supporting developers who wanted to create applications like Microsoft CRM and Sharepoint. These systems are data-driven, down to the user interface layouts. It's an effective and productive approach for certain kinds of systems, and provides a very extensible and maintainable architecture.
See my article on Oslo for more information:
http://dvanderboom.wordpress.com/2009/01/17/why-oslo-is-important/
Thinking about this a bit more and after reading the articles posted by Qdoom and RoadWarrior I can see Oslo aiding sharing,
Okay you can share a model with something like xml & xsd but Oslo could make it easier as it looks like you can generate classes and your database from them whilst storing the model in a central repository.
Perhaps later on people will sell models for common scenarios as well.