Microsoft’s project Oslo is both interesting and ambitious as a concept and a project.
As a concept, Microsoft is recognising the need for formal modelling – in particular for SOA – and as a project Oslo promises to provide formal modelling capabilities across a range of Microsoft products over the next couple of years. Unfortunately, the announcement also seems to reflect Microsoft’s wish to live in a parallel universe of its own making. This is unfortunate as such a parallel universe is fundamentally incompatible with SOA – which Oslo seeks to enable.
To focus for a moment on the positives: Oslo must be acknowledged as a major move from a vendor who up to now wouldn’t touch any sort of modelling with a 10 foot pole. While I certainly don’t believe that model based approaches are perfect, standards such as UML when used appropriately and pragmatically can be very effective in the development process. Given its previous position as sceptic, Microsoft is in a good position to deliver such a pragmatic and accessible solution and this appeared a first read to be its goal as quoted here:
In the past a very select group of users has used modeling. Microsoft is going to make modeling mainstream for the average developer.
said Martin. [Steven Martin, director of product management for Microsoft’s Connected Systems Division]
To a great degree, Mr Martin is right: Formal modelling tends to be used by only a minority and the learning curve and perception of complexity and cost put most off: There is definitely an opportunity to make modelling more accessible to less technical and less modelling-aware developers. However, rather than at least taking UML (the widely used and mature modelling standard) as its starting point, Microsoft has decided to go its own way and thus ignore much experience and knowledge of how to model systems built into this standard.
Furthermore while aiming to be more democratic in its approach, Microsoft also appears to wish to entwine the modelling activity into its own technology stack. This will inevitably result in a Microsoft only model which in turn will allow its customers to build only Microsoft dominated (if not exclusive) versions of SOA. Which will be great for that minority of Microsoft exclusive shops and of little use for the rest of the world.
As Oslo is still only at its earliest stage, perhaps Microsoft could reconsider its decision to ignore the standards and the heterogeneous world most of us live in … please