Why COBOL is strategic in the 21 st Century John Billman Product Director, Net Express and Japanese Products
Feb 01, 2016
Why COBOL is strategic in the 21st Century
John BillmanProduct Director, Net Express and Japanese Products
The Value of Legacy
• Legacy applications are a valuable resource
– An investment of over $5 trillion– …at the heart of every large enterprise– …running the world’s economy
• …which can be reused and extended
– As core services– …in new products– …delivered to new channels
• …providing enduring business value
– Reducing costs &– …driving agility– …with least risk
75% of the world's business
data is in COBOL
There are between 180 billion
and 200 billion lines of
COBOL code in use worldwide
15% of all new applications (5
billion lines) through 2005 will
be in COBOL. (Gartner)
Emergence of Service-Oriented Architectures
Focus on ‘re-use’ at the business level
…based on XML & Web services
Web services is independent and inclusive of:
– Any platform
– Any language
– Any architecture
J2EE and .NET
“The secret to success lies in building bridges between the old and the new”
Ovum: Legacy renewal, May 2004
Increased choice for the enterprise
Then Now
Moore’s law
Higher flexibility
Lower cost
Platform for extension
Increased scalability
UNIXMainframe
“Rip and Replace”
Cost
0 10 20 30 40 50 60 70 80 90 100 % Reuse
Package Implementation
Legacy Transformation
Legacy Modernisation
“Lift and Shift”
“Lift and Shift” - the best strategy
The Choices for Moving
The Lift & Shift Opportunity
Reduced Costs– 80% Savings in hardware and software achievable– Rapid ROI utilizing existing staff skills, data and applications
Increased Agility– Modern service-based architecture using XML, Web
Services– Leverage the .NET or J2EE Application Environments
Lower Risk– Combination of Micro Focus running on an Enterprise-
strength platform and System Integrator expertise provides low-risk route to lower TCO
Windows/UNIX Development & Deployment
Business Rule Development
Open MiddlewareComponent
Architectures
COBOL ModulesWeb Services
COM ComponentsEJBs
C, C++, JavaHTML, XML
OtherLanguages
.NETWeb Services
Java J2EEWebApp Servers
Faster Development, Flexible Deployment
Net Express with .NET– COBOL development environment– Take core COBOL business processes & extend them to meet today’s business
needs
Net Express Professional Edition
– Revolve + Net Express– Combine Analysis Tools with
Development Process
Server Express– UNIX/LINUX COBOL development
Application Server – Designed for performance and reliability
Enterprise Server – Scalable, Managed, Transactional COBOL Service Deployment Environment– Mainframe Transaction Option for CICS
Micro Focus Enterprise ServerMicro Focus Enterprise Server
Enterprise Server – All Platforms
LinuxLinux UNIXUNIX WindowsWindows
Micro Focus Application ServerCOBOL Run-Time System (RTS), Filehandler, etc.
Direct COBOLWeb service
COBOL/J2EEServices
MainframeTransaction
Option
Development Environment – CICS Application
EnterpriseServerMainframeTransaction
Option
CICSDefinition
Data
TN3270
CICSCOBOL
BMS
COBOLLoadlib
BMSLoadlib
Net Express with MTO
CICS (ES/MTO) Extension
COMMAREA
Interface Mapping Toolkit
EJB, JSP and Servlet Generator
BMS
Workflow Capture
Web service
.NETWinform/Webform
Web Enable, Move to SOA
Lombard Insurance - Overview
Lombard Canada Ltd. is one of the oldest property and casualty insurance operations in Canada
Commercial, personal, and specialized insurance Consolidated gross premiums written totaling C$
1.94 billion Total shareholders' equity of C$ 861.7 million Top 5 Insurance Company in Canada Wholly owned subsidiaries of Northbridge
Financial Corporation (NB on the TSE)
Lombard – Why Migration? Diminishing availability of the highly specialized
skill set required to maintain a mainframe environment
Shortage of innovation in the mainframe ISV ecosystem
Need for increased flexibility Desire to stay ahead of the curve and continuing
the tradition of technology leadership in the insurance industry
Significant Cost Savings
IBM MainframeIBM Mainframe(outsourced)(outsourced)
RISCRISC
AS/400AS/400
Lombard – Migration Approach
Phase 1 - MigrationPhase 1 - Migration- CARP Sub-systemCARP Sub-system- Personal Insurance SystemPersonal Insurance System- Commercial Insurance SystemCommercial Insurance System
Phase 2 - MigrationPhase 2 - Migration- Finance Systems- Finance Systems
Phase 3 - MigrationPhase 3 - Migration- MIS and Business Support Systems- MIS and Business Support Systems
Projected ROI = 18 Months!Projected ROI = 18 Months!
Lombard – Current Systems
– IBM H70 - 200 MIPS (S/390) running z/OS (hosted at external supplier)
– COBOL for MVS 1.2– CICS T/S 2.2– VSAM– DB2– GTAM
– Assembler– JCL– EZ Sockets– AS/400 Interfaces
(LU6.2)– SAS– SELCOPY– Documerge – formatting
and printing output
Phase 1 – Personal and Commercial Insurance Systems
Lombard – Target Environment
– Microsoft Windows Server 2003 Enterprise– Convert all DB2, VSAM & GTAM to Microsoft SQL
Server– Migrate all COBOL to Micro Focus ES/MTO– Re-write Assembler into Cobol or C#– Utilize Micro Focus JCL Handler– Convert AS/400 interfaces (LU6.2) to Web Services– Third Party Software
– Migrate SAS to Windows version– Replace SELCOPY with Windows version– Replace Documerge with Windows version
– Microsoft SourceSafe for Code Management
Lombard – Target Environment
Websphere PL
B ChoiceCL Regions
Micro Focus P. Line
Micro FocusCL Billing
DocumergeInfopac
SQLDatabase
SQLDatabase
SAN
SASAcceptance/
SystemsTEST
TESTUnit
2 x 4 CPU Application 2 x 4 CPU Application Servers (split workload Servers (split workload + backup) 32GB RAM+ backup) 32GB RAM
2 x SQL/Data Servers2 x SQL/Data Servers(passive backup; (passive backup; clustered)clustered)
Yellow Servers = Internet = Internet
Green Servers = Production = Production
Red Servers = Development = Development /Admin/Admin
Lombard – Phase 1A CARP Sub-system: handed over to Lombard on
April 25th, 2005– 37 Cobol Programs– 16 BMS CICS Maps– 145 Cobol Copybooks– 3 Assembler Programs – 12 GTAM (Assembler Tables) – 7 VSAM files– 2 DB2 tables– 2 Flat/Sequential files– 4 JCL Streams – with 21 JCL Jobs/Proc
92.3% of COBOL code retained!!92.3% of COBOL code retained!!
Lombard – Why Migration?
““We estimate this project willWe estimate this project will save us in excess of $1 million a save us in excess of $1 million a yearyear, but more importantly, it will enable us to , but more importantly, it will enable us to become more become more
competitivecompetitive in our industry both today and in the future.” in our industry both today and in the future.”
““Part of Lombard’s competitive advantage is directly related to Part of Lombard’s competitive advantage is directly related to technology, and this migration will help us technology, and this migration will help us attract and retain attract and retain
the most talented IT peoplethe most talented IT people, who are looking to work with the , who are looking to work with the latest technology.”latest technology.”
experienceΔΔInsurance
Peter Howling, Vice President of IT, Lombard Canada Ltd.:Peter Howling, Vice President of IT, Lombard Canada Ltd.:
Software licensing costs projected to fall from 12% of IT Budget Software licensing costs projected to fall from 12% of IT Budget to 2-4%to 2-4%
Customer Story - SOLCORP Business Challenges:
• Price/Performance a key decision factor in new accounts
• Need to maintain and enhance competitive edge
• Seamless Integration with other insurance and financial systems
Technical Challenges:• Deliver Managed code solution reusing existing COBOL
mainframe DB2 code in service based architecture
• Match or exceed mainframe performance and scalability
Solution: • Micro Focus Net Express with .NET combined with
Microsoft Windows Server 2003 and SQLServer
Results:• Successful migration of Batch and On-line parts of the
system
• Exceptional scalability to >2 million policies
• Agile system, with COBOL business processes exposed as Web services
1 million lines of mainframe COBOL reused in .NET
CPUs 4 8 12
# Policies
700,000 1,400,000 2,100,000
Bertelsmann Business Challenge
– Very high running costs of VSE application
– Lock-out from new user interface technologies to improve competitiveness
Solution– Converted to run on Windows in
ASCII against UDB databases
Outcome– Batch performance and on-line
performance improved– Saving 600k Euros per annum– Positioned to be more agile –
new user interface coming
Better performance, lower costs and more agility
Choice Cost Bottom Line
Rewrite in Java
€4-5m 15 Man Years, Risky, Expensive
Move to z/OS
€3.6m Still not agile
Migrate to AS/400
€3.0m Non Strategic
Migrate to Windows
€1.2m Strategic, Agile, Reduced TCO
Alnova Financial Solutions (Madrid-based banking application provider in Accenture’s insurance and banking portfolio)
Business Challenge– Target low end market using mainframe assets for its Alnova
Financial Solutions product suite– Strategic commitment to .NET
Solution– Migrate Enterprise Banking application – 5500 COBOL programs - 11 million lines of code…– 1600 transactions, 2000 JCL steps, DB2 database…– To Windows 2000 on 8-way Intel servers running SQL Server
Outcome– Successful migration to Windows and .NET– Achieved >240 transactions-per-second on 8-way processor– Single-sourced business rules for both platforms
Business Challenges:• Price/Performance a key decision factor in new accounts
• Need to maintain and enhance competitive edge
Technical Challenges:• Maintain Common Business Logic across Mainframe, UNIX and Windows
• Deliver Scalable, Robust, High Performance System
Solution: • Micro Focus Net Express combined with Microsoft Windows Server 2003 delivering scalable operating
environment
Result:• Successful Benchmark at over 800 TPS
COBOL scales new heights on Windows
RESULTS SUMMARY
DB Server on Win2K
DB Server on Win2K3
Configuration Online Test (TPS)
FNS/SQL Server CPU Usage
Batch Test (Acc/Hr)
FNS/SQL Server CPU Usage
Online Test (TPS)
FNS/SQL Server CPU Usage
Batch Test (Acc/Hr)
FNS/SQL Server CPU Usage
CONF1 (16Way) 816 91/69 19.85 Million 84/91 811 92/57 19.9 Million 83/82 CONF2 (8Way) 528 95/42 13 Million 92/50 538 96/38 12.8 Million 90/49 CONF3 (4Way) 358 94/27 9.1 Million 94/32 334 96/21 8.9 Million 95/28
Benchmarking ES/MTO Performance Measurement Methodology
– Measure same CICS COBOL transaction (OLTP) workload on mainframe and Enterprise Server w/ MTO
– Compute MIPS rating equivalent for Windows platforms– Generate Price / Performance ratios– Create Return On Investment (ROI) Calculator
COBOL implementation of TPC-C– Intentionally untuned for any one subsystem– Mirrors typical CICS transaction (database) mix
Apples for Apples - Uses all subsystems for presentation logic, business logic and data storage– COBOL language and runtime system– 3270 terminal I/O– CICS transaction management system– DB2 database management system
Mainframe Functionality, Performance, Reliability, Availability, Serviceability, Scalability, Security
Performance Results Given Enterprise-class Hardware …
– Unisys ES7000 8 x Intel 3.0 GHz Xeon 32-bit processor, 8GB RAM– EMC2 1 terabyte Storage Area Network (SAN)– CISCO network
… and Enterprise-class Software …– Micro Focus Net Express and Micro Focus Enterprise Server w/ MTO – Microsoft Windows 2003 Server– IBM UDB 8.1 database management system
… we can estimate …– 1715 MIPS equivalent for each 8-way processor group– Price / Performance advantage of 20x over zSeries upgrade pricing in the 5000-10000
MIPS range
Enterprise Performance , major cost savings
Interface Mapping Toolkit (IMTK)
COBOLInterface
(Linkage Section)
COM
Web Services
JavaApplication
Server
EnterpriseServer
EJBInterface
TestClient
Non-ESWindows only
Generation Deployment
Linkage items in your COBOL program…
…map on to fields in your web service interface
The Interface Mapping Toolkit
Deploy Web Services to Enterprise Server
…and call your Web Service from any client you like
Mapping COBOL Programs as EJB
COBOLProgram
Checker
InterfaceMapper
IDTIDT Map. XMLMap. XML
INTINT Data Dict. Data Dict. XMLXML
EJB EJB ClassesClasses
EJB, JSP and Servlet Generator
ServletServletClassesClasses
JSPJSP
J2EE
Java Connector Architecture
Web Container
JSP/Servlet
EJB Container
EJB
Micro Focus Enterprise Server
Micro FocusResource Adaptor
Application Contract (CCI)
EJB Methods
Transaction MgmtConnection Mgmt
Security Mgmt
BINP – Micro Focus Binary Protocol
System Contract with J2EEApplication Server
COBOL – an equal player in .NETCOBOL – an equal player in .NETCOBOL generates IL as other Microsoft languagesCOBOL generates IL as other Microsoft languagesCOBOL is deployed inside the .NET Framework under the CLRCOBOL is deployed inside the .NET Framework under the CLRCOBOL gains access to Framework classes and functionalityCOBOL gains access to Framework classes and functionality
COBOL Inside the .NET Framework
COBOL C# VB.NET …
MSIL (Intermediate Language)
.NET Framework
FrameworkClasses ADO.NET Winforms Webforms
Com
mon
Lan
guage R
un
time
Win32
Micro F
ocus
Ap
plication
Server
Visu
al Stu
dio .N
ET
2003
Net E
xpress w
ith .N
ET
COBOL Development COBOL Deployment
Create, Reuse and Extend
Reuse existing COBOL Business logic in .NET
Use Procedural or Object Oriented COBOL under .NET
Extend COBOL applications to utilize .NET functionality– Access to .NET Framework Classes
program-id. ShowMessageBox as "ShowMessageBox". environment division. configuration section. repository. class Message-Box as "System.Windows.Forms.MessageBox".
data division. working-storage section. procedure division. invoke Message-Box "Show" using "Hello COBOL World". end program ShowMessageBox.
Moving to ADO.NET
Existing OpenESQL applications can be reused under .NET
EXEC SQL SELECT A.NAME ,A.SALARY INTO :STAFF-NAME:STAFF-NAME-NULL, :STAFF-SALARY:STAFF-SALARY-NULL FROM STAFF A WHERE ( A.ID = :STAFF-ID )
END-EXEC
ADO.NET classes can be called directly from COBOL
OpenESQL mapped to ADO.NET
COBOLEXECSQL
COBOLEXECADO
ODBC ADO.NET
Database (SQL Server, Oracle, …)
COBOL, C#, VB, …
OpenESQLAssistant
or
Connected and Disconnected Data Access
ADO.NET provides for Connected and Disconnected data access
Disconnected data access liberates SQL application from a continual connection to a database
Enhance the performance of web and other applications
Share data across composite applications
Make ISAM and other data available to non-COBOL applications
Export data to XML
ApplicationRead / Write RDB ISAM
Connected Data Access
Application
RDB ISAM
Disconnected Data Access
COBOL, C#, VS.NET Program
COBOL, C#, VB.NET Program
Dataset(s)
Download
Upload
Expose COBOL as Web Services Use Visual Studio .NET to create and extend COBOL
applications
CLASS-ID. Stock INHERITS WEBSERVICE. REPOSITORY. CLASS WEBSERVICE AS "System.Web.Services.WebService" CLASS WEBMETHOD AS "System.Web.Services.WebMethodAttribute". OBJECT. PROCEDURE DIVISION. METHOD-ID. StockQuote CUSTOM-ATTRIBUTE IS WEBMETHOD.
Microsoft IIS
AS
P.N
ET
CO
BO
L
COBOLApplication
Why use XML?
XML brings data to the web XML is now commonly deployed as an
integration piece between applications or application components (EAI, B2C and B2B)
XML is a simple but extensible and mature technology
By accessing XML from COBOL it becomes easier to Integrate COBOL business logic and data to systems across the enterprise
A key technology to enable e-business
Micro Focus COBOL/XML Syntax
Provide a higher level COBOL orientated approach to COBOL/XML
Adds significant new syntax to handle XML documents to consume, create, update and XML documents from COBOL– Based on familiar approach used with COBOL I/O
support– Provides both SAX style or DOM style parsing
Map to/from XML W3C Compliant Schemas
CBL2XMLCOBOLRecord
XMLSchema
Basic MF COBOL XML handler…$set sourceformat(free) p(prexml) o(basic.pp) endp SELECT myxml ASSIGN ADDRESS OF mybuff
ORGANIZATION IS XML DOCUMENT-TYPE "mybuff.xsd"FILE STATUS IS mybuff-status.
XD myxml.01 myxml-name PIC X(80) IDENTIFIED BY "name".WORKING-STORAGE SECTION.01 mybuff PIC X(80) VALUE "<name>Barry &
Laurence</name>".01 mybuff-status PIC S9(9) COMP-5.PROCEDURE DIVISION. OPEN INPUT myxml READ myxml DISPLAY "Status: " mybuff-status DISPLAY "Name : " myxml-name CLOSE myxml STOP RUN.
Business Challenges:• Differing requirements for on-line single share order entry and high
volume bulk share processing• Security. Integrity, and Consistency of Share Processing an absolute
requirement Technical Challenges:
• Integrate 3rd Party System running on UNIX with existing Windows based COBOL System ‘Mozart’.
• Deliver Robust, Reliable High Performance System Solution:
• Micro Focus Net Express XML Early Adopter Software enabled data integration between the two separate systems
• A small XML I/O processor was built that delivered bulk orders to ‘Mozart’ via XML and returned the status back
Result:• Successful integration of new Share System for bulk orders without
impacting existing system
Integrate Disparate Business Systems
Deutsche Bank Luxembourg
Deutsche Bank Luxembourg Outline Architecture
UNIX Windows
RPMS Export/Import
Flat file
MercatorEAI tool(mapping and data transformation)
XML
COBOL Import/ExportXML
Mozart OMS(NX application)
OracleDatabase
Why COBOL is strategic in the 21st Century Reuse COBOL assets
– 200 billion lines of COBOL in use today– 75% of business data processed in COBOL– 15% of all new programs will be written in COBOL
Reuse COBOL Skills Powerful Development environments improve
programmer productivity COBOL remains a strong business class language
delivering performance and maintainability “Its not your Fathers COBOL!”
– COBOL is now a “First Class Citizen” in .NET– COBOL is Object Orientated– COBOL works with other technologies in the enterprise (not
just .NET, also J2EE, XML and Web services)
Legacy Platforms and Legacy Environments should be differentiated from mission critical business logic
How can I help? Teach more COBOL
– Part of the future Howling envisions includes bringing in new talent, which likely won't have a strong mainframe skill set. "We've outlived and outgrown the mainframe," Howling said. "With [recent] graduates, you start talking mainframe and they're not interested … that's where my talent pool is coming from, and they won't be learning COBOL in universities."
Show COBOL is has moved beyond the mainframe Show COBOL is modern, agile and strategic Show how COBOL has a future Show how COBOL works within the enterprise
today Show why COBOL is a valuable and strategic skill
for a 21st Century IT Graduate
Help build the next generation of COBOL Programmers!
Why COBOL is strategic in the 21st Century
John BillmanProduct Director, Net Express and Japanese Products