Modernizing for a GUI doesn't mean you have to give up the power of RPG.
Fueled by the talent of more than a dozen IBM RPG programmers, and an overall staff of 50, INFOCON is an IBM Business Partner with a vision of efficiency and service for its clients. But modernizing to a fully functional, user-friendly graphical user interface (GUI) has been a challenge.
That is, until ASNA Wings.
INFOCON's Quality Software Services
The INFOCON Corporation has been supplying Pennsylvania with software solutions since 1976. It uses the midrange technologies of IBM servers to provide excellent best-of-class software and services to county and municipal governments as well as commercial businesses. Its Administrative, Judicial, and Tax Management systems have proven, over the years, to provide an unparalleled quality of service to counties, school districts, and municipal governments throughout the Keystone State.
Re-engineering Vs. Modernization
But responding to customer requirements for a GUI using past RPG modernization and re-engineering software tools has not been easy.
"We've tried nearly everything that's out there," said Regis Bodenschatz, president of INFOCON. "We were very early to follow the path of application re-engineering using a number of new languages, as well as a wide variety of modernization tools."
These past attempts included Synon/2E, IBM VisualAge RPG, VB.NET, a long list of third-party developer utilities, screen-scraper technologies, and other RPG modernization tools. Only a few delivered the level of power and quality of screen presentation that INFOCON customers required. "Some of these tools proved to be very solid products," Bodenschatz said. "But many required completely re-engineering our primary products, and that's a long and difficult task."
Particularly daunting is maintaining two versions of the same application: one for GUI and one for green-screen. Such "dual-maintenance" change management processes can prove to be a nightmare.
But why have two versions of the same program?
The Green-Screen User Conundrum
"We have a lot of users who still prefer the green-screen." Bodenschatz said "They prefer the 'heads-down' keying efficiencies of the green-screens."
But in a world in which new customers see green-screen as "old technology," Bodenschatz wanted a strategy that could modernize the front-end, while sustaining the core of RPG source.
INFOCON's major governmental applications contain thousands of display file formats (DDS specifications) that are highly customized to achieve ease-of-use benefits around the green-screen interface. So it's not a simple task to simply build a front-end GUI.
That's the primary problem associated with nearly all GUI modernization implementations: How do you make each GUI screen as functional as the original green-screen design? Moreover, re-engineering tried-and-true RPG programs within a new programming development environment is resource-intensive.
"We've spent a lot on re-development and re-engineering in the past," Bodenschatz said. But the results were not what they needed to be. Re-engineering was expensive, time-consuming, and ultimately not up to their product standards.
ASNA Wings: A New Approach to Modernizing Applications
With these challenges in mind, Bodenschatz was intrigued by the ASNA Wings modernizing tool. ASNA Wings promises a way to quickly migrate the GUI front-end of the applications without touching the back-end of the RPG.
ASNA Wings is a true RPG application modernization tool. It's not a screen-scraper but a display-screen source-code converter, translating RPG DDS to .NET ASPX to provide a fully functional GUI Web interface formatted with Cascading Style Sheets (CSS). It accomplishes this with a single, one-time process. All the RPG logic remains the same and continues to run on the IBM i platform, but what the user sees on a Web browser is a new, fully functional GUI.
The conversion of DSPFM to .ASPX is a quick, two-step process: First, the programmer inserts one RPG F-spec keyword called "Handler" into the RPG source code, which activates the IBM Rational Open Access RPG Edition (OAR). (OAR is an inexpensive licensed program enhancement to RPG that permits an ILE RPG program to access new devices and resources that are not directly supported by RPG.) In the second step, the programmer selects the display file to be converted, and ASNA Wings does the rest. It copies the DDS source code from the IBM i into a separate area and then translates the code into .NET ASPX. This process takes only seconds.
Of course, with RPG's long history, and so many different styles of display file formats created over the years, there may be further minor customization of the DDS required in the conversion process. But the point is that ASNA Wings provides you with the tool that performs 99 percent of the heavy lifting. It streamlines the conversion process, short-cutting what was previously a highly detailed re-engineering task.
When the RPG source code is recompiled, the OAR redirects the display data stream to the new ASPX Web display files.
Now, when a user accesses the compiled object of the RPG application, the display is presented as a fully functional GUI in a Web browser. No RPG logic statements are ever changed, and all back-end code remains completely functional.
Best of all, using ASNA Wings, the programmer can conditionally compile the RPG source to create two program objects: one that is for green-screen and one that is for GUI. In this way, there's no need to maintain two separate RPG source members to support two different display formats.
How Fast Is the ASNA Wings Process?
INFOCON instituted a testing process to determine how quickly it might be able to convert a complete application using ASNA Wings. The application included over 200 DDS display formats and numerous CALLs to subprograms. They completed this conversion process in under a week, inserting the Handler keyword, selecting the source members, and recompiling the entire application's base source members. This delivered a complete application object with a functional GUI, based in .NET ASPX running in a Web browser.
Bodenschatz was so impressed with the speed of this conversion that he's instructed his team to go the next step: customizing the .NET ASPX display formats to their company product standards around a consistent CSS.
Using Microsoft's Visual Studio IDE, Bodenschatz's team is now quickly pushing forward with the customization using an industry-standard IDE, fine-tuning the ASPX forms, and tweaking the CSS. In the end, INFOCON will have both the green-screen presentation layer and a fully functional Web-based GUI, each running from the same RPG source. It's exactly what INFOCON strategy demanded.
Modernizing Beyond RPG
Advantages for INFOCON
This overall ASNA Wings modernization strategy represents a number of unique advantages for INFOCON:
- ASNA Wings converts the DDS display formats into a fully functional Web-based GUI in the industry standard of .NET ASPX forms.
- The resulting presentation layer is formatted with the state-of-the-Web CSS that can be centralized for consistent look-and-feel of the GUI.
- Customization of the presentation layer can be managed with Microsoft's Visual Studio utilizing C#, VB.NET, or ASNA's Visual RPG.NET.
- The process maintains good change-management practices that are controllable and highly scalable, without a lot of maintenance overhead.
- One RPG source member can perform double duty for both the green-screen and the GUI objects by conditionally compiling the RPG source.
- By using IBM Rational Open Access RPG Edition (OAR), the process falls squarely within IBM's RPG modernization support profile. It's not dependent upon some third-party "code access" interface that might restrict the application's future functionality. It creates a well-documented data stream that is in compliance with IBM Rational's support.
- If desired, ASNA Wings offers the organization a future transitional path for a complete migration off the IBM i through ASNA Monarch migration suite. That's because everything that ASNA Wings creates is fully reusable for ASNA Monarch.
ASNA at INFOCON: A Legacy of Respect
So what is INFOCON's opinion of ASNA and its newest ASNA Wings product?
INFOCON was already familiar with ASNA's product line from firsthand experience with ASNA Monarch and ASNA Visual RPG: Both were excellent tools in Bodenschatz's opinion.
"We've used ASNA products in the past and found them to be a good partner." Bodenschatz says. "Their support is great, and their products work. In fact, when we've seen an opportunity to make something better in ASNA Wings, they've been very receptive and responsive. They're even bringing some of those ideas out in the next release."
But what does it mean to INFOCON's long-range strategies with the IBM i? Does this mean they are considering migrating off the IBM i?
No, says Bodenschatz. "We've no plans to move off the IBM i. We have been on IBM's midrange platforms since the beginning. We really appreciate the integrated functionality of the IBM i. It's IBM's best platform for business." He is a true believer in the IBM i. Moving off the platform was never INFOCON's goal.
And what about RPG's future with INFOCON?
"Our development team consists of RPG programmers," Bodenschatz stressed. "We have other skills, but we still feel that—for business applications—RPG is superior for our needs. And we intend to maintain our expertise in this area."
Re-imagination: The Final Strategy for Modernization
INFOCON has stepped through nearly every RPG GUI modernization tool in the market. They've modernized, re-engineered, rebuilt, and re-evaluated the final outcome at each tool along the way. And they were not wholly satisfied. In the end, they decided that, for their products, modernization shouldn't mean re-inventing the application but instead re-examining the problems of RPG and re-imagining the modernization solution.
They wanted to keep their investment in RPG logic. They wanted to maintain a good change-management process by maintaining only one RPG source member. But they also wanted a fully realized, customizable GUI that could impress their clients and satisfy the needs of GUI-centric customer expectations.
In other words, they wanted it both ways: GUI and green-screen, all within an IBM product support profile on the IBM i.
INFOCON is meeting the aggressive goals of this re-imagined strategy. And they're using ASNA Wings to do it.