Modernization path

Exit an IBM Z mainframe and target Azure incrementally.

Modernization of IBM z/OS mainframe applications to Microsoft Azure, using the strangler fig strategy and the ATLAS methodology.

Key figures
In waves
incremental delivery, cadence set at scoping
30-50%
typical TCO reduction at 3 years after complete modernization
99.999%
availability of an IBM Z mainframe in production — the Azure target must match it
ATLAS methodology applied

From scoping to deployment, five structured phases.

Each phase aggregates one or more of the ten ATLAS steps. No phase starts until the previous one has delivered its validated artefact. The ATLAS methodology makes AS/400 migration predictable and auditable.

  1. 01Phase 1

    Scoping & Discovery

    ATLAS steps
    E1 Intake · E2 Discovery · E2b Functional spec

    Estate extraction via Azure Mainframe Migration, IBM ADDI, or dedicated tools. Classify each program by frequency, criticality, and dependencies. Full mapping: COBOL, CICS, JCL, copybooks, DB2/VSAM.

    Phase deliverable
    Estate inventory + dependency map + signed perimeter
  2. 02Phase 2

    Azure target architecture & regulatory scoping

    ATLAS steps
    E3 Dependency mapping · E4 Target architecture

    Per-subsystem trajectory arbitration (emulator rehost, replatform, cloud-native refactor). Azure architecture: AKS, App Service, Azure SQL, Service Bus, Functions. Regulatory scoping (DORA, Solvency II, accreditations) and sovereign zones. FinOps strategy.

    Phase deliverable
    Signed trajectory plan + Azure architecture + estimated monthly budget
  3. 03Phase 3

    Migration & characterization tests

    ATLAS steps
    E4b Pre-migration tests · E5 Migration

    Characterization tests written upstream on the mainframe. Pattern-by-pattern migration: COPY → classes, PERFORM → methods, PIC S9(n)V9(n) → BigDecimal, CICS → REST microservices. Azure infrastructure build via Bicep/Terraform.

    Phase deliverable
    Target code + characterization test suite + Azure infra as code
  4. 04Phase 4

    Strangler fig coexistence & parity audit

    ATLAS steps
    E6 Parity validation

    Parallel runs mainframe / Azure with automatic output comparison. Per-subsystem parity audit, internal classified discrepancy registry. Coexistence behind an API facade, dual writes DB2 → Azure SQL via Database Migration Service.

    Phase deliverable
    Signed discrepancy registry + proven parity per subsystem
  5. 05Phase 5

    Decommissioning & FinOps

    ATLAS steps
    E7 Delivery

    Per-subsystem transactional cutover, mainframe decommissioning planned after parity validation. Coexistence bounded by a dated exit plan. Continuous FinOps monitoring, ops handover to client team with runbooks.

    Phase deliverable
    Subsystems in Azure production + mainframe decommissioned + autonomous client team
At the core of the ATLAS method

AI to understand the mainframe, not to translate it.

Application code is not the main difficulty in a mainframe exit. What does not convert automatically are the services the mainframe provided implicitly: CICS transaction management, JCL scheduling, VSAM and DB2 access consistency. A port ignoring these layers yields an application that works in test and loses transactions in production. End-to-end automatic translation isn't a modernization method, it's a debt transfer.

Our approach is the opposite. ATLAS relies on multiple readings of the source code, from several angles. Here, what we read first: cICS transaction boundaries to recover and rebuild on Azure services, and JCL chains encoding undocumented execution dependencies. AI comes in as a comprehension accelerator, to decipher years of accumulated business logic, reverse-document uncommented branches, surface the intent behind the code. It doesn't decide and it doesn't translate. It informs the architect's work, who then designs the target architecture and drives the migration pattern by pattern, under parity audit.

This understanding still requires humans who know the source technologies. That's our edge: where Europe and North America face a retirement wave on these skills, Tunisia retains experienced z/OS mainframe developers, paired with Azure architects. Together they ensure continuity between the original business intent and the target system.

Who is concerned

Business context and modernization stakes.

The IBM z/OS mainframe today

IBM Z remains the transactional backbone of large banks, insurers, central administrations, and social security funds. Volumes are impressive: a Z mainframe in production routinely absorbs several thousand transactions per second with availability above 99.999 percent. The question is therefore not whether the mainframe works — it works very well — but at what cost it still works.

Why modernize to Azure

The signals that trigger modernization to Azure: annual mainframe license and infrastructure cost weighing on the IT budget (often between two and twenty million euros per year for a large enterprise), scarcity of COBOL and z/OS engineers forcing continuous training, predictable end of support for certain versions of DB2 z/OS or CICS, and standardization of the global IT toward the Microsoft Azure ecosystem. Our ATLAS methodology is designed to make this transition predictable, over several years, with no service interruption.

Why Azure rather than AWS or GCP

Azure is the natural choice for IT departments already committed to the Microsoft ecosystem (Active Directory, Office 365, Dynamics 365, Power Platform, SQL Server). Microsoft also offers Azure Mainframe Migration as a dedicated service, and a technical partnership with Micro Focus and Raincode for COBOL conversion. If your primary ecosystem is AWS, look at the Mainframe to AWS path. The key principle: choose the cloud that matches your global IT, not the cloud of the moment.

