Questo Case Study fornisce una descrizione sintetica delle problematiche affrontate con SkillUP in un Progetto a livello aziendale relativo alla completa revisione delle codifiche dei Clienti e Fornitori su tutto il sistema informativo aziendale.
Scopo del Progetto
Adeguamento Archivi e Programmi per variazione della codifica dei Codici Clienti e Fornitori, sia a livello di formato che di valori, in seguito all’adozione di nuovi pacchetti software e interfacce con sistemi esterni.
Contesto
Azienda che opera su mercati a livello Worldwide, con esigenze di interfacciare i propri sistemi con Fornitori e Clienti in rapida evoluzione.
L’esigenza di interfacciare nuovi software e sistemi esterni ha generato la necessità di adeguare i sistemi esistenti, realizzati su Piattaforma AS400 (nota anche come iSeries, System i, IBM i, IBM Power Systems), per consentire di interfacciarsi con nuovi applicativi adottati in azienda e con sistemi esterni sempre più utilizzati e importanti per il business aziendale.
Problematiche
La rapida crescita aziendale su mercati internazionali ha reso imperativo e urgente l’adeguamento dei sistemi aziendali per potersi interfacciare con nuovi applicativi adottati in azienda e con sistemi esterni sempre più utilizzati e integrati con il business aziendale.
Tra le esigenze emerse un aspetto rilevante è stato costituito dalla necessità di adeguare le Codifiche Clienti e Fornitori, sia a livello di formato che di valori previsti e introducendo concetti di alias nelle codifiche per rendere flessibile l’integrazione con altri sistemi.
Criticità
La grande mole di Files e Programmi coinvolti (diverse migliaia), unita alla necessità di mantenere l’operatività 24/7, hanno costretto ad adottare un approccio di realizzazione in diversi Lotti di attivazione distribuiti nell’arco di pochi mesi, in modo da non creare problemi ai processi di Business.
L’attività Progettuale è stata svolta durante le normali attività di gestione e aggiornamento dei Programmi realizzate dagli altri Team di sviluppo: quindi si è reso necessario gestire frequentemente l’aggiornamento (refresh) delle versioni dei Sorgenti coinvolti nelle modifiche.
In diversi casi sono sorte incertezze sul corretto abbinamento tra Sorgenti e relativi Oggetti: questo aspetto è stato gestito con particolare attenzione per prevenire problemi derivanti dall’utilizzo di Sorgenti “disallineati”.
Identificazione delle entità coinvolte nel Progetto: poiché le informazioni coinvolte nelle modifiche erano presenti in molti Files e “propagate” dai Programmi in molti altri Programmi e Files, la fase di corretta identificazione di tutti i Campi, Variabili, Programmi e Files coinvolti è stata di particolare importanza.
Realizzazione
Lo sviluppo del progetto consistite nell’individuazione di tutti i punti di intervento nei programmi / archivi / viste logiche / aree dati / ecc. attraverso una scansione di tutti i sorgenti che considera tutti i legami di “propagazione” delle informazioni.
Per un Campo da modificare su un Archivio si può propagare la necessità di intervento su numerosi altri Campi / Archivi / Programmi in relazione alle elaborazioni effettuate, vedi fig. “Schema Ricerca Legami”:
Molto spesso i punti di intervento sono numerosi (dell’ordine delle migliaia) e l’utilizzo di strumenti automatici / semiautomatici riduce enormemente i tempi ed i rischi di errore.
In relazione ai punti di intervento individuati e alle regole di intervento decise in fase progettuale, vengono realizzati strumenti ad hoc che apportano automaticamente correzioni ai Sorgenti (Strutture Dati, File Fisici, File Logici, File di Visualizzazione, File di Stampa, Programmi, …) per la stragrande maggioranza dei casi “standard” (riconducibili a regole predefinite di intervento) e che, nel caso di situazioni non “standard”, vengono indicate, su appositi Files di Log e con “Tag” inseriti nei sorgenti, le evidenze degli interventi manuali di verifica e correzioni necessarie.
Nel corso del progetto vengono predisposti vari Ambienti di Sviluppo / Test propedeutici ai successivi “unit test” e “integration test” (con coinvolgimento degli Utenti). Vengono inoltre predisposti ed eseguiti numerosi “stress test” per forzare l’elaborazione degli Oggetti modificati in modo da verificare il corretto funzionamento delle versioni modificate degli oggetti coinvolti.
Conclusioni
L’approccio adottato per il Progetto, basato sullo sviluppo e sull’utilizzo di strumenti automatici per l’individuazione dei punti di intervento e per la loro esecuzione automatica e semi-automatica, consente di completare in pochi mesi un’attività che, con approccio non strutturato, comporterebbe tempi e risorse molto più rilevanti.
Le principali caratteristiche dei risultati ottenuti sono:
- Tempi ridotti
- Costi ridotti
- Probabilità di errore ridotta in modo significativo: l’utilizzo di strumenti automatici riduce decisamente le probabilità di errore dovute alla grossa mole di interventi che avrebbero sicuramente sofferto degli inevitabili “typing error” umani
- Tracciabilità delle modifiche: l’utilizzo di strumenti automatici ha l’ulteriore vantaggio di poter tracciare con precisione le modifiche apportate, sia dal punto di vista di rilevazione statistica che dal punto di vista dell’evidenza di situazioni problematiche ricorrenti che possono suggerire linee guida da seguire da parte del Team di sviluppo.