The Future of IBM i Application Modernisation
The idea of modernising IBM i applications is not a new one.
The green screen 5250 application has long given the platform and the applications that run on it an image problem.
Evolving Architecture for Modern Applications
The perceived problems with the terminal application led to the creation of client-server architectures to provide graphical user interfaces (GUIs).
In turn, problems with management of client-side distributed code were then solved by browser-based applications. The growth of mobile and plethora of devices meant that the front end couldn’t be designed for a predictable size of screen. Our applications’ front ends became responsive.
The idea of what modern means is constantly changing.
As the industry evolves, so does our concept of a modern application. New architectures, development and delivery paradigms and demands for different types of integrations rise and fall, present new challenges and require new solutions.
Today, a modern application may need to interoperate and integrate with multiple front ends, with messaging hubs, with APIs and different kinds of data-interchange. It may run in the cloud (IBM i in the Cloud), freeing us up from the management of the hardware.
The Evolutionary Process of Modernisation
The logic, the real business value that the applications hold, that has been invested in, refined, adapted, and customised over thousands of hours. Where it was once entwined with screen handling and data access, in a modern application it has broken free and is able to be discretely accessed in different ways, by different clients and composed as parts of different services.
Databases no longer a massively shared single resource, but part of dedicated, encapsulated units. All of this implementable today on the modern IBM i, with the tools and languages that have served us well for decades complemented by the growth of open-source technologies offered on the platform.
While businesses may need to undertake a modernisation project to pay off significant amounts of technical debt incurred over years and play catch-up – modernisation should not be thought of as a project that you implement and walk away from.
Today’s modernised application is already legacy code. Rather, modernisation or transformation should be an ongoing evolutionary process that is as much a part of the regular maintenance of applications as regulatory changes, operating system upgrades and security reviews.
Continuously refactoring code to improve its design, break it down into smaller, functionally cohesive units with true separation of concerns and that are testable and accessible will help to make our software more adaptable and ready for the next wave of challenges that it needs to solve.
Stuart BramleyKFA Connect – Technology Manager
9th May 2023
Want to know more? Get in touch with our team today.