Objlab
← Back to products

SWAnalyzer

Software Objlab - OBJ-SWA-001 See pricing →

Knowledge of legacy applications is in people's heads and documentation does not exist. SWAnalyzer retrieves it from the sources — maps, documentation always aligned with the code, and tests programs in a simulated system — without touching production.

What it solves

  • Knowledge of IBM i/mainframe applications is in the people who are retiring
  • Documentation is absent or frozen twenty years ago; RPG III, fixed and free form coexist
  • Ogni modifica e' un rischio: non si sa chi usa un file o un campo
  • The only testing environment is often the production
  • "If I change this field, what breaks?" requires hours or a call to the right person

What is it

SWAnalyzer reads the sources of an application IBM i (RPG, CL, DDS, SQL) or z/OS (COBOL, JCL, CICS, DB2) and transforms them into four things that are often missing: Map (who calls who, who uses which file/video/print/table, in a navigable graph), Technical Documentation of each program and the dictionary of files (one click, always aligned with the code), Evaluation of how readable and executable the code is and what is dead code, Verification by running the programs on an IBM i or z/OS simulator on PC. It only performs read operations towards your systems.

The Problem

IBM i applications are the heart of the company and have been written in-house over decades: knowledge is in people's minds, documentation does not exist, every change is a risk. Daily questions — "who calls this program?", "who writes to this file?", "if I change this field what breaks?", "how much of our code still runs?" — today cost hours. SWAnalyzer answers in seconds, from the sources.

How it works

  1. Read-only access to sources (SQL queries on the catalog with pauses), or from sources already on disk or in a repository.
  2. Analysis: calls, files, videos, prints, tables, parameters → the map and evaluation; the dynamic test runs the programs and reports how many complete execution.
  3. Technical documentation in PDF/HTML from the map and analysis.
  4. Execution and testing in a simulated system, with repeatable scenarios.

IBM i

RPG IV (free and fixed, also mixed) and converted RPG III, CL, DDS (5250 video also subfile, prints), SQL, /COPY. Navigable map with export PDF/HTML/SVG/DOT/JSON; documentation with a program card + file dictionary; evaluation (ready / partial / to complete / not readable); dynamic test on generated data; sandbox complete (RPG, CL, SQL, job, objects, 5250 video or TN5250 emulator, Java called from RPG) and debugger.

z/OS

Same approach for the mainframe: COBOL, JCL/JES, CICS (BMS maps, COMMAREA, 3270 terminal or TN3270), DB2, MQ, REXX/TSO, z/OS UNIX, schedulers TWS and Control-M with the «simulated night», COBOL debugger. Sources also from Endevor or ChangeMan ZMF.

A Real Case Study (IBM i, anonymized data)

1,700 programs (241,000 lines) → map of 3,105 objects and 11,161 dependencies; 96.8% of the programs ready for sandboxing; 2,897 pages of documentation generated in about 10 minutes; dynamic testing revealed fixes that led to more programs completing.

Security

Read-only access to your systems (no writing, no commands, no objects created); passwords are not saved; sources remain with you; no production data is required. The comparison with a real system runs only on declared test systems.

Compliance & regulations

Sola lettura

Accesso non intrusivo ai sistemi

Solo interrogazioni SQL sul catalogo (IBM i) o richieste GET (z/OSMF, Endevor, ChangeMan): nessuna scrittura, nessun comando, nessun oggetto creato; letture distanziate per non caricare il sistema. Le password si usano solo per la connessione e non si salvano.

Dati

Nessun dato di produzione necessario

I sorgenti e il sandbox restano in azienda; gli scenari di test usano dati generati; la fotografia del sistema, per default, non copia record. Il confronto con un sistema reale gira solo su sistemi dichiarati di test.

Try it

Frequently asked questions

Serve installare qualcosa sul nostro IBM i?

No. SWAnalyzer non installa nulla e non crea oggetti: legge i sorgenti con interrogazioni SQL sul catalogo.

Funziona con il nostro RPG vecchio?

RPG III (RPG/400), RPG IV fixed form and free form, also mixed in the same program. In a real application with 1,700 programs, 97.7% of the RPG programs are ready for the sandbox.

Should the documentation be maintained?

No: si rigenera dai sorgenti quando il codice cambia — pochi secondi per un programma, qualche minuto per migliaia.

Possiamo usarlo per preparare una migrazione?

Yes: the map and evaluation show what is there and what is dead code, and the test scenarios verify that the behavior remains the same. The sandbox database can be PostgreSQL.

La valutazione dice 96,8%: vuol dire che il 96,8% dei programmi gira?

No: it means that the sandbox can read and execute their instructions. If they reach the end, dynamic testing will indicate this by running them all on generated data and explaining why each of those that do not complete stops.

We have RPG programs that call Java.

Running: the EXTPROC(*JAVA) calls use a JDK installed on the PC, with the classes and jars of the application.

And what if we also have the mainframe?

The same platform covers z/OS: COBOL, JCL, CICS (even from a real 3270 emulator), DB2, MQ, REXX and TSO, z/OS UNIX, the schedulers TWS and Control-M with the «simulated night», the COBOL debugger; sources also from Endevor or ChangeMan.