© Copyright 2019 Pivotal Software, Inc. All rights Reserved.
Rohit Kelapure rkelapure@pivotal.io @rkela
Pivotal Principal Solutions Architect - Pivotal Labs AppTx
How to Migrate
Applications Off a
Mainframe
● How to decide what to modernize
first by looking at business
requirements AND the existing
codebase
● How to take a test-driven approach
to minimize risks in decomposing the
mainframe application
● What to use as a replacement or
evolution of mainframe schedulers
● How to include COBOL and other
mainframe developers in the process
to retain institutional knowledge and
defuse project detractors
● How to replatform mainframe
applications to the cloud leveraging a
spectrum of techniques
Ah, the mainframe. Peel back many transactional business applications
at any enterprise and you’ll find a mainframe application under there. It’s
often where the crown jewels of the business’ data and core transactions
are processed. The tooling for these applications is dated and new code
is infrequent, but moving off is seen as risky. No one. Wants. To. Touch.
Mainframes.
But mainframe applications don’t have to be the electric third rail.
Modernizing, even pieces of those mainframe workloads into modern
frameworks on modern platforms, has huge payoffs. Developers can gain
all the productivity benefits of modern tooling. Not to mention the
scaling, security, and cost benefits.
So, how do you get started modernizing applications off a mainframe?
Join Rohit Kelapure, Consulting Practice Lead at Pivotal, as he shares
lessons from projects with enterprises to move workloads off of
mainframes.
https://www.brighttalk.com/webcast/14891/352286/how-to-migrate-applic
ations-off-a-mainframe
We are a team of consulting experts that
jumpstart cloud journeys and quickly show
measured wins. We use simple tools, start
small and scale fast to redefine current
systems and achieve cloud native speed,
resiliency and economics.
What We See
• Old Application Logic - Poor Documentation
• COBOL, PL/I, Assembler, JCL, Easytreve,
IDMS, DB2, IMS and the list goes on ...
• Tightly Coupled and Brittle Architecture
• Expensive Licensing and Maintenance
• Rehosting and Batch Offload Approaches
• Genuine Desire to Modernize … But How?!
Rewrite
Replace
Modernization
Rewrite
Rearchitect
Cloud Native
Replatforming
ReInterface
Augment
Replatforming
Rehost
Emulate
Code
Translators
Mainframe Migration Strategies
Mainframe Migration Approaches
Option What it Means
Rewrite
Migrate the data off the mainframe and completely rewrite the business processes in
modern frameworks. Change the source language of the original application, for
example, from COBOL or Natural to Java or C#.
Rehost
“Lift and Shift” the applications and data from the mainframe to Unix or Windows with
interface emulation or automatic code translation tools.
ReInterface
Keep the business logic on the mainframe in its present form, but unlock them by
exposing via REST APIs and Web Services.
Replace/Retire
Replace the business processes with packaged applications such as SAP, PeopleSoft,
and Oracle. This involves gap analysis and data conversion. Take an inventory of
applications and retire those that no longer serve a purpose.
Emulation
Replatforming > Automated Code Translation
Pivotal - Modern Systems Whitepaper http://bit.ly/pvtl-ms Modernization Journey of Mainframe
COBOL on Pivotal Cloud Foundry with Microfocus
Visual COBOL Brings first class OO
support to COBOL language
Transparent interop between Visual
COBOL and legacy code and JVM or
.NET languages
Provide friendly APIs to legacy code
Enables devs to use familiar tooling
Proprietary Micro Focus technology
Extract COBOL that represents useful
business rules and use with minimal
change. Create test suites for your
business rules
Rewrite/refactor the ones where you
have the most change
Credit-Service-1.
0.jar
BusinessSyste
m
InteropLayer
CreditServiceSpring
boot
Visual
COBOL
COBOL
WebServer
Request 1
Request 2
StatementContr
oller
StatementContr
oller
MonthlyStateme
nt
MonthlyStateme
nt
Run-Unit
1
Legacy
COBOL
Run-Unit
2
Legacy
COBOL
Continous Modernization Approaches
NTT Data Transfromation Mapping Process
NTT Data Continous Modernization Process
What We Believe
• Automated Analysis to Understand
• Find a Tops-Down Initiative
• Slice Vertically, Modernize Incrementally
• Automate Everything You Can
• Build Skills by Pairing and Doing
• Let Real Work Inform Strategy
The Pivotal Approach
BUILD PRODUCT
CO-LOCATE YOUR PEOPLE AT PIVOTAL LABS; LEARN CLOUD
NATIVE PRACTICES AS WE BUILD SOFTWARE TOGETHER
MODERNIZE AND STREAMLINE
INCREMENTALLY MODERNIZE SYSTEMS
THAT UNDERPIN THE PRODUCT
● Find a Product Opportunity
● Use the Pivotal Way
○ Pairing, Balanced Teams, TDD, etc.
● Target a Cloud Native Platform, Use
Modern Practices and OSS
● Frame a Tactical Plan; Use Tooling
to Understand Current State
● Deliver Incremental Returns
○ Target a Vertical Slice
○ Modernize Modules That
Underpin the Product Initiative
Understand Current State
Code Scanning and Automated
Assessment Tooling
Insight Derived from Current
Application Architecture
Sample Assessment Views
Clone
Metrics
Naming
Sub System
Call Graph
Accurate code metrics are critical to understanding effort and cost
Duplicate code can decrease effort and provide insights into the unintended design
Source code naming conventions can inform all other views
Sub-systems revealed through network analysis help to review incremental opportunities
Reveals interdependencies and code structure
Cloud anti-pattern What elements of the legacy code will pose problems moving to cloud
Composition Function composition drives the understanding of fit-for-purpose solutions
IBM
IBM
Monolith
App
Cache
Win?
App
We restarted with
events first
What we’ve
learned
➔ Events are the language
bridge to the business
➔ This method of
identifying bounded
contexts is a secret to
decoupled architecture
➔ “Tell don’t ask”
Completing the Journey
IBM
App
Cache
App
Win? Microservices
Event-driven
Microservices
AppAppApp AppAppApp
AppAppApp
Migrating zOS Batch to Distributed
Spring Batch provides a physical
implementation of the layers,
components and technical
services commonly found in
robust systems used to address
the creation batch applications,
with the infrastructure and
extensions to address very
complex processing needs
Why us?
We have great experience.
Systemization > Methodology and Techniques
• Portfolio level
goals definition
• Define Measures
• Discuss timeline,
staffing, risk,
dependencies, etc.
• Automated Data
Collection
• Research and
MVP Definition
• Architecture
Design
• Backlog
Definition
• One-week iterations
• Hands-on code within 2-3 days
• 1s to 10s of apps moved in 1s of
weeks
• Working code used to inform a
cookbook of patterns
Iterative Project Execution
Boris
Event
Storming
OKRs
Slice
Analysis
Snap /
SnapE
Patterns
Discovery &
Framing
Scoping
Ongoing Delivery Cycle
We deliver working code via
replatformed apps and modernized
slices that prove out patterns
Value
Stream
We work on a fixed timeline and
spin this wheel many times, using
the techniques as necessary
Fixed Timeline Engagement
Supported by a Paired Team
What Does it Look Like?
The engine on the mainframe was difficult to
scale at short notice with rising transaction
costs and dwindling mainframe SMEs. We
built a distributed event driven engine with
.NET core and Steeltoe on PAS using Linux
stem cells. We overcame challenges by
leveraging domain driven design, XP, & 15
factors cloud native development.
We realized strong performance SLAs with
blue-green deployments.
We had a decades old monolith that
processed 3rd party data was complex,
lacked operational transparency and
creaking under its own weight. Adding new
reports required elaborate analysis and
heavy regression testing resulting in long
delivery cycles. We made the system flexible
in a cloud environment with an event-driven
architecture that allowed us to add new
reports easily with enhanced operational
visibility.
We Transformed and So Can You!
Why us?
We Have The Platform
Consistent Market Shift Towards Open Source
Push Toward Modern Cloud Models
Hardware
IaaS
Container Orchestrator
Application Platform
Serverless
Functions
Strategic Goal: Push as many workloads as technically
feasible to the top of the platform hierarchy
Higher flexibility,
lower standards
enforcement
Lower development
complexity and higher
operational efficiency
Think to the Future: Choose the Right Tool for the Job
Container
Orchestrator
Container Scheduling
Primitives for Network,
Routing, Logs & Metrics
CONTAINER
Developer
Provides
Tool
Provides
Application
Platform
APPLICATION
Container Orchestrator
Serverless
Functions
FUNCTION
Application Platform
IaaS
Container Image & build
L7 Network & Routing
Logs, Metrics, Monitoring
Services Marketplace
Team, Quotas & Usage
Function scheduling
Function exec services
“more than 70 percent of new in-house
applications will be developed on an
open-source database management system,
and 50 percent of existing commercial
relational database management system
instances will have been converted or will be in
process of converting”
Gartner Predicts That By 2020 ...
Our Database Solutions
Open Source, Proven, and with 24x7 Worldwide Global Support
Pivotal Postgres
Flexible and Full Featured
ORDBMS
Pivotal Greenplum
Postgres Based Analytics at
Scale
Pivotal MySQL For
PCF
Bosh Managed MySQL
Mainframe Migration Success “Imperatives”
2. Phased Delivery Pivotal Approach
Deliver Incremental Returns.Target a Vertical Slice. Modernize Modules That
Underpin the Product Initiative.
1. Extract Value from existing deployments
Unlock APIs and data using zOS Connect products and reduce cost with zip,
zaap processors. Migrate easier online workloads first. Strangle the mainframe
3. Address Data and People
Be Kind to the mainframers. Take the opportunity to change data models if it
makes sense. Make the Mainframers champions of your cutover.
4. One size does not fit all
Mainframe portfolio rationalization is key. Leverage different approaches based
on business and technical outcomes desired. FOCUS!!
Cost SavingsFaster Releases Reduce RiskStable SoftwareGet to Scale
Services is how we deliver outcomes
Expert
Guidance
___
Our experts will work
with your team to
show them how and
transfer our best
practices & methods.
Cultural
Transformation
___
Demonstrate new
ways of working,
processes and
approaches in a
hands-on
environment.
Personalized
Engagement
___
Meet you where you
are and work on real
engagements
Successful
Delivery
___
We help you align
work to support
business initiatives
and then deliver.
Sustainability
___
We help you sustain
success and advise
you on how to scale.
Outcomes
Enabling your team and strategy
through pairing and working code.
● Existing Apps Running on PCF
● Measured, Specific ROI
● Sunset Current Licensing
● Established Patterns for
Subsequent Migration Work
● New Operational Efficiencies
● Migration Strategy Refinements
● Skills Enablement
Scope
We pair with your people and work
against a backlog that you prioritize.
● Agile Assessment
● Modernize Apps in Dev Pairs
● Establish Interop Patterns
● Build Automated Pipelines
● Transition Apps Quickly;
Increase Velocity Over Time
● Cookbook of Patterns
● OTJ Skills Enablement
TYPICAL FOCUS AREAS WHAT TO EXPECT
Pivotal AppTx Take the Next Step
SMALL TEAMS
FIXED TIMELINE
Use Real Work to
Inform Your Strategy by
Moving, Modernizing
and Improving Existing
Apps While Learning
https://pivotal.io/application-transformation
Transforming how the world builds software
© Copyright 2019 Pivotal Software, Inc. All rights Reserved.

