As technology changes, a company’s management often needs a way to refresh the information infrastructure without sacrificing the value of their applications. Industrial Steel Treating Company (IST) in Jackson, Michigan found that the most productive path to modernizing IST custom built IBM i production application was to migrate it to Microsoft .NET. It chose ASNA Monarch to perform the IST migration and the results couldn’t be better.
By completing the migration with ASNA Monarch, IST increased the usability of the application with a modern, browser-based Graphical User Interface (GUI); added new functionality unavailable with native RPG: and reduced costs by moving from an IBM i server to Microsoft Windows Server.
The Anatomy of a Decision: Rewrite or Migrate?
IST’s custom-built Shop Floor application had already had a long and successful track-record before the ASNA Monarch migration. Originally written in RPG II back in the late 1980s for the IBM System/36, the application evolved significantly over time to meet IST’s unique business requirements.
So when management started looking at modernizing the application the goal was to get the full functionality of IST legacy RPG code duplicated in a modern.NET environment. That’s why they chose to migrate using ASNA Monarch.
To understand the complexity of the IST decision process you need to know something of the value of their IST Shop Floor system.
Strengthening Steel through Treatment
Steel emerges from the commercial mill with specific metallurgical qualities of hardness, ductility, and tensile strength. But in order to meet the requirements of certain modern parts manufacturing, these qualities may need to be altered through a variety of annealing and tempering processes. These technical metallurgical requirements are scientifically exacting, and to be industry certified the processes must be thoroughly documented.
A Highly Evolved Information System
The IST Shop Floor system maintains all the necessary information for scheduling, tracking and monitoring orders through the IST advanced steel treatment operation. Every IST order is entered into the Shop Floor system and the status of each order is updated as the customer’s materials are moved through the scheduled production stages.
Orders are identified with bar code tickets, and employees sign-on and sign-off as each process is completed. Data-logging from the primary processing equipment is fed directly into the Shop Floor application including temperatures, atmosphere control, process times, and quench temperatures. These measurements and status points can be readily recalled for every production lot and viewable at each production station.
It’s critical documentation of the processes of steel treatment that IST needs for maintaining IST quality and certification. Finally when the order is completed, acknowledgement messages are emailed to the customer, and ASN/EDI (Advanced Ship Notice, via EDI) information is automatically sent to designated recipients.
IST’s system is both incredibly intricate and minutely scalable: It enables IST to track and monitor everything from entire production orders, to unique prototypes or individual samples. In fact, the scope and durability of the Shop Floor application has made it integral to the success of IST. It’s one of the key automation elements that have helped the organization expand to be one of the most modern heat treat facilities currently in operation in the U.S. In other words, IST’s Shop Floor information system is crucial to maintaining the company’s competitive edge.
IST needed an upgrade path for its application that would deliver the maximum functionality with the least disruption to IST overall operation. The IST team determined the best way to do that was by migrating the app to another platform. So for IST the migration issue was not “Should we migrate?” but “What is the best long-term option for IST?” Should they re-write the code to C#, or should they seek some means of moving the RPG code itself to Windows? For IST, the critical trade-off was “How much would a rewrite cost, versus how much functionality might be lost in the process
There were four tactical elements that IST needed to be addressed:
- RPG - The underlying source code was written in the IBM proprietary language of RPG.
- DB2/400 – The database was in the IBM DB2/400 format.
- No Downtime – The Shop Floor system could not be disrupted. It was a critical application running 7 days a week, 24 hours a day.
- Training – Employees, who were accustomed to the old-style 5250 green-screen terminals with fixed function keyboards, would need to be retrained to use a modern GUI on a Web browser.
When IST considered all of these elements it decided to build IST migration strategy around ASNA’s Monarch and ASNA Visual RPG.
What is ASNA Monarch?
ASNA Monarch is an application suite that was specifically designed to migrate IBM i RPG applications to Microsoft .NET. It transforms ILE RPG, RPG/400, and CL into either Microsoft C# or ASNA Visual RPG.
What is ASNA Visual RPG (AVR) and why did IST choose it?
AVR is a modern implementation of the familiar RPG syntax. It’s easily learned by RPG programmers, because it bears a striking resemblance to IBM RPG. Source code in AVR is maintained and/or enhanced using the MS Visual Studio.NET IDE. In IST’s migration, they chose AVR as the target source language because it was easy for IST RPG programmers to transition their skills. But ASNA Monarch can also migrate IBM RPG and CL to the Microsoft’s C# source language.
Building the Migration Game Plan
IST began the migration process using ASNA’s proven Monarch methodology.
After an application is chosen for migration, Monarch copies the associated pieces of the application into a separate .NET application called the ASNA Monarch Cocoon. Monarch Cocoon provides the migration console for Monarch.
Monarch Cocoon quickly analyzes the specified libraries of source code, program objects, and data areas, etc. to discover program dependencies and develop an analysis for migration planning. The information the Cocoon provides includes:
- Program call graph – to spot program object dependencies on other OS/400 program objects
- Cross-referenced object usage – to identify what programs use what objects
- Host RPG source view – to take a quick look at the underlying host source code
- Density factors – providing the metrics on the “migrate-ability” of any given program
- Notes display – a “diary” area to record notes about each object discovered
Using the information the Monarch Cocoon provides, IST developed IST’s own optimal game plan for migration, selecting the application subsystems and files that were to be automatically migrated to AVR and identifying modules where re-writing directly in .NET might be a better solution. In Monarch parlance, a game plan is effectively a migration unit. It is used to specify the migration “chunks” of an application.
ASNA Migration Support
In the planning stages it became clear there was a key technical resource limitation. The IST Shop Floor application had been running for more than 20 years, and consisted of thousands of lines of code, with nested modules calling more nested modules, and with hundreds of different code styles from different programmers.
When IST looked at the analysis performed by the Monarch Cocoon, it became obvious that the scope of the migration was beyond the available time of IST’s lone IT employee. That’s where ASNA support filled the bill.
ASNA’s Services Team members are experts with the IBM i and Microsoft .NET platforms. They have helped hundreds of companies successfully bridge the gap between the IBM i and .NET. So when IST addressed the migration timeline problem directly with ASNA’s Services Team ASNA stepped up to the challenge.
According to Jeff Thomas, IST’s Information Systems Manager, “We provided ASNA with current RPG Code and data files; they migrated and did minimal testing. Then we took it and tested and trained and went live.”
RPG to AVR
Each selected element was added to the Monarch game plan’s task list, and tracked as it was transformed into AVR or .NET modules. Monarch provides proprietary “migration agents” that systematically convert each important part of the program or application. This includes Menus, CL, Display Files, Printer Files, Message Files and Data Areas. Monarch even implements the program message queue. As each task is completed, IST status is updated in the Cocoon providing an on-going measurement of how much was left to be accomplished.
When the entire source libraries of the Shop Floor application were ready, the actual migration code compilation process was activated, quickly turning the aging Shop Floor RPG application into a new, modern .NET application.
DB2/400 to MS SQL Database Migration
Converting source code was an important first goal accomplished by ASNA Monarch. But IST also needed to get existing Shop Floor data from the IBM i DB2/400 database to the Microsoft SQL Server database on the Windows server. That’s where ASNA’s experience in IBM i migration was instrumental.
ASNA Monarch uses a unique technology called ASNA DataGate. ASNA DataGate provides the database transport with record-level database access for the IBM i and MS SQL Server platforms. In other non-ASNA migration scenarios a normal “roll-out” of a database conversion would require halting the production system, and then converting and copying the data to Microsoft SQL Server. However, the 24 hours a day, 7 days a week nature of the IST Shop Floor operation required that both the MS SQL and DB2/400 database be kept in synchronization until the final migration was completed.
Fortunately, the cross-platform capability of ASNA DataGate allows easy re-targeting of an application to either IBM DB2/400 or MS SQL without making major application changes. This powerful capability enabled the IST Shop Floor migration to maintain both database systems until the final cutoff was completed. The results? There was no need for application downtime while the migration process was being accomplished.
Re-training Users to .NET
The final piece of the Monarch migration game plan was to re-train employees – some of whom who had been using fixed-function terminals since the Shop Floor application was first introduced in the late 1980s – to the newer .NET browser interface.
According to Jeff Thomas, “The biggest challenge we had was training the older employees to use a browser as well as a mouse to navigate the system. Everything else was a breeze.”
But one of the advantages of the Monarch migration is the excellent emulation of green-screen functions, in addition to the tight control and customization capabilities of the interface. All function keys are translated transparently from the traditional IBM 5250 data stream to the MS.NET Active Server Pages. And, with the staged steps of the Monarch game plan – along with the ability to keep the IBM i and Windows MS SQL databases in sync – IST could methodically train IST workforce while still sustaining the 24X7 work schedule of the facility.
Final Migration Benefits
So how did the IST’s migration with ASNA Monarch go?
According to Jeff Thomas, the entire migration process, from start to finish, took approximately four months to complete. This included planning for the migration, building the ASNA Cocoon, automatically analyzing the RPG and CL code, creating a game plan for the migration, converting the source code to AVR, implementing the DataGate, running the actual conversion, testing the resulting application, and re-training a workforce of about 40 employees to the .NET browser interface.
And the benefits?
Thomas says “We have been able to improve mistake proofing by providing tailored processing instructions and including images of items being processed. And employees have embraced the new browser-based version of the system.”
During the testing process, Thomas also began adding new features to the .NET display using Microsoft .NET modules that enhanced the application beyond the migration.
In the meantime, Thomas estimates that moving off the IBM i will save the company between 10 and 15 thousand dollars a year, while at the same time offering the company new opportunities to continue evolving the Shop Floor system with new features.
So how would IST rate ASNA’s Monarch and ASNA’s service?
“We have been a long time Customer of ASNA,” says Jeff Thomas. “The support they provide is awesome!”