Prediction 1: BPM will overtake Java, .Net and other modernization techniques as a forward path for custom RPG applications.
There are two reasons I am confident about this prediction:
a. Modernization as commonly viewed will no longer be adequate
Many people in the IBM i world have been talking about modernization for at least ten years, but really, we need to modernize what we mean by modernization.
For discussion purposes when I say modernization I include re-engineering or conversion efforts as well. Let’s look at “traditional” versus “modern”:
Traditional RPG modernization:
• Convert RPG to RPG ILE
• Convert green screens to browser-based or mobile platforms
• Convert DDS to DDL
• Convert or recode applications into Java or .Net
• Above all else, deliver an application that can be changed quickly and often*, most of the time by the users themselves.
• Empower the users to understand the application functionality in a graphical, intuitive, business-oriented manner.
• Enable the users to manage and change all business rules and workflow in the system, with IT occasionally assisting.
• Provide built-in tracking of processes so that users and managers can graphically see 1) the status of any transaction in the workflow, 2) how, when and by whose work it got there, and 3) what the view forward looks like; and then 4) control the workflow of the transaction as needed.
• Provide real-time dashboards of all processes in the business to monitor for problems, exceptions and bottlenecks.
• Provide metrics and analytics of detailed workflow data to inform lean six sigma or other continuous process improvement programs.
• Provide cross-device, cross-system view and control of processes and workflows across desktop and mobile devices, off-the-shelf package integrations, cloud-service integrations and business partner integrations.
• Provide built-in social enterprise features to enable instant online user and manager collaboration at all points of workflow throughout the organization.
Whether we’re talking about traditional modernization or rewriting in Java or.Net, the same truth applies – none of these approaches deliver on the above core features of BPM.
* To emphasize the critical nature of the first point in particular, I quote the authors of one of the early, leading books on BPM, Business Process Management: The Third Wave, by Howard Smith and Peter Fingar:
“The ability to change is far more highly prized than the ability to create in the first place.”
b. Migration path for RPG developers is BPM
Having owned what was once one of the largest RPG consultancies on the West Coast, I’ve known hundreds of RPG developers over the years. How many do I know who converted their career to become Java, .Net or web developers? Very, very few. And why is that? I think it’s the background of where most RPG developers came from. They mostly came from a pre-software engineering world consisting of little formal education in computer science. Many came from business backgrounds, such as accounting. They did not know object orientation, inheritance, abstracted classes, interfaces, callbacks, delegates, and so on. What they knew was the business. And that was the beauty of RPG, it was accessible to ordinary business people with an analytical turn of mind.
BPM now brings a renewed opportunity for RPG developers to regain a comparable position of value for their organizations. One way of looking at BPM is that it automates almost all the internal wiring of applications so that businesses can focus on the work of the business and not software engineering. There is still a need for some amount of technical heavy lifting, but it is much reduced. The BPM effort is primarily about leading the charge of modeling and optimizing business processes. This is where many RPG developers can offer considerable expertise with their many decades of practical business automation experience.
Prediction 2: BPM will emerge not just as a platform, but as a strategic tool in itself for legacy software re-engineering projects
Facilitating Application Breakdown and Re-Integration
When re-engineering legacy software systems, should you rewrite the whole thing or should you buy a package? Or should you rewrite parts of it and buy a package for the other parts? These are crucial questions.
Given that most legacy RPG applications were developed in large part decades ago, the chances are that a good rethinking will likely lead to different conclusions about which functionality should be custom-developed and which should be purchased.
In his book Dealing with Darwin: How Great Companies Innovate at Every Phase of Their Evolution, renowned management guru Geoffrey Moore divides business processes and their supporting IT applications into two categories: differentiators and commodities. It is in the differentiator category, i.e., what makes the business unique and strong, that custom-developed software is strategically advantageous and cost-justifiable. Business processes that are not differentiators are almost always serviceable from less expensive commercially available software packages, perhaps in the cloud.
Businesses that re-engineer their legacy applications should align with this principle and plan to combine purchased applications with custom developed BPM applications. And this is where BPM really delivers:
• BPM provides a superior application development platform for the core differentiating business processes, enabling rapid development and continuous improvement, and
• BPM provides superior application integration services to interface purchased software products with each other and the custom software
Indeed, one of the core strengths of BPM has always been its ability to integrate systems – this is fundamental to its DNA. (You can read a good early history of BPM in leading BPM blogger Sandy Kemsley’s A Short History of BPM)
Facilitating Project Breakdown
There is another aspect in which BPM’s integration capabilities can play a strategic role in re-engineering applications, and that is in breaking up large projects into many phases. These phases often require unique, interim integrations. This was described in another article in this series, point seven in An RPG Manifesto for BPM.
Prediction 3: Tools will come into the market for migrating RPG applications to BPM
IBM i tool vendors will respond to opportunities to facilitate BPM re-engineering projects. Products that are within sight include:
Automated Isolation, Refactoring and Packaging of RPG Business Rules
A tool that provides this functionality could have been useful for many years, but has not made it to the market so far as I am aware. Some pieces of this have been around for awhile, but not the whole thing. RDp has some capabilities to wrap RPG, but the problem of course, is that most of the business rules in RPG are not in a wrappable state. There is also at least one commercial product that extracts business rules in RPG. An ideal tool would find all the rules, refactor them to an optimally wrappable state, wrap them individually and deliver them to a library of callable business rule services that BPM could use out of the bag.
A further evolution of this would be to convert RPG-based rules to table-based rules or a business rule language. This is the ultimate destination for a BPM application, as the rules eventually should be fully understandable and changeable by the users, with RPG-based rules being only an interim step. A product such as this is more speculative.
Process Discovery in Legacy Systems
What are the business processes currently implemented in the legacy system? Few, if any, IBM i-based organizations can fully articulate an answer to this question. Understanding the current processes, including the happy day paths and the exceptions, along with the volumes, timings, triggers and actors is very useful information when sitting down to create process models in BPM. If you can also include which business rules belong in which processes you’ve got an excellent head start towards re-engineering. In an earlier article, Reinvent Your Business with Process Mining, I described some of the possibilities. This is another aspect of BPM projects I think is ripe for a vendor-supported tool.
Phased Database Redesign
Most of us who work with legacy systems know that ugly old RPG code has an ugly old twin, and that is the database. Redesigning the database is surely part of any re-engineering project. But there is a big challenge standing in the way, and that is the need to deploy new software in many phases over a long period of time. How can the old or new application work with both the old or new database keeping everything in sync? This is a big challenge and so far as I am aware, there is no product, or even comprehensive strategy, on the market to solve this problem. But I do think such a tool is conceivable and will become available.
How To Get Started with BPM
There are a number of very good videos produced by one of the leading IBM BPM trainers – you can find them at www.ibmbpmdemos.com. Just by way of explanation, you will also see mention of ODM – this is IBM’s high-end business rule management system. I suspect this is beyond what’s needed for replacing typical IBM i applications, but would useful in applications with a large volume of complex, constantly evolving business rules.
IBM also provides an excellent tool to explore BPM. BlueworksLive is a cloud-based tool for, as they say, process discovery, which means it helps lead the organization toward a process-centric way of looking at systems. It also begins the transition to a new model of user and IT roles and collaboration. You can sign up for a 30-day free trial to check it out. It is not, however, the actual BPM development and management product, rather a tool for process exploration, basic prototyping and team collaboration.
IBM is consistently rated as a top BPM leader by Gartner Group and has an extensive product line. It is priced based on CPU power and users which helps put it in the range of affordability for many IBM i-based organizations. The base product page on IBM’s website can be found here. I am happy to answer questions or connect people with the right resources via email.
This article originally appeared in IBM Systems Magazine.