Pulling the Plug on Your Mainframe
Automated Refactoring
Colorado’s Automated Child Support Enforcement System
1
2
Workshop Speakers
• Susie Gager, Colorado Child Support Services• Craig Carson, Colorado Office of Information Technology• Arne Gerhard, innoWake• Doug Howard, Moderator
3
Agenda
• Background
• Road to Solution
• Implementation
• Lessons Learned
4
Background – Child Support in Colorado
~150,000 cases
500,000+ parents and children
Over 5 M people in Colorado
Over $478 M collected in 2015 for families
5
Background - ACSES
1.5 MLines of Code 2,000
Screens
7,000Modules
59ADABAS
files
10,000Work files
System Users in counties700 64 70,000
Registered Website Users
400Batch Jobs
70Scheduled Networks
Embodies nearly 30 years of business rules and refinements and gets high marks from users.
34Interface Partners
6
Background – ACSES Interfaces
7
Background – Legacy System Challenges
Need for modernization:Mainframe environment difficult to incorporate new technologyInteroperability limitations: non-relational database, dependence on middleware (Entirex Broker)ADABAS/Natural developers and mainframe developers in general hard to find and hireSystem needs to be modernized to meet expectations of businessTechnical obsolescenceCost of the mainframe environment expected to rise significantly
8
Road To Solution
Option 1: Replace• “Rip and Replace”-complete new system from ground
up: high risk, high cost, long duration
Option 2: Build parallel application• Integrate two environments and incrementally
modernize: technically challenging, either sync two databases or implement a SOA message architecture across two platforms
Option3: Migrate first• Migrate system “as is” away from mainframe to new
environment first, then modernize incrementally in new environment.
9
Migrate First: Advantages
Automated Conversion• Eliminates human error - If we fix a problem it’s fixed
throughout the system
One-to-One Conversion • New system operates just like the old - No user
training required, screens and navigation virtually the same
• Users will know immediately if something is not working correctly
• “If its broke in the old system it will be broken in the new.”
Retain the business knowledge of the technical staff• Low risk approach
10
Migrate First: Concerns
MaintainabilityIf 100% generated code, what will the resulting java look like? Will it be maintainable?
CorrectnessIf some portion is “hand coded” how will we find all the bugs in semi-automated solutions?
Vendor Lock-InWill we leave SAG only to become dependent upon another vendor’s runtime?
PerformanceWill it perform as well as mainframe to user’s satisfaction?
Developer skillsWill our existing developers be able to maintain the new code?
Development process changesCulture change: new IDE cultureinnoWake brought to the table from the start: natclipse, lcm, meeclipse
11
User Requirements / Constraints
End User Concerns• We met in several forums with end user managers
early on to get their input on our modernization approach
• Based on past experience they wanted a strong voice in determining whether the new system was truly ready for implementation
Outcomes• They (strongly) requested that there be no “big bang”
overnight implementation• They (strongly) requested that we implement the new
system with a traditional “pilot” parallel approach, such that they could use the new system side by side with the old to ensure it would work correctly.
12
How Do We Implement And Meet User Demand?
Option 1: Synchronization• Parallel operation meant synchronizing databases, a
technically challenging project in and of itself
Option 2: Database sharing (databridge)• Compromise: Implement the online system in parallel
using the innoWake databridge with the existing ADABAS. Then convert from ADABAS to Oracle as a second step.
• This approach allowed the online system to be used in a production setting alongside the old system while giving us total fall back to the old system in the event of a problem.
13
Migration Project Scope
Mainframe Linux
Natural
Adabas
JCL
Java
Oracle
(Interpreted) JCL
Natural Editor Java IDE
14
Project Schedule
2011 2012 2013
Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4
ProductionTestDevelopment
IDE
ICB
Development
Integration
Pre-UAT
UAT
Pilot
Statewide
Support
Refactoring
Data C
onversion
System Acceptance
15
Pilot Phase
Pilot phase from December 2012 to April 2013
Goal:• Reduce project risk• Ensure end user acceptance
Challenges:• Parallel usage of the existing 3270 and the migrated Java
application• Keeping data in sync between the two systems
Approaches:• Standard Deployment• Data Synchronization• Data Bridge (Database sharing)
16
Pilot Phase - Databridge
• Pilot county 1 has successfully tested the new runtime• Pilot counties 1 + 2 uses the new ACSES application• Continue for additional pilot counties and remainder of state
Unix
z/OSNatural Adabas
County 1 (Online)
Clients
Java / Web Oracle
Runtime Database
County 3-64 (online)
Batch
County 2 (Online)
17
Statewide Rollout - Databridge
• Migrate data from ADABAS to Oracle• All online and batch processing will run on the migrated
application
Unix
County 1-64 (Online)
Clients
Java / Web Oracle
Runtime Database
BatchExtract, Transform & Load DB
Decommission Mainframe ACSES (Natural and Adabas)
z/OSNatural ADABAS
18
Results
Schedule and budget• Ahead of schedule until the last month of the project• Project delivered under budget
Performance• Performance as good as or better than the mainframe
User impact / acceptance• Parallel pilot well received by county users• Smooth conversion• Virtually no user or client impact
19
Keys To Success
Teamwork and commitment• Teamwork and commitment of the State and state staff to the
project was an essential key to success• Both sides being willing to put in the extra effort when necessary
to keep the project moving according to plan• Excellent collaboration when the inevitable problems surfaced• Awesome unified team working across the pond, focused on
successImplementation approach
• Test, test and more testing• Parallel pilot made possible with databridge (transitioned users,
resolved connectivity/security/browser issues ahead of data conversion)
20
Modernization – The Big Picture
21
Demo
• Mainframe The old system
• Web Based The same thing but in the web
• Modernized The better system
22
Demo
23
Demo
24
Demo
25
Demo
26
Demo
27
Demo
28
Demo
29
Demo
30
Lessons Learned
• Teamwork/Partnership• Testing • Infrastructure support• Pilot and the Databridge• Program area support• Daily stand-ups (visible cards)• Implementation preparedness
31
Lessons Learned
• Questions?
32
Lessons Learned
• Contact Information• Craig Carson – [email protected]• Susie Gager – [email protected]• Arne Gerhard - [email protected]
33
Post Session Housekeeping
• RATE this session in the conference app• To download the conference app search for APHSA Events
• VISIT the vendors in the Exhibit Hall during Breakfast and the Networking Breaks to learn more about the solutions presented throughout the day.
• DONATE to Childhelp – the ISM Technology for a Cause campaign to raise $10,000 to help stop child abuse in Arizona and across the country.
34
See you again soon
THANKS FORCOMING