Why standardize on the Microsoft Application/Development Platform?

It may be no surprise that there is considerable interest these days for both Private and Public Sector organizations to standardize on Application/Development Platforms; however what is “somewhat” surprising – is how little the “vendor lock-in” argument seems to surface from the non-Microsoft vendors these days. I say “somewhat” because personally I’ve never met anyone who has ever implemented a true enterprise Java-based application server environment that has ported the apps to another application server/platform… primarily because the effort/cost it would take to do so would far out weigh the value/benefits. Also these days, with all of the emphasis on integration and interoperability via XML and SOA (Services Oriented Architecture) – “vendor lock-in” should be an issue regardless.


That being said it may also not be a surprise that Microsoft has an early leader application/stack integration with the Microsoft Application Platform (Windows, SQL Server, BizTalk, and .NET). Now it would seem that every other major software vendor is trying to preach the same story. Many are making software/platform acquisitions and creating glue components. Martin LaMonica (Staff Writer at CNET News.com) wrote a very non-biased article that discusses this in more detail. Below is a summary chart of how Microsoft “stacks up” to other major software vendors.


“Microsoft, IBM and SAP have similar stack strategies. Microsoft covers the broadest ground in terms of products, while IBM and SAP, like Oracle, have some holes.” [Martin LaMonica]


How software makers stack up

Here are my additional 2 cents:
A key component to the Microsoft “stack” is that it’s not just another hodgepodge of software applications acquired and loosely glued together… they are truly integrated as they are built on top of a common/shared set of libraries (.NET & Windows) with the “forefront” of security, performance, integration, and interoperability. For example… at the highest level it may look something as follows: