Skip to content

A Nisius product

Know how your legacy systems work.With proof.

Telikos reads your COBOL, JCL, copybooks and SQL, rebuilds the knowledge of how it all fits together, and answers in plain language. Every sentence cites the exact source line behind it. It runs inside your network, read-only.

01 · The estate

Nobody wrote it down.

Thirty years of COBOL, JCL and copybooks, changed by people who have since retired. The documentation is the code, and the code only tells you what it does if you already know where to look.

One claims system, as Telikos counts it

  • 12programs
  • 5jobs
  • 16datasets
  • 3tables
  • 445data items
  • 16open unknowns

02 · Parse

Read it line by line. No model yet.

Parsers walk every program, job and copybook and record what they find as facts, each with the file and line it came from. What they cannot resolve is recorded as a gap, never guessed.

cobol/CLM0200.cbl
  1. 118011800 CALL 'CLMCALC' USING WS-CALC-AREA.
  2. 119011900 MOVE WS-CALC-PAY-AMT TO ADJ-PAY-AMT.
  3. 120012000 MOVE 'AD' TO ADJ-STATUS.
  4. 121012100 2400-CHECK-LIMIT.
  5. 122012200 IF CLM-REASON-CODE = 900
  6. 123012300 SET SUPV-APPROVED TO TRUE
  7. 124012400 ELSE
  8. 125012500 MOVE 'N' TO WS-SUPV-APPROVED
  9. 126012600 END-IF.
  10. 127012700 IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT
  11. 128012800 AND NOT SUPV-APPROVED
  12. 129012900 MOVE ADJ-RECORD TO SUSP-CLAIM-DATA
  13. 130013000 MOVE 'OVER LIMIT' TO SUSP-REASON
  14. 131013100 WRITE SUSP-RECORD
  15. 132013200 ADD 1 TO WS-SUSP-COUNT
  16. 133013300 ELSE
  17. 134013400 WRITE ADJ-RECORD
  18. 135013500 ADD 1 TO WS-ADJ-COUNT
  19. 136013600 END-IF.
  20. 137013700 IF WS-EXIT-PGM NOT = SPACES
  21. 138013800 CALL WS-EXIT-PGM USING ADJ-RECORD
  22. 139013900 END-IF.
  1. CALLSconfidence 0.95

    2300-CALC-PAYMENT calls CLMCALC

    cobol/CLM0200.cbl:118

  2. Condition siteconfidence 0.95

    IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT AND NOT SUPV-APPROVED

    cobol/CLM0200.cbl:127-136

  3. WRITESconfidence 0.95

    2400-CHECK-LIMIT writes file SUSP-OUT

    cobol/CLM0200.cbl:131

  4. Gapseverity warn

    CALL WS-EXIT-PGM: the target is decided at run time. Recorded as a gap, not guessed.

    cobol/CLM0200.cbl:138

03 · Model

The facts become a graph.

Programs, jobs, datasets, tables and rules, and the links between them. Every link keeps where it came from and how sure Telikos is. A link it cannot prove is a gap in the map, not a line on it.

The part of the model around CLM0200: job, step, called programs, datasets and one unresolved callhas step · 0.95executes · 0.90calls · 0.95calls, via VALUE clause · 0.80reads · 0.90reads · 0.90writes · 0.90writes · 0.90calls, unresolved · gapCLMNIGHTSTEP020.ADJUDCLM0200CLMCALCCLMRULESACME.PROD.CLAIMS.VALIDACME.PROD.POLMASTACME.PROD.CLAIMS.ADJACME.PROD.CLAIMS.SUSPWS-EXIT-PGM ?
Resolved from the facts in chapter 02 and the job that runs them

04 · Answer

Ask. Every sentence cites its line.

Question

Which program decides whether a claim needs supervisor approval?

  1. 1CLM0200 describes itself in its header comment as: “CLM0200 - CLAIM ADJUDICATION READS VALIDATED CLAIMS, APPLIES DENTAL EXCLUSION RULES, CALCULATES THE PAYABLE AMOUNT AND ROUTES LARGE CLAIMS WITHOUT SUPERVISOR APPROVAL TO SUSPENSE.”cites E1
  2. 2CLM0200's change history records: “2014-02-11 DPS SUPERVISOR APPROVAL LIMIT 50,000”cites E1
  3. 3In CLM0200, paragraph 2400-CHECK-LIMIT tests “IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT AND NOT SUPV-APPROVED” at cobol/CLM0200.cbl:127-136.cites E2, E3