Source platform

IBM z/OS mainframe, CICS, DB2, VSAM

Target technology

Azure (AKS, App Service, SQL Database, Service Bus)

Technology alternatives

Compare target trajectories.

Azure (AKS + SQL Database + Service Bus)

Microsoft ecosystem dominant, intent to use Azure managed services, progressive strangler fig migration. The default choice recommended by Microsoft.

Azure + target code in Java 21

Strong in-house Java skills, desire for cloud portability. Java code deployable on Azure but potentially on other clouds. See COBOL to Java.

Azure + target code in .NET Core 8

Microsoft ecosystem at all levels, pooling of C# skills. See COBOL to .NET Core.

AWS

AWS ecosystem dominant. See Mainframe to AWS.

Rehosting on emulator (Micro Focus, TmaxSoft)

Budget urgency, need to exit the IBM mainframe without immediate redesign. Lift-and-shift approach that preserves the COBOL code on cloud but does not truly modernize.

Scoping reference

Typical duration and team for this path.

An IBM Z mainframe to Azure modernization program is structured as a sequence of functional waves, with the cadence set at scoping based on volume and criticality. The typical cell starts with a senior mainframe-cloud architect, an Azure tech lead, COBOL-Java/.NET developers, a DB2-SQL Server DBA, a cloud network engineer, a QA specialized in parity tests, and a delivery director. Composition and headcount are not fixed upfront: they are determined after the POC and scoping, once the real work has been measured; a large-enterprise mainframe estate is modernized in several waves spread over time.

Challenges

  • Progressively exiting a mainframe without interrupting critical transactions.
  • Migrating VSAM and DB2 data to Azure SQL.
  • Reproducing CICS transactional mechanisms in a microservices architecture.

ATLAS approach

  • Complete mapping: COBOL programs, CICS transactions, data.
  • Strangler fig strategy: migration subsystem by subsystem.
  • Mainframe / Azure coexistence during the transition.

Expected outcomes

  • Progressive mainframe exit with batch-by-batch transactional cutover.
  • Modern, elastic, observable Azure cloud architecture.
Identified pitfalls and ATLAS response

What we learned on this migration path.

Pitfall 01

Launching a mainframe modernization program as a big-bang. Failures of this kind of program — service interruption, budget overrun, abandonment — are frequent: Gartner forecasts that more than 70% of mainframe exit projects launched in 2026 will fail to deliver the intended benefits, notably from overestimating generative-AI tooling.

ATLAS response

Strangler fig strategy is mandatory. We migrate subsystem by subsystem, the least critical transactions first, the critical transactions last. The mainframe-Azure coexistence lasts several years during the transition. Our ATLAS methodology explicitly frames this incremental progression.

Pitfall 02

Underestimating the VSAM and DB2 data migration to Azure SQL. Volumes are typically massive (terabytes), EBCDIC binary formats complicate conversions, and integrity rules are not always portable.

ATLAS response

Dedicated data migration phase with specialized tools (Azure Database Migration Service, IBM Data Replication, Oracle GoldenGate depending on context). Dual writes mainframe-Azure during the coexistence period to guarantee consistency. Daily parity tests on production volumes with automated reconciliation.

Pitfall 03

Failing to plan for the reproduction of CICS mechanisms (pseudo-conversational, commarea, temp storage, transient data). The naive microservices pattern does not reproduce CICS semantics.

ATLAS response

Cloud architecture with Azure App Service or AKS plus Redis or Azure SQL for distributed state. Commareas become typed DTOs, pseudo-conversational transactions become stateless workflows, temp storages become Redis cache. Migration to Azure Service Bus for asynchronous messaging that replaces mainframe MQ.

Pitfall 04

Ignoring sectoral regulatory constraints (banking: DORA, ACPR; insurance: Solvency II; administration: security accreditations). A mainframe is often accredited, a cloud environment must be too.

ATLAS response

Regulatory scoping phase integrated into the target architecture. Azure is already certified for most European regulations (GDPR, DORA, ISO 27001, SOC 2). Azure sovereign zones (France Central, Germany West Central) meet localization requirements. Progressive transaction-by-transaction accreditation documented in the registry.

Pitfall 05

Letting mainframe-Azure coexistence drag on indefinitely. Each additional month of coexistence accumulates the costs of both platforms and complicates governance.

ATLAS response

Mainframe decommissioning plan dated from the program kickoff. Each migrated transaction triggers the scheduled decommissioning of its mainframe equivalent after a dual run period of three to six months. Target three to five years maximum for total mainframe decommissioning; beyond that, dual maintenance becomes an anti-pattern.

Cell composition

A specialized cell for this modernization path.

Several distinct profiles, mobilized over the full program duration. Reproducing this cell internally is rarely realistic — the legacy skills shortage and ATLAS expertise depth make outsourcing structurally faster and less risky.

