Extend the life of RPG applications or migrate to a new language and platform, but first restructure your legacy RPG programs into a modern architecture.
Editor's Note: The following is taken from the white paper "A Visual Guide to Automated MVC Reengineering for RPG Applications," available for download free from the MC White Paper Center.
This paper has the following sections:
- Three steps to new and improved systems
- Why reengineer?
- Bad practices of reengineering—what not to do
- Best practices—two good options
- Automated restructuring and modernization of monolithic legacy RPG code (Overview, Restructuring RPG—the details, and Converting Restructured RPG to Another Language)
While this paper explains automated reengineering in the context of Databorough products, it also presents an essential strategy for IT organizations with legacy RPG applications. By first restructuring legacy RPG programs into a modern architecture, new capabilities emerge to
- Extend the life of RPG applications, or
- Migrate to a new language and platform
Three steps (or maybe just two) to new and improved systems:
Figure 1. (Click images to enlarge.)
Extract Design–The first step in any reengineering project is to recover as much intelligence from the existing application as possible. X-Analysis has an amazing amount of information it recovers about applications. For example, X-Analysis generates the following numbers for one large-scale ERP application:
Restructure RPG–Restructuring monolithic RPG code into an architecture of OO/MVC/REST brings numerous benefits, both for ongoing maintenance, if the system is to be retained, and for complete reengineering if migrating to another language, such as Java or C#.
Using Databorough's X-Modernize tool, legacy, monolithic RPG programs can be restructured into a modern architecture. Such a restructuring results in the business logic residing in exportable RPGLE/Free procedures. These programs represent the model portion of the architecture. X-Modernize also provides the metadata for you to construct your own view and controller components, which may be in RPG, Java, or C# for the controller layer and DDS, JSF, or .Net for the view layer.
Convert Language (optional) – For organizations that have made a strategic decision to migrate to a new language or platform, Databorough's X-Migrate product (formerly X-Redo) completes the transition from restructured RPG into another language, such as Java or C#.
An important benefit of using the restructured RPG for the language conversion is that it facilitates bridging the knowledge gap between the RPG application and the new language application. The new language application retains the same essential components as the restructured RPG application, thus enabling both RPG developers and new language developers to easily compare code results.
X-Migrate also provides the extra step of creating the view and controller components in the target languages Java, C#, JSF, .Net.
Want to learn more? For the full explanation of this approach to modernization, download the white paper "A Visual Guide to Automated MVC Reengineering for RPG Applications," available free from the MC White Paper Center.
as/400, os/400, iseries, system i, i5/os, ibm i, power systems, 6.1, 7.1, V7,