Objlab
← Tilbage til produkterne

SWAnalyzer

Software Objlab - OBJ-SWA-001 Se priser →

La conoscenza delle applicazioni legacy e' nelle persone e la documentazione non c'e'. SWAnalyzer la ricava dai sorgenti — mappa, documentazione sempre allineata al codice, e prova i programmi in un sistema simulato — senza toccare la produzione.

Hvad det løser

  • La conoscenza delle applicazioni IBM i/mainframe e' nelle persone, che vanno in pensione
  • Documentazione assente o ferma a vent'anni fa; RPG III, fixed e free form convivono
  • Ogni modifica e' un rischio: non si sa chi usa un file o un campo
  • L'unico ambiente di prova e' spesso la produzione
  • «Se cambio questo campo, cosa si rompe?» richiede ore o la telefonata alla persona giusta

Cos'e'

SWAnalyzer legge i sorgenti di un'applicazione IBM i (RPG, CL, DDS, SQL) o z/OS (COBOL, JCL, CICS, DB2) e li trasforma in quattro cose che spesso mancano: Mappa (chi chiama chi, chi usa quale file/video/stampa/tabella, in un grafico navigabile), Documentazione tecnica di ogni programma e il dizionario dei file (un clic, sempre allineata al codice), Valutazione di quanto il codice e' leggibile ed eseguibile e cosa e' codice morto, Verifica eseguendo i programmi in un IBM i o z/OS simulato sul PC. Verso i vostri sistemi fa solo letture.

Il problema

Le applicazioni IBM i sono il cuore dell'azienda e sono state scritte in casa in decenni: la conoscenza e' nelle persone, la documentazione non c'e', ogni modifica e' un rischio. Le domande di ogni giorno — «chi chiama questo programma?», «chi scrive su questo file?», «se cambio questo campo cosa si rompe?», «quanto del nostro codice gira ancora?» — oggi costano ore. SWAnalyzer risponde in pochi secondi, dai sorgenti.

Come funziona

  1. Lettura in sola lettura dei sorgenti (interrogazioni SQL sul catalogo, con pause), oppure da sorgenti gia' su disco o in un repository.
  2. Analisi: chiamate, file, video, stampe, tabelle, parametri → la mappa e la valutazione; la prova dinamica esegue i programmi e dice quanti arrivano in fondo.
  3. Documentazione tecnica in PDF/HTML dalla mappa e dall'analisi.
  4. Esecuzione e test in un sistema simulato, con scenari ripetibili.

IBM i

RPG IV (free e fixed, anche mescolati) e RPG III convertito, CL, DDS (video 5250 anche subfile, stampe), SQL, /COPY. Mappa navigabile con export PDF/HTML/SVG/DOT/JSON; documentazione con una scheda per programma + dizionario dei file; valutazione (pronto / parziale / da completare / non leggibile); prova dinamica su dati generati; sandbox completo (RPG, CL, SQL, job, oggetti, video 5250 o emulatore TN5250, Java chiamato da RPG) e debugger.

z/OS

Stesso approccio per il mainframe: COBOL, JCL/JES, CICS (mappe BMS, COMMAREA, terminale 3270 o TN3270), DB2, MQ, REXX/TSO, z/OS UNIX, schedulatori TWS e Control-M con la «notte simulata», debugger COBOL. Sorgenti anche da Endevor o ChangeMan ZMF.

Un caso reale (IBM i, dati anonimi)

1.700 programmi (241.000 righe) → mappa di 3.105 oggetti e 11.161 dipendenze; 96,8% dei programmi pronti per il sandbox; 2.897 pagine di documentazione generate in circa 10 minuti; la prova dinamica ha rivelato le correzioni che hanno portato piu' programmi a completare.

Sicurezza

Solo letture verso i vostri sistemi (nessuna scrittura, nessun comando, nessun oggetto creato); le password non vengono salvate; i sorgenti restano da voi; nessun dato di produzione e' necessario. Il confronto con un sistema reale gira solo su sistemi dichiarati di test.

Compliance og lovgivning

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?

Si': RPG III (RPG/400), RPG IV fixed form e free form, anche mescolati nello stesso programma. Su un'applicazione reale di 1.700 programmi il 97,7% dei programmi RPG risulta pronto per il sandbox.

La documentazione va mantenuta?

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

Possiamo usarlo per preparare una migrazione?

Si': la mappa e la valutazione dicono cosa c'e' e cosa e' codice morto, e gli scenari di test verificano che il comportamento resti lo stesso. Il database del sandbox puo' essere PostgreSQL.

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

No: vuol dire che il sandbox sa leggere ed eseguire le loro istruzioni. Se arrivano alla fine lo dice la prova dinamica, che li esegue tutti su dati generati e spiega perche' si ferma ciascuno di quelli che non completano.

Abbiamo programmi RPG che chiamano Java.

Girano: le chiamate EXTPROC(*JAVA) usano un JDK installato sul PC, con le classi e i jar dell'applicazione.

E se abbiamo anche il mainframe?

La stessa piattaforma copre z/OS: COBOL, JCL, CICS (anche da un emulatore 3270 vero), DB2, MQ, REXX e TSO, z/OS UNIX, gli schedulatori TWS e Control-M con la «notte simulata», il debugger COBOL; i sorgenti anche da Endevor o ChangeMan.