Refactoring during migration
Common stance: take the migration as an opportunity to restructure the code.
Two simultaneous changes make regressions indistinguishable — migration gap or refactor gap? Resolution time is multiplied.
Loading...
ATLAS is Access International's proprietary methodology for modernizing legacy applications — COBOL, Delphi and BizTalk middleware, three families covered equally. It structures every program around ten steps, nine guiding principles, and six team poles, delivering with proven functional parity and traced discrepancies.
Three structural anti-patterns recur in programs that drift. ATLAS neutralizes them by design, before they enter execution.
Common stance: take the migration as an opportunity to restructure the code.
Two simultaneous changes make regressions indistinguishable — migration gap or refactor gap? Resolution time is multiplied.
Common stance: tests will be produced once the target code is operational.
Without a behavior reference, functional parity is no longer measurable. Validation becomes an opinion, not a deliverable.
Common stance: occasional gaps will be documented later.
Unqualified discrepancies surface in production. Correction effort shifts to the client, at the most expensive moment.
Each principle addresses a structural risk observed in our migration programs.
ATLAS does not speed up migration. It secures the landing — proven parity, traced discrepancies, compliant delivery.
Each step has an identified deliverable, an exit criterion, and a validation gate (kill/go). No step starts until the previous one is validated.
Scope, constraints, and success-criteria framing.
Deep understanding of legacy code, mapping of business intent.
Rebuilding a readable functional analysis from existing code.
Setting a ground truth: screens, reports, datasets, transactions.
Exhaustive mapping of system interactions, files, databases, interfaces.
Designing the technology destination: cloud, target language, patterns.
Characterization test suite before touching target code.
Pattern-by-pattern code translation, line-by-line traceability.
Proof of functional equivalence between legacy and target.
Go-live, documentation, ops handover, signed discrepancy registry.
Each family has its pattern catalog, characterization test library, and known-discrepancy reference.
IBM z/OS mainframe, AS/400, Unisys, open COBOL
Java, .NET Core, TypeScript, Python
Preserving accumulated business rules, COBOL expertise availability, rewrite without service interruption.
Delphi Object Pascal, PowerBuilder, Uniface, client/server
.NET Core, TypeScript, Java
Proprietary components, embedded databases, native Windows interfaces to rebuild.
BizTalk Server, IBM Z, AS/400 RPG
Azure Logic Apps, AWS, Kubernetes containers
Critical exchange orchestration, interface contracts, distributed transactions.
Legacy-migration failures are rarely technical. They are most often organizational: absent business expertise, deferred arbitrations, blurry governance. The six ATLAS poles eliminate these blind spots.
Target design, technology arbitration, non-functional constraints.
Pattern-by-pattern migration steering, code reviews, standards.
Code translation, unit tests, documentation of recurring patterns.
Characterization tests, parity audits, non-regression automation.
Functional validation, discrepancy arbitration, rule prioritization.
Governance, kill/go gates, reporting to client and prime contractor.
ATLAS is not limited to COBOL. Each journey below applies the same steps and principles to a different source technology — Delphi, mainframe, BizTalk.
COBOL (mainframe IBM z/OS, AS/400, Unisys, GnuCOBOL) → Java 21, Spring Boot, PostgreSQL, Kafka
COBOL (mainframe IBM z/OS, AS/400, Unisys) → .NET Core 8, C#, SQL Server ou PostgreSQL, Azure
COBOL batch (mainframe, AS/400) → TypeScript, Node.js, PostgreSQL, conteneurs
COBOL batch (calcul, reporting, analytique, actuariat) → Python 3, pandas, NumPy, PostgreSQL ou Databricks
Delphi (Object Pascal, VCL, FireDAC) → .NET Core 8, C#, WinForms ou Avalonia, SQL Server
Delphi (client-serveur, VCL) → TypeScript, React ou Angular, Node.js, PostgreSQL
Delphi (Object Pascal, VCL, FireDAC, dbExpress, composants tiers) → Java 21, Spring Boot, JPA, PostgreSQL, REST API, frontend SPA ou JavaFX
PowerBuilder (PowerScript, DataWindow, PBL, Appeon PowerServer) → .NET Core 8 ou Java 21 ou TypeScript, PostgreSQL ou SQL Server, REST API, frontend SPA ou WinForms selon contexte
Mainframe IBM z/OS, CICS, DB2, VSAM → Azure (AKS, App Service, SQL Database, Service Bus)
Mainframe IBM z/OS, AS/400, Unisys, OpenVMS — applications COBOL, PL/I, CICS, JCL, batch → AWS — EKS / ECS, RDS PostgreSQL ou Aurora, EventBridge, Step Functions, S3, Lambda, AWS Mainframe Modernization (Blu Age, Micro Focus)
AS/400 (IBM i, RPG, DB2/400, CL) → Java, .NET Core, TypeScript, PostgreSQL, conteneurs
BizTalk Server 2010 / 2016 / 2020 → Azure Logic Apps, Azure Functions, Service Bus, API Management
Each application below was migrated end-to-end by our team — source code, batch jobs, screens and integrations. Click any card to open the running target system in a new tab.

