Industrial Steel Treating (IST) discovers that updating an information infrastructure doesn't mean sacrificing value.
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's custom-built IBM i production application was to migrate it to Microsoft .NET. It chose ASNA Monarch to perform the application 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 the management team 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 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 as each process is started 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 Advanced Ship Notice via EDI (ASN/EDI) information is automatically sent to designated recipients.
IST's system is incredibly intricate and very detailed: 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 has 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's 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 tradeoff 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 address:
- RPG—The underlying source code was written in the IBM RPG language.
- 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.
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, data areas, etc. to discover program dependencies and develop an analysis for migration planning. The information the Cocoon provides includes:
- Program call graph—Spots program object dependencies on other OS/400 program objects
- Cross-referenced object usage—Identifies what programs use what objects
- Host RPG source view—Takes a quick look at the underlying host source code
- Density factors—Provides the metrics on the "migrate-ability" of any given program
- Notes display—Records notes (a "diary" area) 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's 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. It 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 ongoing measurement of how much is 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.
Database Migration: DB2/400 to MS SQL
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 non-ASNA migration scenarios, a normal "roll-out" of a database conversion requires 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.
Retraining Users to .NET
The final piece of the Monarch migration game plan was to retrain 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 datastream 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 its 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 retraining a workforce of about 40 employees to the .NET browser interface.
And the benefits?
Jeff Thomas says, "We have been able to improve our production capabilities 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, Jeff Thomas also began adding new features to the .NET display using Microsoft .NET modules that enhanced the application beyond the migration.
In the meantime, Jeff Thomas estimates that moving off the IBM i will save the company $10,000 to $15,000 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!"
ASNA provides comprehensive and flexible solutions for modernizing IBM i applications to the Microsoft .NET platform. ASNA enables companies to integrate and extend their solutions to .NET, the Web, and beyond while preserving investments in IT and human resources. ASNA solutions are distributed worldwide and used by more than a million end users.
ASNA is a gold level partner of Microsoft's Partner Network, a Microsoft Visual Studio Industry Partner, and an Advanced Tier Member of IBM's PartnerWorld for Developers. ASNA is also a gold level partner of Microsoft's Platform Modernization Alliance.