From Burton Group: "The Microsoft Superplatform: Setting the Bar in the Superplatform Arms Race"
On August 17th, Burton Group published a paper "
The Microsoft Superplatform: Setting the Bar in the Superplatform Arms Race". Obviously a favorable title from Microsoft's perspective, and I think a nice treatment of the superplatform concept overall. In a nutshell, a superplatform is a cohesive and integrated stack of capabilities for building enterprise applications - Microsoft has Windows Server, .NET, SQL Server, Microsoft Operations Manager, BizTalk Server, SharePoint, etc.; in their unification, we have a superplatform. Burton Group identifies the other superplatform vendors as BEA, IBM, Oracle and SAP.
In the synopsis of the paper, Burton Group says "One Burton Group client said that it was forced to re-implement a critical .NET application in Java 2 Enterprise Edition (J2EE) for scalability reasons." When I first read this, I was pretty annoyed. It makes it sound like good architecture, design and implementation have nothing to do with scalability, and it's only up to the (super)platform. Fortunately, the authors recognize the issue in the body of the paper:
It's quite possible that the improvement in performance experienced by this company was caused by a factor not related to Windows versus UNIX. For example, the J2EE application may have been better designed or optimized to deal with a specific bottleneck. And certainly not every application will scale better on UNIX than on Windows. In fact, another company interviewed for this report experienced the opposite results - it gained performance and scalability improvements when porting from J2EE to .NET.
Although the paper is generally conservative with respect to the scalability of the Microsoft platform overall, primarily blaming the x86 hardware architecture (which itself deserves debate, I believe), I'm happy that they didn't leave that point from the synopsis hanging.
Now, a potentially more interesting thought: in the "non-superplatform alternatives" section of the paper, the authors include mid-tier J2EE application platform vendors, open source J2EE application server projects, open source Java-based rebel frameworks and LAMP platforms and projects. What about Windows? Presumably "mid-tier J2EE application platform vendors" includes IBM and BEA with their respective J2EE application servers. What about Windows with .NET and Enterprise Services with a non-Microsoft portal or database or BPM system or whatever? Do we only get to play as a consolidated superplatform?
I believe this is a common misconception around the Microsoft platform - that it's all-or-nothing. In fact, the Microsoft platform is extraordinarily effective at working in a technology-heterogeneous environment. Sure, web services are one (big, important) part of this, but so are things like ADO.NET providers (for Oracle, DB2, etc.), BizTalk adapters (for SAP, for WebSphere MQ, etc.), Host Integration Server, protocol support (like LDAP, Kerberos, etc.) and so on. I won't say anything about WSRP here. So let's join that "non-superplatform alternatives" list, too.