case study using asna monarch to pass an rpg legacy on to the c# generation presented by: roger...
TRANSCRIPT
Case Study
Using ASNA Monarch to pass an
RPG legacy on to the C# generation
Presented by:Roger Pence
ASNA Education Director
Copyright © 2011 by ASNA. 2
The company
Copyright © 2011 by ASNA. 3
Founded in 1933, Canal Barge Company (CBC) is an independent marine transportation company with its main
office in New Orleans
CBC manages the movement of cargo (including fuel, rocks, and coal) to virtually every part of the world. One the company’s specialties is providing dedicated logistics in moving cargo on
the waterway between the Gulf Coast and Mid-America.
The business has been managed with a large RPG application hosted on the IBM i since the AS/400’s introduction in 1988
(and on the S/38 before that)
www.canalbarge.com
Copyright © 2011 by ASNA. 4
Amazing amounts of cargo flow down the Mississippi River
Copyright © 2011 by ASNA. 5
CBC’s RPG application
• CBC’s RPG application has been enhanced and maintained by an internal RPG team for the life of the application
• The application has hundreds of thousands of lines of code comprised of RPG, DDS, and CL
• In addition to this core application (for which CBC has all of the source code) CBC also has core enterprise dependencies on several proprietary, purchased applications for which source is not available
Copyright © 2011 by ASNA. 6
The challenge:Persist the legacy RPG application
in the absence of its RPG team
Copyright © 2011 by ASNA. 7
CBC’s RPG challenge
• Its RPG team has served CBC well for many years. But, alas, every member of this team is approaching retirement age. Literally.
• The day is rapidly approaching when CBC won’t have an RPG team
• The company needs to be able to guarantee that the application persists without its RPG team
Copyright © 2011 by ASNA. 8
Said the RPG team to the C# team, “Someday this will all be
yours!”
Copyright © 2011 by ASNA. 9
Alternatives rejected
Rewrite the application
• The CBC application has hundreds of thousands of lines of code. It would have taken too long and cost too much to rewrite it from the ground up
Purchase a canned application
• The customization a canned package would need to meet the unique business needs of CBC would nearly rival the requirements of a full application rewrite
Copyright © 2011 by ASNA. 10
Migrating the RPG application to another environment
• Having ruled out an application rewrite and canned packages, CBC turned its attention to the possibility of migrating its RPG application to another platform
• After lots of investigation, CBC chose ASNA Monarch for a migration to C# and the .NET platform– With Monarch, the RPG application, and its CL, can be
migrated to C# (or ASNA Visual RPG)– Monarch has a built-in 5250 emulator so not all displays
would need to be migrated– Monarch has a US-based services team with a proven
history of successful migrations to .NET
Copyright © 2011 by ASNA. 11
The solution:
Copyright © 2011 by ASNA. 12
Why ASNA?
• ASNA has been doing IBM i application modernization for 17 years
• Our migration technologies are mature and tested—and we can output either ASNA Visual RPG or MS C#
• We have a highly-skilled migration team in San Antonio, Texas
• Our modernization products scale from ASNA Wings, an IBM Open Access for RPG-based product, all the way to complete application migration with ASNA Monarch
What is ASNA Monarch?
Application modernization platform that migrates IBM i RPG applications to .NET
• Interactive applications migrate as ASP.NET browser-based applications running on a Microsoft Web server
• Non-interactive programs can be migrated as console applications or windows service programs
• Monarch does not affect the original application in any way; only uses it to analyze application and gather source
• Creates a .NET version of the application and translates legacy code to either Visual RPG for .NET or MS C# syntax
• The migrated app can be further enhanced and modernized with the .NET development environment, Visual Studio, and .NET Framework
• For more details on ASNA Monarch, please visit http://www.asna.com/monarch.
Copyright © 2011 by ASNA. 14
Multiple DB support
• Monarch is able to migrate RPG logic to .NET, but leave the database on the IBM i platform– But, if needed, also able to
later move the DB to MS SQL Server
– When the Monarch application connects to MS SQL Server, DataGate translates record level access idiom to SQL transparently
Copyright © 2011 by ASNA. 15
Familiar idioms
• Many RPG idioms are persisted in Monarch’s C#– Eg. indicators, data structures, externally described files,
and record level access—so program logic doesn’t need to change
• Applications for which no source code exist are rendered nicely in ASNA’s built-in 5250 emulator– CBC will ultimately replace IBM’s IBM i Access with
ASNA’s built-in emulator for all users. Display files or applications not migrated are displayed nicely in that emulator.
Copyright © 2011 by ASNA. 16
Monarch translation agents
• Monarch provides a number of translation agents that translate IBM i resources into .NET resources
Copyright © 2011 by ASNA. 17
Custom browser-based menu created for CBC
To provide a cohesiveuser experience, ASNAcreated a custom browser-based fly-outmenu for CBC.
It is driven by the samedata used by their green-screen menu.
Copyright © 2011 by ASNA. 18
CBC screen before migration
This is one ofCBC originalgreen-screendisplays.
Copyright © 2011 by ASNA. 19
CBC screen with ASNA emulator
To get a sense of the display fidelity Monarch provides, here is the original green-screendisplay shown in the ASNA 5250 emulator. Again, notethe fidelity with the migrated program as shown on the previous page.
This is how the greenscreen looks when presentedwith the ASNA emulator.
Copyright © 2011 by ASNA. 20
CBC screen after migration
This is the migratedversion of the previousscreen’s program. This is now a C# applicationhosted in a browser.
All functionkeys operable
Fly-out menualways available
Monarch displays areusually more sexy than this!For CBC, the screens were purposely toned-down to maintain good fidelity with those programs that need to be rendered in the ASNA emulator.
Copyright © 2011 by ASNA. 21
Persisting the legacy RPG asset
• Says Gerry Thompson, a CBC System Analyst
“We investigated application migration alternatives very closely. The ASNA Monarch product was the best fit for us to achieve our desired goal of translating our legacy RPG asset into C# for the next generation of Canal Barge .NET programmers to maintain and enhance.
“Monarch delivers a faithful C# rendering of our RPG code—down to indicators and record-level access. We had a very good time introducing our C# team to the ‘uniqueness’ of RPG.
“But at the end of the day Monarch does give us C#—and that’s what we need for the future.”
Copyright © 2011 by ASNA. 22
• Says Marc LaFleur, Senior Software Architect and Developer at Canal Barge:
“When we’re done with our migration efforts, the result will be a substantial application base with proven code that does the unique things that CBC needs—in a fraction of the time it would have taken to rewrite.
“The C# team will also be able to fortify the migrated legacy application with new C# applications that interoperate well and have a consistent look and feel.”
To infinity… and beyond!
Copyright © 2011 by ASNA. 23
ASNA’s secret ingredient:Teamwork!
Copyright © 2011 by ASNA. 24
Using an agile approach
• The San Antonio, TX-based ASNA services team is performing the actual application migration
• But the total migration project is very much a team effort
• The two teams use a highly agile, iterative approach to make the project successful– Meet twice a week with GoToMeeting to review progress
and issues– Reset schedules and expectations as necessary– All major players are kept in a very short feedback loop – Beyond success, the other major goal is: No unpleasant
surprises!
Copyright © 2011 by ASNA. 25
Working as a team
• Says Tim Daniels, ASNA Migrations Services Manager, at ASNA:
“During a large migration such as the CBC project we very quickly establish a teammate relationship—for the project to be successful, they need lots from us and we need lots from them.
“ASNA’s experience with application migration coupled with CBC’s knowledge of their application makes for a very forceful migration team. Working on this project with them makes it fun to come to work every morning!”
Copyright © 2011 by ASNA. 26
Working together as a team is critical to a migration project’s success
• Says Tim Daniels, ASNA Migrations Services Manager, at ASNA:
“During a large migration such as the CBC project we very quickly establish a teammate relationship—for the project to be successful, they need lots from us and we need lots from them.
“ASNA’s experience with application migration coupled with CBC’s knowledge of their application makes for a very forceful migration team. Working on this project with them makes it fun to come to work every morning!”
Copyright © 2011 by ASNA. 27
Looking well into the future
• CBC currently has no immediate plans to migrate entirely off of the IBM i platform
• But Monarch provides built-in SQL Server support, so adapting the migrated to SQL Server is a long-range possibility should the enterprise need arise to move the application 100% to .NET
Copyright © 2011 by ASNA. 28
A great team!
• For CBC, ASNA Monarch is making the need to give new life to an old application possible
• The old RPG application that has served Canal Barge so well for so long will live out a long and happy life in its new identify as a C# application in .NET
• When the project is complete, the application will be under the direct care and feeding of the C# team
• And… the RPG team will be enjoying cold beverages on the beach!
Copyright © 2011 by ASNA. 29
Future home of CBC’s RPG team
Copyright © 2011 by ASNA.30
Thank you very much for your time!
For further information please contact
ASNA at [email protected] more about ASNA
http://www.asna.com