"The news of my death
is greatly exaggerated." – Mark Twain
Commencing in the second half of 2004, Microsoft and approximately 20 other IT product and services vendors formed a new alliance, the Mainframe Migration Alliance, which has one mission in life. That mission is to migrate workloads off the mainframe and onto the Microsoft platform.
In the last twenty years, this is the most comprehensive, targeted, and determined attack on the mainframe environment ever launched. While still in its infancy, the Alliance has deep technical skills and vast array of tools and products to be used to move legacy applications to “more modern” languages and lower cost operating environments.
Developing a totally new system or replacing legacy systems by manually rewriting the system’s software is costly and time consuming. According to Gartner Group findings, legacy system modernization using manual methods can cost between $6 and $26 per line of code and thus far, such projects have a success rate of approximately 7%; a success rate that has not bred confidence within the IT community [12].
Using semi-automated system transformation tool-based solutions, while relatively promising, have not provided a sufficient level of automation to overcome the drawbacks associated with manual intervention required to address untransformed code. Once the untransformed code has to be developed, all the shortcomings of the manual approach come into play. And once developed the IT manager has to address code non-uniformity during the integration process.
The Alliance is pushing for Automated Transformation.
Automated transformation focuses on fully automated transformation and
migration of the legacy system’s application code and database structure to
achieve a functional equivalent of the original system and re-hosting in
a modern computing environment. From
this baseline, the IT manager can continue operations without the disruption of
user and support personnel retraining, and can more efficiently begin to expand
the system’s functionality as required.
Reported “Automated Transformation” projects1 indicated about .5 defects per thousand lines of converted legacy code being introduced by the transformation process. The transformation of system applications2 code and database at automation levels exceeding 99 percent is now a viable approach to legacy information system modernization. The benefit of the approach is migrating the legacy system to a modern computing environment while preserving the repository of business knowledge and processes imbedded in the legacy system.
However it appears that Microsoft is pressing for leaving the applications in their native language.
1Statistics from “Think Outside the COTS” by Randy Doblar, Philip Newcomb and Lisa Smith, March 2004
2 Automated Transformation of Legacy Systems by
In a direct
quote from Microsoft, “Micro
Focus Enterprise Server with its new Mainframe Transaction Option underpins the
new platform alliance and now enables the migration and deployment of
CICS/COBOL mainframe applications to the Windows platform. Enterprise Server
offers the most rapid and lowest-risk way of re-hosting mainframe applications
on Windows. Once the application has been re-hosted it can be extended more
easily and effectively through the use of the .NET Framework, SQL Server (TM)
2000, XML and Web services.”
In probably the most interesting statement
made by the Alliance members, "As
organizations increasingly realize that they need to re-use rather than replace
their existing mainframe applications any initiative that enables them to do
this at lower cost and risk is extremely valuable to them," said Gary
Barnett, IT Research Director at OVUM. "This alliance will help enterprise
users take a more cost-effective and reliable approach to the task of migrating
applications to the Windows platform than the expensive and risk-prone 'rip and
replace' approach that was the vogue in the late 1990s."
OK. So everyone seems to agree that you need to reuse your 40-year inventory of legacy applications. The Alliance seems to be falling into line that leaving the application in its native language makes more sense, costs less, and introduces less code defects. Furthermore, the Alliance seems to agree that you need agile, open environments for today’s IT world.
One must carefully look at the stated reasons for legacy migrations before jumping on to the migration bandwagon. The Alliance’s reasons stated are:
1. High cost of mainframer operations and upgrades,
2. Lack of flexibility and agility,
3. Long time-to-market for new products,
4. Shrinking mainframe labor pool,
5. Vendor roadmaps forcing tough decisions
Let’s discuss the first item of the above list, the high cost of mainframe
operations and upgrades. The Marion Stern Associates paper, Total Cost of
Information Technology @ URL http://www.marionstern.com/totcost.html,
had the following quote on distributed (desktop) costs (i.e. the Microsoft
realm): “The study showed that the total costs of computing, including external
computing costs that were directly charged to users, the costs of the
"shadow" computing groups discovered in the user community and group
costs were more than double the IT budget”.
In The Center For
Human Development paper “Server-Based
Computing” – they make the following statement on total cost of
computing:
“In the
past year alone, nearly three thousand articles and press releases have been
written about or referred to the concept of total cost of ownership (TCO). In addition, a variety of research studies
have been published on the topic. All
reflect a common principle – that the true cost of procuring, deploying and
maintaining computing applications for an end-user community is significantly
more than the initial acquisition cost of a PC and software. How much more? Recent Gartner Group estimates put the total cost of ownership of
a network Windows95 PC at $49,915 over its five-year life. The average of all the studies for any PC at
$12,000 over its three-year life (a standard life-span).
High TCO estimates have been controversial. Lower estimates have often seemed
understated. What are the underlying
cost elements on which these estimates are based? And more importantly, how can these costs be managed and
reduced? Studies have shown that by
using Server-Based computing, TCO can be reduced as much as 57 percent and
perhaps even more.
An organization’s total cost of ownership encompasses
four key areas:
1) Hardware,
network and software capital costs for new acquisitions and upgrades
2) System
and network management costs
3) Technical
support costs
4) IT and
related costs shouldered by end users
Recent TCO analyses have also recognized other important
categories of costs, including software development expenses, network
communications charges and lost opportunity costs resulting from system
downtime.”
So we know that there are hidden costs with the “server farm” approach based on what we read.
So what about the mainframe costs?
In an article Total cost of ownership - the
search goes on to locate IT's holy grail in Computing magazine, the author states, “The mainframe option - which gives one machine overall
control of an organisation's desktops - may offer better value in the
long-term, but the initial outlay and installation can be very off-putting.” Don’t you love the way the English phrase things?
But they have hit on
a critical point. One must look beyond the upfront outlay and determine the
total cost of ownership over a three, four, five, or even longer time period.
The mainframe offers the advantages that it has a truly industrial strength operating
system strengthened and built over a 40-year span of time. This operating
system, z/OS, has already fought the battles with reliability, availability,
and servicability (RAS). The operating system is designed NOT to need booting
(in mainframe terms it is known as Initial Program Load or IPL). In fact only
planned scheduled outages, IPLs, should be considered normal, any unscheduled
outage violates the design point of the z/OS operating system. Further the
security protections from accessing system or user resources is far and away
the most protective in the IT world. These protections rely on both the native
operating system capabilites and one add-on product such as RACF or ACF. How
many patches has Microsoft shipped over the last thirty-six months that are
specifically plugging security holes?
The operating system
has grown in these years from a single thread, single process work horse to a
multi-processing, multi-threading, processor-balancing and workload-balancing
thouroghbred. This operating system
fought and won the battles of multi-processors, true workload balancing, mirroring/duplexing and recovery years
before the Servers and their operating systems were even a gleem in the eye of
their developers. We defy you to find a feature in the Server operating systems
that doesn’t currently exist in the Mainframe operatings system or was tried
decades ago and replaced by something better.
So maybe there is some costs in availability and reliability with still
maturing operating systems that are “re-inventing the RAS wheel” to some
degree?
When we deal with mainframe versus PC, we tend to talk in terms that equates to user transactions. These user transactions normally equate to CICS TS applications. Why? Look at the numbers. The facts3 are:
· 40 years and $1 trillion invested in CICS applications (IDC)
· 20,000+ CICS/ mainframe licenses worldwide
· 14,000+ CICS customers worldwide
· Used by 490+ of IBM's top 500 customers
· 30 million end users of CICS applications
· 150,000+ concurrent users/system
· 5,000 CICS software packages from 2,000 ISVs
· 900,000+ programmers earn their living from CICS
·
CICS handles more than 30 billion transactions/day
valued at over $1 trillion/week
So what are we saying here?
If we inspect the capabilities of
CICS TS and z/OS as the mainframe environment that Mainframe Migration Alliance
is proposing re-platform with their .NET as an addition, let’s see how we stack
up to the Alliance’s reasons for such a
migration.
Well, we already have seemed to
cover the costs issues. One must tackle the total cost of ownership of the
mainframe to the proposed Server solution over a multi-year period to gain a
sense as the true facts.
The second reason presented was one
of lack of flexibility and agility. As of the writing of this paper (Dec 2004),
CICS TS V2.3 is current and CICS TS V3.1 has been announced for availability in
March 2005. We will discuss the functions in both versions in response to the
Mainframe Migration Alliance’s stated reason of agility and flexibility.
Microsoft & IBM are main cogs in
the Service-Oriented Architecture community. The
idea of SOA is that users need services that can be requested from service
brokers who supply the services. The user looks up the service needed in a
‘yellow pages’ and the brokers provide the contract that they and users agree
to adhere to for requesting and fulfilling the service. The idea
of SOA is to provide agility with not worrying about the transport or
platform inhibitors. SOA is an architecture and not a protocol or standard.
A layer of SOA is the Service
Network. A Service Network is an application level network that
leverages a Service-Oriented
Architecture. The Service Network is composed of a number of Service Network Participants and many Services. See the graphic example below.
3 From article Integrating CICS Applications as Web Services by Russ Teubner.

