A Program Logic Manual tells you what one program does. The System Data & Control Flow map tells you how the entire estate hangs together: every program, every call and control transfer, every dataset, DB2 table and IMS database. Click any program to drill inside it, all the way down to the data flow between paragraphs.
Best experienced full screen. The map is self-contained: no network calls, no installation.
Every program and the calls, links and control transfers between them. Legend checkboxes switch whole subsystems on and off so you can isolate one area at a time.
Click a program box and you get its world: the JCL steps that run it, the datasets and DB2 tables it reads and writes, and the programs on either side of it.
Click the program again and you are inside it: how data moves between paragraphs, where each field is set, and which paths lead to which outcomes.
Hover any program box and a plain-English summary of what that program is for appears immediately, so someone new to the estate is not left decoding eight-character names. The detail that matters: each tooltip is labelled with its own provenance. Text taken from the source header comment is marked as such. Text drawn from the generated Program Logic Manual carries a ◇ and is noted as verified against source facts. Anything describing an external vendor routine carries a † and says whether it is vendor-documented or curated from call context.
Even the hover text refuses to blur the line between what the code proves and what a human wrote about it.
System flow. The call and transfer graph, 51 nodes, with job & file flow and paragraph-level views for each of 40 programs.
CRUD matrix. 34 programs against 38 data stores. Every Create, Read, Update or Delete marker opens the paragraph and source-line cites that prove that access.
Batch dependency chain. Job ordering derived from shared datasets, with the writer/reader pair, deck, step, DD and disposition behind each link. It states its own JCL coverage rather than implying completeness.
Static findings. 29 findings across 12 programs: uninvoked paragraphs, unreachable code after transfers, silent I/O failures, unrounded computes, accumulator double writes. Each expands to every recorded field and source cite.
Impact analysis. Select any program or data store and trace its cited upstream and downstream blast radius, 1,490 closure rows across 118 assets. Depth is user-adjustable and visible, the trace follows static call and data-access facts rather than runtime scheduling, and unresolved dynamic targets are excluded rather than guessed at. This is the report a change-advisory board asks for and almost never gets.
Each call, transfer and data access maps back to specific source lines. There is no interpretive layer between what the code says and what the picture shows.
Where a dynamic transfer target cannot be established from the source, it is displayed explicitly as unresolved rather than guessed at. An honest gap is more useful to an engineer than a confident invention.
The maps and the Program Logic Manuals are generated from one parsed baseline, so the diagram and the documentation cannot drift apart or contradict each other.
Views are bookmarkable and shareable as links, and the CRUD matrix exports to TSV for spreadsheet and audit workflows.
The full interactive map. One system-wide call and transfer graph plus job & file flow and paragraph-level views for each of 40 programs, 82 linked views in total. Scroll to zoom, drag to pan, click to drill.
Open the flow map → DRILL-DOWN EXAMPLEWhat you see after clicking a program box: the job and file flow for the daily transaction posting program, its JCL steps, the datasets and tables it touches, and its neighbours. Click the program again for the paragraph-level view.
Open the drill-down → BLAST RADIUSPick a program or data store and see everything it reaches, upstream and downstream, with a citation on every hop. 1,490 depth-bounded closure rows across 118 assets. Unresolved dynamic targets are excluded rather than guessed.
Open impact analysis →34 programs against 38 data stores. Every Create, Read, Update and Delete marker opens the paragraph and source-line citations that prove that access.
Open the matrix → MAINTENANCE VIEW29 findings across 12 programs: uninvoked paragraphs, unreachable code after transfers, silent I/O failures, unrounded computes. Pivot by program or detector family, expand any row for the source cites.
Open static findings → RUN ORDERWhich job must run before which, derived from shared datasets, with deck, step, DD and disposition behind every link. A data-dependency skeleton, not a scheduler calendar, and it says so.
Open the chain →Every report also exports to TSV for spreadsheet and audit workflows: CRUD · impact closure · static findings · batch dependencies