Could IBM i And System z Share Easy Source?
October 3, 2016 Dan Burger
How far can really old, monolithic RPG code be extended? Some might say the end is in sight. Others might say if it ain’t broke, why fix it. It’s an application modernization dilemma. How much time is being devoted to application maintenance? Is the code worth saving as is, can it be modified as the basis of a modernization effort, or is it time for a total rewrite? These questions are on the minds of IBM midrange shops.
There are a variety of software vendors in the application modernization business with technology and products designed to help companies make decisions on the future of their core business applications by analyzing the code and help re-architect apps when necessary, which is almost always. ARCAD, Fresche, Resolution and TEMBO are four companies that come to mind.
There’s a similar modernization conundrum occurring in IBM System z mainframe shops. At the IBM Edge conference two weeks ago, Mike Perera, vice president of z Systems Software, was telling me about it. Like the situation on the IBM i side, there are third-party vendors with software that can help z shops analyze code and come to grips with what they have and what plan is best going forward. A big difference on the z side is that IBM bought one of those vendors and has become active in promoting the product, known as Easy Source, and its related services.
Easy Source supports multiple languages and databases. The list includes COBOL, PL1, Assembler, C, and Java programming languages and DB2 and IMS database from IBM and IDMS databases from CA Technologies.
On the server side, it takes in the initial source code data and handles any updates to the code that occur during the modernization effort. On the client side, Easy Source extracts the source code and provides an analysis. Its greatest value comes from analyzing monolithic mainframe applications that are not clearly defined and have a lot of moving parts that were stitched together over a long period of time with a lot of people contributing pieces of code to the application. It takes a picture of that and allows the user to drill into the relationships. Like a flow chart with drill down capabilities that allows developer to see code on a line by line basis. Easy Source also enables the architect, developer, or tester to drill into the relationships and do impact analysis of what is commonly referred to as application code spaghetti. It provides sort of a flow chart that allows users to see code on a line by line basis and can identify the impacts of code changes as well as sort out dead code.
Applications that fit the description of being undefined are not rare in the mainframe world. The same is true the IBM i environment. In their current condition, they may be quite functional, but they are ill-equipped for the modern age of business computing.
“There are all types of mainframe customers with billions of lines of code that may need to be analyzed because the developers don’t understand how these monolithic apps actually work,” Perera says. Code needs to be modernized to be maintained with reduced risk and to become more efficient. It needs to be optimized, not just lifted out as it is.”
Other third-party vendors have similar products for z System environments. Perera says the differences can be seen in the reduced ecosystems the others support and the capability Easy Source has to perform incremental updates. Easy Source is based on the open source Eclipse integrated development environment, and so are the IBM developer for z tools, so they can snap together.
This brings us back to the IBM i modernization efforts that pretty much mirror what is going on with the z customers. Are the similarities close enough that Easy Source could be architected to support IBM i and RPG?
“Easy Source does not support RPG, but that’s a potential point-in-time statement,” the z System software VP says. “The architecture of Easy Source is plug and play. As you add new languages, a language module is added. Does not require re-architecting to add new language support. If we get enough client demand, RPG could be something that we would plug in there. The predominant focus of IBM investment is zOS. It’s relative to the number of apps on zOS that have this problem.”
Although Easy Source supports COBOL on z, to support COBOL on i would require some engineering. And to spark the engineering effort would take indications that the demand would be worth the effort.
“This was only announced June 24. It’s early. Our first step from an investment and technical standpoint was to get the product IBM-ized. From there, we plan to integrate it into other parts of the portfolio that will add value. Some of that is tighter integration. Some is use cases. Some is harvesting other technology we have. IBM i is somewhere out there, but there’s no definitive roadmap for i,” he says.