The SOA Service
Network
The Service Oriented Architecture (SOA) is a distributed software model. The primary characteristics of an SOA are:
Services are used to divide larger applications
into smaller discrete modules.
Services are integrated via service composition mechanisms to create
larger applications.
It is said that an SOA is usually comprised of three primary parties:
A Producer (of services)
A Consumer (of services)
A Directory (of services)
Web
Services are considered an example of Service-Oriented Architecture.
Service Networks take on the properties of an SOA.
Web Services embrace WS-I Basic Profile 1.0a Final Specification for Interoperable Web Services. The non-proprietary Web services specifications covered by the Basic Profile include SOAP 1.1, WSDL 1.1, UDDI 2.0, XML 1.0, and W3C XML Schema.
A Service is a callable
routine that is made available over a network. Services have well defined
interfaces (inbound and outbound). The interfaces are often published in a
directory. Optionally, directories are often utilized by a Consumer (or
requester) to discover available services. The Consumer may then call the
service to have some action performed.
Services are often compared to components. One
difference that is usually noted is that services are “live”. That is, they
usually reside inside of a multi-threaded engine that is network aware. The
engine allows multiple consumers to utilize the services and provides some
basic infrastructure (security, logging, etc.)
The term Service is often interchanged with the
term, “provider”. A provider is usually used in conjunction with Consumer to
differentiate between the entity that consumes a resource/result and the entity
that produces the resource/result.
Service Network Participants are
those entities that play a role in enabling a service-oriented architecture.
Participants commonly include:
· Service Engines
· SOAP Engines (CICS TS SOAP Server Feature)
· Application Servers (CICS TS and/or WebSphere)
· Domain Routers
· Content Routers
· Transaction Processing
·
Saga
Monitors (CICS
TS Business Transaction Services Feature)
·
Short-lived
TP Monitor (CICS TS)
|
SOA Needs
|
CICS TS 2.3 |
CICS TS 3.1 |
Act
as Requestor/Consumer
|
|
|
Act as
Producer/Provider
|
|
|
Support Web
Services
|
|
|
|
Support
SOAP 1.1 |
|
|
|
Support XML 1.0 |
|
|
|
Support UDDI 2.0 |
|
|
|
Support WSDL 1.0 |
|
|
|
Support W3C XML Schema |
|
|
|
Support SAGA Monitor - BTS |
|
|
|
Support J2EE - EJB |
|
|
|
Support C+ |
|
|
Lets
take a look at the features required in a SOA Web Services Role and as a
Industrial Strength Server providing modern tooling and languages for today’s
IT environment.
The
Web Services at CICS TS 3.1 provides for legacy applications in COBOL to be
re-used as a SOA requestor or provider.
J2EE
support at CICS TS 2.3 and above provides full compliance for J2EE (CORBA and
EJBs.)
CICS
TS fully supports C+ Language
CICS
TS COBOL support allows for XML in/out as well as SOA re-use in the SOA.
CICS
BTS
provides event driven (SAGA) enveloping of application programs.
Returning to the reasons stated by the Mainframe Migration Alliance, we will pick up at reason number 3, long time-to-market for new products. Who are they kidding? I’ve never seen new IBM versions and release coming as fast as they are today. New applications based on Java J2EE should run on any J2EE compliant platform when given the appropriate container. This includes CICS TS (might require the BTS feature also) and WebSphere Application Servers. So what new products are the alliance members speaking of? COBOL and PLI can participate in Object Oriented Architecture environments and utilizes the JAVA environment to accomplish the participation.
Reason 4, the shrinking mainframe labor pool, is also a misstatement. Since CICS TS and/or WebSphere are J2EE compliant, the JAVA developers with little or no CICS expertise can create new applications (EJBs). The C+ support has been strengthened with every release of CICS for over seven years at this point. If you wish to have Object-Oriented participation of new CICS programs or enhanced, use the C+ capabilities or the JAVA capabilities.
There is still a large amount of COBOL, PLI, and CICS skilled individuals around the IT community. They have just been overlooked, underutilized, and non-inspired in the last ten years. IBM and many IBM Business Partners are teaching CICS curriculum for both application programmers and system programmers so there is a pipeline available.
Finally, reason 5, vendor roadmaps forcing tough decisions, is not really explained anywhere by the Alliance. They may be saying that since the AMDAHL, HONEYWELL/BULL, and HITACHI types went away, there is only one mainframe provider. With that provider adding Web functionality to all of the z/Series hardware and software, what difference does it make? The alliance would seem to indicate that since here is only one mainframe vendor, the vendor has no incentive to lower the costs of ownership. It would seem to this author that the existence of the Mainframe Migration Alliance is more than sufficient incentive to keep IBM on its toes to ensure that the mainframe per user costs of ownership over a term period is competitive with the .NET environment.
This paper has been written with the IT management, IT architects, and CICS system programmers as the target audience. The CICS professional can use the content of this paper as ammunition to defend and, indeed, put the mainframe on the attack. IT management and architects may not know that the mainframe is capable of today. This paper has tried in a concise, informative manner to present these capabilities. The one table in this paper shows the whole story in graphic form. If nothing else extract that table and use it as discussion points with decision makers when the opportunity presents itself.
Authored by Don Fowler, MCE
Inc, 2004