Duration
Set at scoping based on estate volume and criticality
Volume
Determined after the POC and scoping
Profiles

Mainframe ↔ Azure architect

Bridge between z/OS, CICS, DB2 and the Azure ecosystem, strangler fig coexistence design, per-subsystem trajectory arbitration

Azure Tech Lead

Azure Mainframe Migration, AKS, App Service, Azure SQL, Service Bus, Functions, Azure Monitor observability

COBOL → Java or .NET developers

Translation patterns PIC/COMP-3 → BigDecimal, CICS → REST, JCL → orchestration, ideally with a COBOL background

Azure cloud engineers

Infrastructure as Code (Bicep, Terraform), CI/CD Azure DevOps, Entra ID security, VNet networking

DB2/VSAM → Azure SQL DBA

Migration via Azure Database Migration Service, DB2 schema mapping, dual writes, data parity audit

Parity test QA

Characterization test bench, automated parallel runs, classified discrepancy registry

Azure FinOps & compliance referent

Monthly per-subsystem estimate, regulatory scoping (DORA, Solvency II, accreditations), Azure sovereign zones

Project Manager

Functional waves leadership, program governance, dated mainframe decommissioning plan

Access field experience

This path in real conditions.

Internal Access POCs — mainframe to cloud patterns

Internal POCs validating the transformation patterns from mainframe (COBOL, JCL, CICS, VSAM, DB2) to cloud target stacks (.NET Core or Java on Azure AKS, Azure SQL, Azure Service Bus). Strangler fig approach applied on representative scopes.

Mainframe patterns POCs · Strangler fig · Azure-native target stack
Frequently asked questions

What decision-makers ask about this path.

How long does a complete mainframe modernization take?+

Modernization is delivered in successive functional waves rather than on a monolithic plan: the cadence is set at scoping based on volume and criticality. Non-critical transactions are migrated first, critical transactions (payments, central accounting) last. The mainframe-Azure coexistence lasts the entire duration of the program. The objective is total mainframe decommissioning at the end, not just lightening it.

Can we keep COBOL and just rehost on Azure?+

Yes, this is rehosting on emulator (Micro Focus Enterprise Server, TmaxSoft OpenFrame). The COBOL code runs on Azure VMs. Pros: fast migration, low initial effort, preservation of existing code. Cons: no real modernization (technical debt preserved), dependency on a third-party vendor, often high emulator license costs. We see this approach as a temporary stepping stone useful to quickly exit IBM hardware, but not as a final target. True modernization comes in a second phase with rewriting to Java, .NET Core, or TypeScript.

Is Microsoft's Azure Mainframe Migration enough?+

It is a useful accelerator but not a turnkey solution. Azure Mainframe Migration offers analysis tools, partnerships (Micro Focus, Raincode, Astadia, TmaxSoft), and managed services suited to mainframe workloads. These tools can convert COBOL to Java or .NET automatically, but exiting the mainframe still requires significant characterization, parity audit, and refactoring work. Our ATLAS methodology integrates these tools as accelerators where relevant, without treating them as an end in themselves.

How do you handle mainframe load peaks (month-end, accounting close, events)?+

Azure offers native elasticity that the mainframe cannot match at this price point. Month-end peaks are absorbed by AKS or App Service auto-scaling, scaling up automatically and down in lulls. The annual accounting close can be handled by a temporary dedicated cluster. This elasticity generates significant savings compared to a mainframe sized for the peak and underutilized the rest of the time. Typical saving: 30 to 50 percent on TCO over a 3-year horizon after complete modernization.

How much does an IBM mainframe to Azure modernization cost?+

A mainframe exit budget is driven by estate size (often one to ten million lines of COBOL) and above all by the chosen trajectory, which changes the order of magnitude entirely. We do not price a mainframe from declarations: the ATLAS Intake establishes the real inventory of programs, JCL chains and CICS transaction boundaries before any commitment. Free initial scoping call, 30 minutes to 2 hours.

What are the risks for a five-year multi-year program?+

Three major risks: organizational fatigue (teams tire on a long program), change of executive priorities (budget, strategy), target technology obsolescence (target technologies evolve over five years). Mitigations: contractual milestones to validate each step, incremental deliveries with visible business value each year, modular target architecture that can be revised without questioning the foundations. Our experience: programs that deliver visible value each year succeed, those that promise a five-year big-bang drift.

How much does an Azure mainframe modernization cost?+

It depends on the migration strategy and the scope. Three trajectories with very different cost profiles: lift-and-shift (rehost on Azure VMs running an emulator), fastest but keeps the debt; replatform (move to Azure SQL, App Service, Container Apps while keeping most of the code); and refactor (cloud-native microservices modernization), longest but the only one that truly removes the dependency. The trajectory choice, made at the end of Intake, weighs more on budget than estate size. Free initial scoping call, 30 minutes to 2 hours.

Considering an IBM Z mainframe exit to Azure?

Three concrete ways to start — from an Azure Mainframe Migration POC to a full multi-year program. Our approach is incremental, strangler-fig based, with a internal classified discrepancy registry and a dated decommissioning plan.