ObjectWatch has put out a report titled The IT Complexity Crisis: Danger and Opportunity. They estimate that we are losing $500 billion per month in IT failures. That’s a scary number. If this rate of failure continues, business confidence in IT will diminish.
A couple of points in the report caught my eye, as they are applicable to the points we have been discussing over the last several months.
1. Complexity is indirectly related to functionality, in that a 25% increase in functionality increases complexity by 100%.
Several Java EE vendors would argue that more functionality is better, and they work hard at increasing the page count of the Java EE specification. They do not realize that this increased functionality is causing a dramatic increase in complexity for customers. What is frustrating is that the majority of this Java EE functionality is not needed for web applications.
By contrast, Apache Tomcat has retained its simplicity, and over several releases it has actually reduced the complexity of containers needed for web applications.
2. The cost of managing a given vendor is linear with respect to the complexity of the project that vendor is delivering. It is much easier (and cheaper) to manage three vendors delivering three simple projects than it is to manage one vendor delivering one large, complex project.
Sometimes, I hear that IT needs to buy their application server from the same vendor that sold them a mainframe or a relational database to keep costs down. Sometimes, the vendors that produce BIG application servers make more money on consulting and services, so naturally complexity becomes their friend. The reality is that the cost of dealing with different vendors is influenced more by the complexity of the solution they offer.
If you are concerned about increasing IT complexity and what it is doing to the risk of IT failure, you need to take a look at your current application server investments. Ask yourselves the following questions:
- Is my web application ever going to need all those 25+ different technologies that make up a Java EE app server?
- Am I ready to simplify my IT infrastructure and make my workloads lighter, so I can take full advantage of virtualization and cloud computing?
- Do I need the army of consultants required to maintain Java EE application servers?
Deploying application servers in production is a big deal, and you need to get enterprise support for it. MuleSoft offers Tcat Server, which provides enterprise capabilities for Apache Tomcat, along with enterprise Tomcat support.
I would like to hear from you on the increasing IT complexity and what tactics are you using to reduce your risk of IT failures in your organizations.