Evidence

  • E1Programcobol/CLM0200.cbl:4-15confidence 0.95
    4000400*----------------------------------------------------------------
    5000500* CLM0200 - CLAIM ADJUDICATION
    6000600* READS VALIDATED CLAIMS, APPLIES DENTAL EXCLUSION RULES,
    7000700* CALCULATES THE PAYABLE AMOUNT AND ROUTES LARGE CLAIMS
    8000800* WITHOUT SUPERVISOR APPROVAL TO SUSPENSE.
    9000900*
  • E2ConditionSitecobol/CLM0200.cbl:127-136confidence 0.95
    127012700 IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT
    128012800 AND NOT SUPV-APPROVED
    129012900 MOVE ADJ-RECORD TO SUSP-CLAIM-DATA
    130013000 MOVE 'OVER LIMIT' TO SUSP-REASON
    131013100 WRITE SUSP-RECORD
    132013200 ADD 1 TO WS-SUSP-COUNT
  • E3Paragraphcobol/CLM0200.cbl:121-139confidence 0.95
    121012100 2400-CHECK-LIMIT.
    122012200 IF CLM-REASON-CODE = 900
    123012300 SET SUPV-APPROVED TO TRUE
    124012400 ELSE
    125012500 MOVE 'N' TO WS-SUPV-APPROVED
    126012600 END-IF.

01 · The estate

Nobody wrote it down.

Thirty years of COBOL, JCL and copybooks, changed by people who have since retired. The documentation is the code, and the code only tells you what it does if you already know where to look.

One claims system, as Telikos counts it

  • 12programs
  • 5jobs
  • 16datasets
  • 3tables
  • 445data items
  • 16open unknowns

02 · Parse

Read it line by line. No model yet.

Parsers walk every program, job and copybook and record what they find as facts, each with the file and line it came from. What they cannot resolve is recorded as a gap, never guessed.

Four lines of CLM0200, and what the parser recorded

  1. cobol/CLM0200.cblline 118
    1. 118CALL 'CLMCALC' USING WS-CALC-AREA.

    CALLSconfidence 0.95

    2300-CALC-PAYMENT calls CLMCALC

  2. cobol/CLM0200.cbllines 127-128
    1. 127IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT
    2. 128 AND NOT SUPV-APPROVED

    Condition siteconfidence 0.95

    IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT AND NOT SUPV-APPROVED

  3. cobol/CLM0200.cblline 131
    1. 131WRITE SUSP-RECORD

    WRITESconfidence 0.95

    2400-CHECK-LIMIT writes file SUSP-OUT

  4. cobol/CLM0200.cblline 138
    1. 138CALL WS-EXIT-PGM USING ADJ-RECORD

    Gapseverity warn

    CALL WS-EXIT-PGM: the target is decided at run time. Recorded as a gap, not guessed.

03 · Model

The facts become a graph.

Programs, jobs, datasets, tables and rules, and the links between them. Every link keeps where it came from and how sure Telikos is. A link it cannot prove is a gap in the map, not a line on it.

What runs CLM0200

  1. CLMNIGHTjob
  2. has stepconfidence 0.95
  3. STEP020.ADJUDjob step
  4. executesconfidence 0.90
  5. CLM0200program

Every link from CLM0200

The last call's target is decided at run time, so Telikos records it as a gap and lists it among the unknowns instead of drawing a line it cannot prove.

04 · Answer

Ask. Every sentence cites its line.

Question

Which program decides whether a claim needs supervisor approval?

The answer, and the lines behind each sentence

  1. 1

    CLM0200 describes itself in its header comment as: “CLM0200 - CLAIM ADJUDICATION READS VALIDATED CLAIMS, APPLIES DENTAL EXCLUSION RULES, CALCULATES THE PAYABLE AMOUNT AND ROUTES LARGE CLAIMS WITHOUT SUPERVISOR APPROVAL TO SUSPENSE.”

    • E1Programcobol/CLM0200.cbl:4-150.95
    1. 5* CLM0200 - CLAIM ADJUDICATION
    2. 6* READS VALIDATED CLAIMS, APPLIES DENTAL EXCLUSION RULES,
    3. 7* CALCULATES THE PAYABLE AMOUNT AND ROUTES LARGE CLAIMS
    4. 8* WITHOUT SUPERVISOR APPROVAL TO SUSPENSE.
  2. 2

    CLM0200's change history records: “2014-02-11 DPS SUPERVISOR APPROVAL LIMIT 50,000”

    • E1Programcobol/CLM0200.cbl:4-150.95
    1. 14* 2014-02-11 DPS SUPERVISOR APPROVAL LIMIT 50,000
  3. 3

    In CLM0200, paragraph 2400-CHECK-LIMIT tests “IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT AND NOT SUPV-APPROVED” at cobol/CLM0200.cbl:127-136.

    • E2ConditionSitecobol/CLM0200.cbl:127-1360.95
    • E3Paragraphcobol/CLM0200.cbl:121-1390.95
    1. 127IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT
    2. 128 AND NOT SUPV-APPROVED

Real output from Telikos. Its composer is deterministic: no model wrote a word of it. Nothing here was written by hand.

05 · Try it