AWS Mainframe Modernization reference

IMS hierarchical DB + VSAM ESDS/RRDS + JCL SORT

IBM CICS Banking Sample Application

IBM CICS GenApp

French sovereign tax code (CeCILL v2.1)

Norwegian Delphi 5+ desktop app

Microsoft aimbiztalk samples reframed
Each demonstration illustrates a documented migration journey — challenges, ATLAS approach and FAQ: COBOL modernization, Delphi to .NET and BizTalk to Azure. See all journeys.
Four public repositories show the methodology, its self-learning record, and a sample of the toolkit. The full runbook and calibrated patterns stay with the engagement.
Each demo migrates open-source legacy code. Original copyrights are preserved; each live demo carries source, license and our attribution in its footer.
ATLAS is Access International's operational framework for modernizing legacy applications with proven parity. It structures the program around ten steps, nine guiding principles, and six team poles. It covers three legacy families: COBOL, Delphi, and BizTalk-type middleware.
ATLAS enforces functional parity before any redesign: target code must first reproduce legacy behavior exactly, measured by characterization tests written upstream. Discrepancies are traced in an official registry, weighted, and validated or compensated before go-live.
ATLAS covers three families: COBOL (z/OS mainframe, AS/400, Unisys) to Java, .NET Core, TypeScript or Python; Delphi and 4GL environments to .NET Core or TypeScript; BizTalk middleware and modern mainframe to Azure Logic Apps or AWS.
Duration depends on code volume, functional complexity, and the chosen delivery model (TM, RC, CC, or SC). Every program is scoped at Intake with per-pattern budgeting and a subsystem-by-subsystem delivery plan.
We do not publish rate cards. Pricing is built at Intake from code volume, functional complexity, delivery model, and target parity level. A short multi-week POC measures real per-pattern productivity before committing to the full program, yielding a multi-year quote based on measurements, not assumptions.
Every ATLAS program is delivered with exhaustive documentation, a signed discrepancy registry, and a transferred automated test suite. Migrated patterns and tooling are the client's property. On exit, the client has enough material to continue in-house or with another vendor — no black box.
Knowledge transfer is planned from Discovery. Concretely: systematic pair-programming on recurring patterns, shared code reviews, a documented pattern library, monthly workshops with client teams. At delivery, the client has an autonomous internal team on the delivered foundation.
Yes. The strangler fig strategy migrates subsystem by subsystem while the rest of the legacy keeps running. Each migrated module goes to production independently, with parallel legacy/target runs. No client is forced into a big-bang.
A short POC (Intake + Discovery + migration of a representative subsystem) is billed at direct cost (a few cell-weeks). It rolls into the overall scoping if the program proceeds. If stopped, the client keeps the POC deliverables and can reuse them.
Yes. We frequently operate in co-delivery: the prime carries the client relationship, governance, and contractual liability; Access operates the ATLAS cell as subcontractor or partner. Deliverables, rituals, and tooling stay consistent with the prime's methodology, with ATLAS layered on top.
Every discrepancy identified between legacy and target is traced in an official registry with: nature, business impact, proposed resolution or compensation. The program committee (client + Access) arbitrates and signs the registry. Acceptable discrepancies are documented; blocking ones are fixed before production.
The characterization test suite delivered at parity validation covers the vast majority of business behaviors. Any regression detected in production beyond the tested scope is jointly analyzed: if outside the registry's coverage, it is handled as evolutionary maintenance; if inside the guaranteed perimeter, it is fixed under SLA.
The ATLAS methodology structures every legacy modernization in 10 phases with kill/go gates between each. E1 Intake — scope, constraints, success criteria. E2 Discovery — deep code analysis, business intent mapping. E2b Functional spec — readable analysis from the existing code. E2e Existing-state capture — frozen reference of truth. E3 Dependency mapping — exhaustive system interaction graph. E4 Target architecture — technology mapping, ADR. E4b Pre-migration tests — characterization suite written before any target code. E5 Migration — pattern-by-pattern translation with line-level traceability. E6 Parity validation — proof of functional equivalence on real datasets. E7 Delivery — cutover, documentation, internal classified discrepancy registry. The framework adapts to client governance (Scrum, SAFe, PRINCE2). See the ATLAS methodology for the full operational playbook.
The strangler-fig pattern (named after the strangler fig tree, which slowly grows around a host tree until the host is no longer needed) is the default ATLAS approach to legacy modernization. Instead of a big-bang rewrite, sub-systems migrate one at a time: a new module is built, tested, deployed, and traffic is rerouted from the legacy to the new system, while the rest of the legacy keeps running. After enough iterations, the legacy is fully replaced — but the program never has a single high-risk cutover moment. The advantages: any sub-system delivered enters production independently, kill/go gates between modules let you pause without losing work, and parallel runs validate parity on real production traffic before final cutover. The strangler-fig approach is principle 5 of the ATLAS methodology. See the ATLAS methodology for the operational details.
We audit feasibility, cost, and migration trajectory. A thirty-minute conversation is enough to identify structural risks.