Sunday, February 7, 2010

SQL Server Modeling Services (FKA-Oslo)

The first anyone heard of a Microsoft product with code name “Oslo” was around October 2007. The first time the public saw Oslo was at the Microsoft Professional Developers Conference in October 2008 and it was described as:

1. A new programming language to help architects and developers describe

models

2. A visual modeling tool

3. A repository for storing different models in a database


Oslo was originally designed to be an add-on to Microsoft’s Visual Studio software, and it included Quadrant, an interface tool, and was written in a modeling language, M, and Microsoft hoped to be able to ship Oslo sometime in late 2009. Deployment of this product has not happened yet.


In the year following the initial release of information on Oslo, more information came to light regarding this new modeling software product. It was touted as a product to simplify development of applications because it would be a repository in an SQL database of models and related metadata that would allow everyone in an organization to look at models “holistically with database tools like Microsoft Access, Excel or SQL server reporting services”.


The programming language, M, is designed for the .NET platform. This language is described as a declarative language, but I’m not sure exactly what this is. Another interesting fact about M is that it is an open source language. I think this is interesting because I didn’t think Microsoft would ever give anything away for free, which is essentially what open source programming languages are. Microsoft initially was solely responsible for developing the M language with review by the M Specification Community (an online discussion group), but now Microsoft is using the contributions from this group in the specs for the M language. Again, an interesting concept for Microsoft.


During the development of Oslo it has evolved from the initial vision for the product. Most notably the code name “Oslo” is no longer used, this software is now called SQL Server Modeling Services and it still uses Quadrant and M language. However, it is no longer an add-on to Visual Studio but will now ship out in a future release of SQL Server. Microsoft has not said when this will occur. Again, I find this unusual because Microsoft will rush to send products to market and the fact that SQL Server Modeling Services has not been released yet is not a typical Microsoft action. Also, now this software is using UML (Unified Modeling Language) to import and export UML compliant files from any vendor. I think this is amazing because Microsoft if not known for using standardized protocols and languages, it is more of a proprietary type of company.


SQL Server Modeling Services (SQL SMS) is still a repository for storing different models in a database that can be used by Microsoft products, third party vendor applications, and customer developed applications and tools. This repository will contain application definitions and will allow tracking and managing changes to applications. SQL SMS will include pre-built models for web, web services and data domains that can be used as starting places for users. And Quadrant, described as a model editor, is the application to be used for viewing and editing data in the repository.


Is there a difference between Business Process Modeling Notation (BPMN) and SQL Server Modeling Services? First, what is BPMN? It is a standard for business process modeling developed by the Business Process Management Initiative and is currently supported by the Object Management Group (OMG). And, yes, there is a difference between these two. BPMN are the standards and guidelines regarding what should be included in a BPM tool, and SQL Server Modeling Services is a software product developed by Microsoft.


I don’t know if SQL Server Modeling Services will be a “home run” for Microsoft or not. Microsoft is a late entrant into the modeling software arena, as there are several similar products already available for purchase. And even though, Microsoft has developed this product to be work with other applications currently being used by customers, it remains to be seen if this repository will work as described. In my opinion, the longer Microsoft waits to ship this product, the farther behind in the modeling world Microsoft will be. Microsoft is playing catch up with a moving target and catching the target (currently available modeling applications) is unlikely and surpassing the target almost impossible.