How to Migrate Applications Off a Mainframe

  • 1.
    © Copyright 2019Pivotal Software, Inc. All rights Reserved. Rohit Kelapure rkelapure@pivotal.io @rkela Pivotal Principal Solutions Architect - Pivotal Labs AppTx How to Migrate Applications Off a Mainframe
  • 2.
    ● How todecide what to modernize first by looking at business requirements AND the existing codebase ● How to take a test-driven approach to minimize risks in decomposing the mainframe application ● What to use as a replacement or evolution of mainframe schedulers ● How to include COBOL and other mainframe developers in the process to retain institutional knowledge and defuse project detractors ● How to replatform mainframe applications to the cloud leveraging a spectrum of techniques Ah, the mainframe. Peel back many transactional business applications at any enterprise and you’ll find a mainframe application under there. It’s often where the crown jewels of the business’ data and core transactions are processed. The tooling for these applications is dated and new code is infrequent, but moving off is seen as risky. No one. Wants. To. Touch. Mainframes. But mainframe applications don’t have to be the electric third rail. Modernizing, even pieces of those mainframe workloads into modern frameworks on modern platforms, has huge payoffs. Developers can gain all the productivity benefits of modern tooling. Not to mention the scaling, security, and cost benefits. So, how do you get started modernizing applications off a mainframe? Join Rohit Kelapure, Consulting Practice Lead at Pivotal, as he shares lessons from projects with enterprises to move workloads off of mainframes. https://www.brighttalk.com/webcast/14891/352286/how-to-migrate-applic ations-off-a-mainframe
  • 3.
    We are ateam of consulting experts that jumpstart cloud journeys and quickly show measured wins. We use simple tools, start small and scale fast to redefine current systems and achieve cloud native speed, resiliency and economics.
  • 4.
    What We See •Old Application Logic - Poor Documentation • COBOL, PL/I, Assembler, JCL, Easytreve, IDMS, DB2, IMS and the list goes on ... • Tightly Coupled and Brittle Architecture • Expensive Licensing and Maintenance • Rehosting and Batch Offload Approaches • Genuine Desire to Modernize … But How?!
  • 6.
  • 7.
    Mainframe Migration Approaches OptionWhat it Means Rewrite Migrate the data off the mainframe and completely rewrite the business processes in modern frameworks. Change the source language of the original application, for example, from COBOL or Natural to Java or C#. Rehost “Lift and Shift” the applications and data from the mainframe to Unix or Windows with interface emulation or automatic code translation tools. ReInterface Keep the business logic on the mainframe in its present form, but unlock them by exposing via REST APIs and Web Services. Replace/Retire Replace the business processes with packaged applications such as SAP, PeopleSoft, and Oracle. This involves gap analysis and data conversion. Take an inventory of applications and retire those that no longer serve a purpose.
  • 8.
  • 9.
    Replatforming > AutomatedCode Translation Pivotal - Modern Systems Whitepaper http://bit.ly/pvtl-ms Modernization Journey of Mainframe
  • 10.
    COBOL on PivotalCloud Foundry with Microfocus Visual COBOL Brings first class OO support to COBOL language Transparent interop between Visual COBOL and legacy code and JVM or .NET languages Provide friendly APIs to legacy code Enables devs to use familiar tooling Proprietary Micro Focus technology Extract COBOL that represents useful business rules and use with minimal change. Create test suites for your business rules Rewrite/refactor the ones where you have the most change Credit-Service-1. 0.jar BusinessSyste m InteropLayer CreditServiceSpring boot Visual COBOL COBOL WebServer Request 1 Request 2 StatementContr oller StatementContr oller MonthlyStateme nt MonthlyStateme nt Run-Unit 1 Legacy COBOL Run-Unit 2 Legacy COBOL
  • 11.
    Continous Modernization Approaches NTTData Transfromation Mapping Process NTT Data Continous Modernization Process
  • 12.
    What We Believe •Automated Analysis to Understand • Find a Tops-Down Initiative • Slice Vertically, Modernize Incrementally • Automate Everything You Can • Build Skills by Pairing and Doing • Let Real Work Inform Strategy
  • 13.
    The Pivotal Approach BUILDPRODUCT CO-LOCATE YOUR PEOPLE AT PIVOTAL LABS; LEARN CLOUD NATIVE PRACTICES AS WE BUILD SOFTWARE TOGETHER MODERNIZE AND STREAMLINE INCREMENTALLY MODERNIZE SYSTEMS THAT UNDERPIN THE PRODUCT ● Find a Product Opportunity ● Use the Pivotal Way ○ Pairing, Balanced Teams, TDD, etc. ● Target a Cloud Native Platform, Use Modern Practices and OSS ● Frame a Tactical Plan; Use Tooling to Understand Current State ● Deliver Incremental Returns ○ Target a Vertical Slice ○ Modernize Modules That Underpin the Product Initiative
  • 14.
    Understand Current State CodeScanning and Automated Assessment Tooling Insight Derived from Current Application Architecture
  • 15.
    Sample Assessment Views Clone Metrics Naming SubSystem Call Graph Accurate code metrics are critical to understanding effort and cost Duplicate code can decrease effort and provide insights into the unintended design Source code naming conventions can inform all other views Sub-systems revealed through network analysis help to review incremental opportunities Reveals interdependencies and code structure Cloud anti-pattern What elements of the legacy code will pose problems moving to cloud Composition Function composition drives the understanding of fit-for-purpose solutions
  • 16.
  • 17.
  • 18.
    What we’ve learned ➔ Eventsare the language bridge to the business ➔ This method of identifying bounded contexts is a secret to decoupled architecture ➔ “Tell don’t ask”
  • 19.
    Completing the Journey IBM App Cache App Win?Microservices Event-driven Microservices AppAppApp AppAppApp AppAppApp
  • 20.
    Migrating zOS Batchto Distributed Spring Batch provides a physical implementation of the layers, components and technical services commonly found in robust systems used to address the creation batch applications, with the infrastructure and extensions to address very complex processing needs
  • 21.
    Why us? We havegreat experience.
  • 22.
    Systemization > Methodologyand Techniques • Portfolio level goals definition • Define Measures • Discuss timeline, staffing, risk, dependencies, etc. • Automated Data Collection • Research and MVP Definition • Architecture Design • Backlog Definition • One-week iterations • Hands-on code within 2-3 days • 1s to 10s of apps moved in 1s of weeks • Working code used to inform a cookbook of patterns Iterative Project Execution Boris Event Storming OKRs Slice Analysis Snap / SnapE Patterns Discovery & Framing Scoping Ongoing Delivery Cycle We deliver working code via replatformed apps and modernized slices that prove out patterns Value Stream We work on a fixed timeline and spin this wheel many times, using the techniques as necessary Fixed Timeline Engagement Supported by a Paired Team
  • 23.
    What Does itLook Like?
  • 24.
    The engine onthe mainframe was difficult to scale at short notice with rising transaction costs and dwindling mainframe SMEs. We built a distributed event driven engine with .NET core and Steeltoe on PAS using Linux stem cells. We overcame challenges by leveraging domain driven design, XP, & 15 factors cloud native development. We realized strong performance SLAs with blue-green deployments. We had a decades old monolith that processed 3rd party data was complex, lacked operational transparency and creaking under its own weight. Adding new reports required elaborate analysis and heavy regression testing resulting in long delivery cycles. We made the system flexible in a cloud environment with an event-driven architecture that allowed us to add new reports easily with enhanced operational visibility. We Transformed and So Can You!
  • 25.
    Why us? We HaveThe Platform
  • 26.
    Consistent Market ShiftTowards Open Source
  • 27.
    Push Toward ModernCloud Models Hardware IaaS Container Orchestrator Application Platform Serverless Functions Strategic Goal: Push as many workloads as technically feasible to the top of the platform hierarchy Higher flexibility, lower standards enforcement Lower development complexity and higher operational efficiency
  • 28.
    Think to theFuture: Choose the Right Tool for the Job Container Orchestrator Container Scheduling Primitives for Network, Routing, Logs & Metrics CONTAINER Developer Provides Tool Provides Application Platform APPLICATION Container Orchestrator Serverless Functions FUNCTION Application Platform IaaS Container Image & build L7 Network & Routing Logs, Metrics, Monitoring Services Marketplace Team, Quotas & Usage Function scheduling Function exec services
  • 29.
    “more than 70percent of new in-house applications will be developed on an open-source database management system, and 50 percent of existing commercial relational database management system instances will have been converted or will be in process of converting” Gartner Predicts That By 2020 ...
  • 30.
    Our Database Solutions OpenSource, Proven, and with 24x7 Worldwide Global Support Pivotal Postgres Flexible and Full Featured ORDBMS Pivotal Greenplum Postgres Based Analytics at Scale Pivotal MySQL For PCF Bosh Managed MySQL
  • 31.
    Mainframe Migration Success“Imperatives” 2. Phased Delivery Pivotal Approach Deliver Incremental Returns.Target a Vertical Slice. Modernize Modules That Underpin the Product Initiative. 1. Extract Value from existing deployments Unlock APIs and data using zOS Connect products and reduce cost with zip, zaap processors. Migrate easier online workloads first. Strangle the mainframe 3. Address Data and People Be Kind to the mainframers. Take the opportunity to change data models if it makes sense. Make the Mainframers champions of your cutover. 4. One size does not fit all Mainframe portfolio rationalization is key. Leverage different approaches based on business and technical outcomes desired. FOCUS!!
  • 32.
    Cost SavingsFaster ReleasesReduce RiskStable SoftwareGet to Scale Services is how we deliver outcomes Expert Guidance ___ Our experts will work with your team to show them how and transfer our best practices & methods. Cultural Transformation ___ Demonstrate new ways of working, processes and approaches in a hands-on environment. Personalized Engagement ___ Meet you where you are and work on real engagements Successful Delivery ___ We help you align work to support business initiatives and then deliver. Sustainability ___ We help you sustain success and advise you on how to scale.
  • 34.
    Outcomes Enabling your teamand strategy through pairing and working code. ● Existing Apps Running on PCF ● Measured, Specific ROI ● Sunset Current Licensing ● Established Patterns for Subsequent Migration Work ● New Operational Efficiencies ● Migration Strategy Refinements ● Skills Enablement Scope We pair with your people and work against a backlog that you prioritize. ● Agile Assessment ● Modernize Apps in Dev Pairs ● Establish Interop Patterns ● Build Automated Pipelines ● Transition Apps Quickly; Increase Velocity Over Time ● Cookbook of Patterns ● OTJ Skills Enablement TYPICAL FOCUS AREAS WHAT TO EXPECT Pivotal AppTx Take the Next Step SMALL TEAMS FIXED TIMELINE Use Real Work to Inform Your Strategy by Moving, Modernizing and Improving Existing Apps While Learning https://pivotal.io/application-transformation
  • 35.
    Transforming how theworld builds software © Copyright 2019 Pivotal Software, Inc. All rights Reserved.