ARCAD Generates APIs From 5250 Screens
July 22, 2020 Alex Woodie
Many IBM i shops want to modernize their 5250 applications by developing REST-based Web services and API extensions, but they face difficulties getting started. These organizations may want to check out ARCAD Software’s latest offering, ARCAD API, which takes much of the pain and complexity out of the API generation process.
REST-based APIs have become a standard method for exposing data and business logic to the outside world. There’s an abundance of ways that APIs can be used–pushing data to Web or mobile users, for example, or pulling data from a cloud-based CRM system. Just about any higher-level application function, on the IBM i server and anywhere elsewhere, can be exposed as an API.
The IBM i community partakes of, and benefits from, the emerging API economy, and there are many tools and techniques for exposing and consuming APIs in IBM i applications. We have covered many of them over the years in these IT Jungle pages.
But the process of creating APIs is not always straightforward, particularly when it comes to greenscreen 5250 apps. That’s the challenge that ARCAD Software took upon itself in creating ARCAD API.
“We decided to develop this product because we realized that there are still a vast number of IBM i customers who are still using software packages with a 5250 interface,” says ARCAD marketing director Olenka Van Schendel. “These customers have a major challenge on their hands because they cannot easily integrate with other new software packages they have acquired since, which, most of the time, are running in SaaS mode in the cloud.”
ARCAD API addresses this challenge by automatically generating REST-based APIs directly from 5250 screens. It does this by observing a human operator navigating the 5250 screen, and recording all the actions that take place, including the position of data in fields and any metadata generated. Over time, the software learns how the apps work, and it even supports and sub-files and unexpected screens.
The users then go to a GUI studio where they can put the finishing touches on the input and the output for the particular Web service in a drag and drop manner, and the software will automatically generate the Node.js code that makes up the API. ARCAD says the API generation process can be over in just a few minutes, and that customers don’t need to have any special development skills to use the product.
Developing APIs by recording 5250 screens (as opposed to generating APIs by extracting business logic directly from the source code) is beneficial, ARCAD says, because many IBM i shops do not have access to source code, but still want to modernize older RPG, COBOL, or CL applications to partake of the API economy.
ARCAD API provides these organizations with a quick and non-invasive way to generate APIs from their 5250 apps, while still leaving the door open for more extensive modernization down the road, says Philippe Magne, the CEO of ARCAD.
“In some cases, our customers have adopted a dual approach, using ARCAD API for rapid results while continuing to modernize and restructure their application code in parallel,” he says in a press release. “Our IBM i DevOps range helps them manage this kind of ‘bimodal’ development across multiple platforms easily. They can share a common DevOps pipeline across both legacy and open platforms, while ARCAD manages the concurrent versioning and application dependencies automatically for them.”
ARCAD API can be used to generate composite APIs from multiple screens, data sources, and applications. The APIs are automatically documented, and built-in version control keeps track of changes made over time. The software also features dependency tracking to make it easier to update Web services once they’re in use.
According to ARCAD, the new software supports existing API gateways, including those from Kong, Axway, and Mulesoft, thereby allowing APIs generated from the 5250 screens to be managed in a central manner.
With a powerful database, Db2 for i, at the heart of the IBM i system, IBM i shops may think that they can simply leverage SQL to retrieve data from the database, or to expose it for their downstream customers or upstream business partners. But that’s not a good assumption to make, Magne says.
“Some IT professionals assume that they can bypass IBM i applications to access transactional data with simple SQL queries over Db2,” he says. “They are surprised to find that the logic and business rules required to manage this data isn’t actually in the database as with data-centric systems. Instead, it is explicitly coded within the RPG or COBOL programs. So to keep the same level of reliability they would need to re-develop that same condition handling and business rules — and find those rules first!”
This is when ARCAD API is most attractive, he says, as “it offers an easy way to retain all the custom IBM i logic by connecting the Web service to the native 5250 stream.”
In an ideal world, much of this business logic would be pushed into the database, as it’s done on other platforms. Database modernization is one facet of the whole application modernization story on IBM i, but by all accounts, it’s not something that a lot of IBM i shops are actively pursuing.
But IBM i shops that don’t want to open up and mess with the RPG and COBOL logic to implement a proper MVC (model-view-controller) architecture shouldn’t be left out of the cold. With ARCAD API, they can at least get a quick modernization win and feel the warmth of APIs.
For more information on the new product, go to www.arcadsoftware.com/products/arcad-api-web-services-over-a-5250-application.