The idea of moving off IMS might seem compelling at first glance, but once you look at the whole picture, you might think otherwise. Here are five factors to consider.
The True Cost
Most people think of cost as the primary reason to move off IMS. But if you look at all of the comparative costs of IMS on a mainframe against a WINDOWS/UNIX solution, you will find that running IMS is actually cost-effective. The obvious cost elements are hardware and software and the huge expense of converting hundreds of thousands of lines of code and hundreds of databases. However, these are only a small part of the story.
The easiest way to explain the real costs is to take the analogy of buying a new car. In today's financially restrictive world, responsible buyers look not only at the initial cost but also at fuel consumption - miles per gallon (MPG) - and operating costs. The buyers should be looking at commuting costs as well as what trips they are going to be taking over the time period they plan to own the car.
Let's apply those principles to make IT decisions based on costs. When you calculate the costs of computing, you normally include the hardware costs (cost of the car), the application software costs (MPG, tax, insurance, etc.), and the people costs (servicing). The calculation is excellent if you are buying one computer for one person (one car for one person), but let's extend the analogy to the distributed world.
If you have to cater to multiple users of the computer system then the answer looks very different. In the mainframe world, you would actually buy a large system that can serve multiple users, just like you'd use a bus or train instead of a car to transport many people. Mainframes are designed to run multiple workloads at very high levels of utilization. Distributed platforms are designed for one workload and typically have a utilization of five to ten percent. This utilization is improving with the introduction of virtualization, but virtualization introduces a whole new level of cost, complexity, performance, and security concerns.
The independent analysts Arcati, in a report called "The Dinosaur Myth," which was last published in 2004, have concluded that the only fair way to compare costs is to look at the total cost per user over 5 years. The basic costs per user they have estimated for hardware, software, maintenance, and application software over 5 years are as follows:
- Mainframes: $5,250
- Unix minis: $6,150
- PC servers: $8,750
So, while the initial costs may be higher for the mainframe, the cost per user over five to ten years is much lower.
Most people are surprised that the mainframe comes out lower even at this early stage, but that is fundamentally because the mainframe and IMS are designed to handle multiple users and multiple workloads. When you now start to add in the people-related costs for running these systems, the figures become even more interesting. The report predicted that the average 5-year cost per end user in 2010 would be:
- Mainframes: $6,250
- Unix minis: $19,000
- PC servers: $24,000
How much per user would your company rather spend?
IMS Ensures Availability
There are two main parts to availability: how often the system is operating as expected versus being offline (for planned or unplanned reasons), and how long it takes for the system to respond. IMS proves to be more reliable in both areas.
Tools are available today to ensure uninterrupted service on IMS. In fact, we know customers who have run their production IMS system for many years with no interruptions at all. The latest analyst figures for comparative availability show mainframes at 99.998%, UNIX at 99.73%, and NT servers at 97.44%. In terms of annual downtime, this is 10 minutes for the mainframe, 24 hours for UNIX and 225 hours for NT. How much does it cost your company per hour for critical applications to be offline?
In the IMS world, we are used to sub-second response time and find it amazing that people are satisfied with response times measured in seconds or even longer. Not only are long response times annoying, they are also a major waste of user productivity and money. Returning to cost estimates, if you accept that a fair cost comparison should take account of time wasted because a computing system is slow to respond, Arcati, in the report referenced earlier, has estimated the following five-year costs per end user:
- Mainframes: $6,750
- Unix minis: $19,650
- PC servers: $26,750
Arcati has compared its results with other analysts, and there is universal agreement that the mainframe costs are 3:1 or 4:1 less than the alternatives.
The Advantages of IMS Performance
We have seen that moving off IMS to a distributed world does not improve performance. How about moving to DB2? Is it worth the effort of converting all your application code, databases, and operating procedures? The simple answer is no. In most cases, IMS performs faster than DB2 and uses less CPUs. The only time that IMS falls down in comparison is ad hoc query, and the way to counter this is to run an extract from IMS at regular intervals and use this extract for the reporting
IMS was designed to be an extremely high performance, online transaction processing system, and it has delivered on that promise from the beginning. Another reason for moving to DB2 in the past was that IMS had a limit on database size, but this limitation has now been removed with the introduction of partitioning in IMS.
Confidence in IMS Integrity
One of the reasons that IMS was designed in the first place was integrity. The whole ethos of mainframe database management systems is that you will never lose your data. We have helped customers recover from disasters over the years, and we have never failed to recover the IMS data, using a combination of IMS and vendor tools. Furthermore, IMS now enables you to share across multiple systems with complete integrity - which is not trivial, considering the realm of multiple systems updating shared database records, a common scenario. This sharing is only possible if you have the following mechanisms in place:
- A method of locking records so that two people cannot update the same record at the same time (If you don't have this, data can get corrupted.)
- A way to log the exact order in which transactions take place across the multiple systems
- A means of recovering data using the log information from the multiple systems
These mechanisms are all effective in an IMS world, but do you have assurance that these are in place and working correctly in a distributed environment?
The Need to Be Open but Secure
IMS is now probably one of the most open platforms around, and yet, hacking into a mainframe platform is virtually unheard of. Companies entrust their most critical data to IMS. In fact, without IMS, the world's financial systems, transport systems, and communication companies - among many others - would grind to a halt. Other open platforms are comparatively insecure.
IMS maintains strict security rules regarding who is allowed to access what information. Every action on the system is logged so that there is a complete audit trail of activity - a vital feature in today's world of Sarbanes-Oxley and similar compliance requirements.
It's difficult to provide cost comparisons for security and integrity, because the same levels cannot be reached off the mainframe. So IMS gives you the lowest cost, the best performance, unrivalled availability, and guaranteed security and integrity. With that in mind, why would you want to get rid of it?