Now you. Hover a claim; it shows you where it came from.

The same answer, on the product's own screen. Hover over or focus a claim to raise the evidence it cites. Select an evidence item to read more of the source around it.

Question

Which program decides whether a claim needs supervisor approval?

Answer

  1. 1CLM0200 describes itself in its header comment as: “CLM0200 - CLAIM ADJUDICATION READS VALIDATED CLAIMS, APPLIES DENTAL EXCLUSION RULES, CALCULATES THE PAYABLE AMOUNT AND ROUTES LARGE CLAIMS WITHOUT SUPERVISOR APPROVAL TO SUSPENSE.”Cites E1
  2. 2CLM0200's change history records: “2014-02-11 DPS SUPERVISOR APPROVAL LIMIT 50,000”Cites E1
  3. 3In CLM0200, paragraph 2400-CHECK-LIMIT tests “IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT AND NOT SUPV-APPROVED” at cobol/CLM0200.cbl:127-136.Cites E2, E3

Evidence

  • 000400*---------------------------------------------------------------- CLM0200
    000500* CLM0200 - CLAIM ADJUDICATION CLM0200
    000600* READS VALIDATED CLAIMS, APPLIES DENTAL EXCLUSION RULES, CLM0200
    000700* CALCULATES THE PAYABLE AMOUNT AND ROUTES LARGE CLAIMS CLM0200
    000800* WITHOUT SUPERVISOR APPROVAL TO SUSPENSE. CLM0200
    000900* CLM0200
    001000* CHANGE HISTORY CLM0200
    001100* 1989-04-02 RJT ORIGINAL VERSION CLM0200
  • 012700 IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT CLM0200
    012800 AND NOT SUPV-APPROVED CLM0200
    012900 MOVE ADJ-RECORD TO SUSP-CLAIM-DATA CLM0200
    013000 MOVE 'OVER LIMIT' TO SUSP-REASON CLM0200
    013100 WRITE SUSP-RECORD CLM0200
    013200 ADD 1 TO WS-SUSP-COUNT CLM0200
    013300 ELSE CLM0200
    013400 WRITE ADJ-RECORD CLM0200
  • 012100 2400-CHECK-LIMIT. CLM0200
    012200 IF CLM-REASON-CODE = 900 CLM0200
    012300 SET SUPV-APPROVED TO TRUE CLM0200
    012400 ELSE CLM0200
    012500 MOVE 'N' TO WS-SUPV-APPROVED CLM0200
    012600 END-IF. CLM0200
    012700 IF ADJ-CLAIM-AMOUNT > WS-LIMIT-AMT CLM0200
    012800 AND NOT SUPV-APPROVED CLM0200
Answer 1e4751e162264385b9e39171b47f93e5Composer deterministicEstate acme2026-10-26
Real output from Telikos. Nothing here was written by hand.

06 · What it does

Six things your team can stop guessing about.

  • Every claim cited

    Ask, with evidence

    Every sentence cites the program line, job step or table definition it came from. Sentences without evidence are not shown.

  • Batch, CICS, DB2

    See every layer

    Jobs, programs, datasets, tables and transactions, and the lines that cross from one layer into the next.

  • Impact before change

    Change without fear

    Before you touch a program, see every caller, every reader of what it writes and every job that runs it.

  • Exportable packs

    Answer the auditor

    Export a cited evidence pack for any question instead of promising to dig.

  • Human override

    Keep it honest

    Your experts confirm, reject or correct any fact. Their corrections persist and override what was extracted.

  • Ranked by risk

    Know what you don't know

    A ranked list of gaps: missing copybooks, unresolved calls, datasets nobody writes, and what would close each one.

07 · Security

Built for the security review.

Read-only connectors that never write back. An appliance on a host you provide, on an internal network with no route out. No telemetry, no phone-home, no outbound calls unless an administrator allows them. A full audit log the application cannot edit, four server-enforced roles, and a data-handling document that traces every flow and control to the code that enforces it.

Read the security details →

08 · The pilot

Three weeks. One flow you can least afford to lose.

  1. Week 1Secure access and ingestionWe install the appliance on your host, connect read-only to your source, and walk through the unknowns with your team.
  2. Week 2Joint review with your expertsYour experts confirm, correct or reject what Telikos believes about the flow. Their corrections persist.
  3. Week 3Your team asks real questionsYour team asks the questions it struggles with today, follows every citation to the source, and grades each answer.

The pilot is a fixed fee, set by the size of the flow and credited in full toward a subscription. Subscription pricing is scoped with you after the pilot and written into the contract, expansion included, so adding a system never needs a re-quote.

We quote in conversation, not on a page. Tell us about the flow and we will tell you plainly.

Talk about a pilot

Pick the flow your team can least afford to lose. We will show you what Telikos can prove about it in three weeks. Telikos is designed, built and supported by Nisius.