Article written by Michel Mouchon, November 13, 2025
1. The Challenges of Modernizing Legacy Applications
It’s not uncommon for companies to still rely on mission-critical legacy applications developed decades ago on IBM z mainframes, IBM i (AS/400) systems, or UNIX/AIX machines. Languages such as COBOL or RPG have proven to be robust, but these legacy applications may now show limitations in meeting modern expectations around security, agility, and user experience.
A legacy modernization strategy addresses several objectives:
- Managing or reducing technical debt: these applications are often 30 or 40 years old—sometimes more; depending on how well they were maintained, their maintenance may be an outsized effort for new developers.
- Preserving and renewing business knowledge: the key knowledge holders who created or maintained the code are often nearing retirement.
- Strengthening security in the face of increasingly sophisticated threats.
But the primary driver remains business needs, such as:
- Making applications more accessible (web interfaces, modern UX, mobile apps).
- Adopting Cloud environments for resilience, performance, and high availability.
Modernizing means addressing all these priorities cohesively, with a controlled-risk approach—evolving a system that has been “running the business” for decades is no trivial task, especially when one is considering the security implications while doing so.
2. Identifying the Right Technology Choices
A key question arises: which technologies should be preserved, and which should evolve?
Decisions must balance sometimes contradictory criteria: standardization vs. business fit, innovation vs. stability.
ARCAD Software’s experience shows that modernization paths can be complex, with rapid shifts in technological perspectives.
The most effective approach is driven by a clear strategy: moving forward step by step, with a long-term vision but starting from immediate functional needs.
3. Moving Forward in Small, Controlled Steps
Successful modernization combines two dimensions:
- Long-term strategic choices, such as:
Providing access through a web portal or a mobile app. This requires exposing certain application functions as web services, ideally extracted from the existing code.
The ideal goal: avoid duplication that would increase technical debt, while ensuring continuity for internal users. - Short-term tactical decisions to address urgent needs:
Tools like screen-scraping can quickly provide a more modern interface. However, these temporary solutions increase technical debt and don’t meet all the objectives of a true modernization program.
4. A Three-Step Modernization Approach
At ARCAD Software, strategic modernization of IBM i and IBM z applications is built on three major phases combining analysis, change management, and progressive code transformation.
Step 1: Rebuilding Knowledge and Assessing Reusability
Static documentation of legacy applications is often missing, outdated, or unreliable. The first step is to rebuild an accurate understanding of the system directly from the code.
ARCAD recommends using DISCOVER, powered by ARCAD’s metadata repository, which extracts information from real code analysis. AI-driven features enhance search, visualization, and global understanding.
✅ This is a simple and fast first step that reassures teams and speeds up onboarding for new developers.
Step 2: Mastering Change
Modernization often happens in parallel with ongoing development. It is essential to control the flow of changes to prevent regressions, avoid unnecessary duplication of effort, and to ensure application stability.
Implementing a DevOps approach improves traceability, productivity, and development security.
The ARCAD DevOps for Legacy suite brings this flexibility across the entire lifecycle—from development to production—integrating with IDEs like VS Code or RDi, while still supporting historical tools (5250).
This coexistence encourages intergenerational collaboration between senior developers and newer recruits—beneficial for teams and your organization.
Additionally, ARCAD CodeChecker adds the SEC dimension to DevSecOps, helping to ensure code quality and security at every stage.
Step 3: Code Modernization and Application Open-Up
The final phase aims to progressively modernize application pillars—without disruption—to open your legacy systems to more modern technologies.
1. Modernizing the Database
Objective: migrate to a relational SQL database capable of hosting business rules. This can be done file by file, supported by automation that secures the transformation.
ARCAD Transformer DB converts DDS to DDL (SQL) automatically, without duplicating files (surrogate technique), reducing technical debt and maintenance costs. Automated feasibility checks and quality controls make the process safe.
Automated regression tests (with ARCAD Verifier) guarantee quality and stability.
2. Modernizing RPG Code
“Full free form” RPG uses a modern syntax similar to C# or Java, making it easier to read and maintain for developers from other backgrounds.
ARCAD Transformer RPG (also known as “RPG Converter” in the IBM catalog) converts code automatically in seconds, reliably and fully automated. The ROI is immediate, and automated testing ensures peace of mind.
3. Extracting Business Logic into Microservices
Code simplification also involves extracting business rules into autonomous modules exposed as web services.
ARCAD Transformer MicroServices aids in helping the developer do internal research, while also helping to simplify and automate this complex process. It does this by identifying internal variables and required parameters, then guiding the user through extracting the business logic into a usable microservice.
Extraction and code generation occur within seconds, with a safety net ensured by ARCAD Verifier.
5. Ensuring Security and Quality Through Automated Testing
At each phase, automated regression testing is essential.
These tests continuously verify application stability, speed up iterations, and build confidence in change.
6. Toward More Modern, Understandable, and Maintainable Code
All these steps—reliable documentation, controlled changes, code and database modernization—contribute to making applications more modern, readable, and maintainable, without destabilizing the existing system.
They also open the door to multiple evolution scenarios: maintaining the backend on the central platform or moving it to the Cloud.
This flexible approach supports technological evolution while ensuring service continuity.
7. Conclusion: Modernization Without Disruption
Modernizing legacy applications on IBM i and IBM z is not a big bang—it is a continuous, controlled evolution.
By combining analysis, automation, DevSecOps, and testing, organizations can progressively lead their systems toward modern architectures while preserving their strength and business value. Arcad’s suite of tools allows you to make the call on which modernization efforts to prioritize, and to work at your own pace, one bite at a time.
About the author

Michel Mouchon
CTO and VP of Strategy
Technical Director at ARCAD Software since 2000, Michel Mouchon plays a key role in the company’s technical strategy and coordination of R&D, engineering, and consulting teams. As a DevOps expert, he focuses on modernizing applications, methods, and tools. Holding dual degrees in electronics and software engineering, Michel has versatile IT skills. His communication talent and expertise are widely recognized within the international IBM i community.

REQUEST A DEMO
Let’s talk about your project!
Speak with an expert








