Nello sviluppo di sistemi software complessi i test effettuati dal fornitore, orientati a testare la robustezza del software e corretta esecuzione delle singole funzionalità, non sono sempre sufficienti per garantire al Cliente il rispetto delle specifiche e la coerenza con i propri di Business,
Considerando il caso di un sistema IT complesso, un collaudo effettuato verificando la correttezza delle principali transazioni lascerà inevitabilmente scoperti moltissimi scenari reali d'uso del sistema.
UAT Toolkit è un framework per il collaudo di sistemi, utilizzato nel caso di progetti medio-grandi, anche pluriennali e rilasciati per fasi.
In questa presentazione UAT Toolkit viene introdotto nelle sue caratteristiche principali e ne viene esemplificato l'uso in un caso d'esempio descritto.
UAT Toolkit valorizza il lavoro di tutta la squadra di progetto. Consente di massimizzare le sinergie tra committenza, fornitore, esperti del dominio di business e utenti finali, coinvolgendo tutte queste figure nel processo di Quality Assurance.
La struttura documentale organizzata per Deliverable, analitici ma snelli e senza componenti superflue, permette di pianificare e tracciare le attività di test, gestendo anche i collaudi differenziati di parti di progetto. UAT Toolkit fornisce già i template di tutti i Deliverable, pronti per essere adattati allo specifico progetto.
I Deliverable prodotti nel processo documentale di UAT Toolkit sono compatibili con i sistemi di Test Management e ne costituiscono l'input principale, qualora un tale sistema di supporto del testing sia disponibile per la fase di collaudo del sistema.
La struttura del processo di produzione dei Deliverable di UAT Toolkit innesca un circolo virtuoso per quanto riguarda il miglioramento continuo delle specifiche del sistema.
Taluni Deliverable prodotti da UAT Toolkit possono essere riutilizzati, dopo la conclusione positiva del progetto, anche nell'ambito della misurazione dei KPI e degli SLA contrattuali, qualora il Cliente preveda l'outsourcing di una o più Servizi (es. Contact center, amministrazione dei sistemi, ecc.) di supporto dell'esercizio.
UAT Toolkit affida a un facilitatore il ruolo di coordinamento delle attività preparatorie del collaudo. Il facilitatore ha il compito di ridurre i tempi di acquisizione del Toolkit da parte dello staff del Cliente, tramite formazione e coaching sul posto. Inoltre studia le specifiche di sistema e si mette a disposizione del cliente per la scelta degli scenari di test, nonchè per rendere sempre più autonomo e consapevole lo staff aziendale.
2. The art of computer programming
La produzione industriale del software si è
radicalmente evoluta dagli anni ‘70,
quando si poteva considerare un’arte.
Il software è ora intrinsecamente più
sofisticato, robusto e veloce da sviluppare,
rispetto a quando furono scritti questi libri.
La Quality Assurance (QA) del software è
diventata una disciplina autonoma.
Attualmente ci sono addirittura modelli di
sviluppo software orientati al testing….
3. …. tuttavia, ai fini del collaudo del
prodotto (UAT - User Acceptance Test),
quale modello di QA del software ti
assicura come cliente la migliore
qualità finale e aderenza alle tue
specifiche di business?
4. Solo uno!
Il tuo criterio.
(Con la giusta disciplina per applicarlo al contesto da
collaudare)
5. Requisiti
I requisiti del futuro
sistema sono raccolti,
documentati e validati
dal cliente.
Progettazione
Analisi e traduzione dei
requisiti in una
progettazione esecutiva
Accettazione progetto
Fornitore e cliente concordano
sui contenuti del progetto
Sviluppo
Realizzazione software e
integrazione;
QA interna di produzione
Consegna
Rilascio formale
del software
Collaudo
Il cliente esegue i test di
validazione del sistema
realizzato (UAT)
Produzione
Rilascio formale
del sistema agli
utenti
Un sistema complesso include sviluppi di software, configurazione di prodotti, integrazione con altri sistemi, interfacce al servizio di utenti
diversi con diversi livelli di autorizzazione
Ciclo di realizzazione dei sistemi complessi
6. L'adozione di una
METODOLOGIA
STRUTTURATA
di costruzione delle UAT
consente al cliente di
applicare i suoi criteri al
processo di QA e includere
tutti gli scenari reali di
utilizzo nel collaudo del
futuro sistema.
7. Un caso d’uso esemplificativo:
Gruppo ACME Assicurazioni SpA
8. ACME, Gruppo assicurativo multiramo, ha deciso di
farsi realizzare un nuovo sistema integrato che
gestisca tutti i propri processi di business.
Il sistema sarà utilizzato dal proprio personale, dalle
agenzie, dai venditori, dai soggetti convenzionati
(B2B), dal Contact Center e dai clienti finali (B2C).
Dovrà interfacciarsi con sistemi di pagamento online,
Motorizzazione, registro insolventi, Catasto, S.S.N.
Basata su piattaforme di mercato (database, ERP, SOA,
Analytics, CRM), interfaccia utente Web; includerà
alcuni moduli software sviluppati su misura.
Prevederà App specifiche, a disposizione degli utenti.
Tutti i servizi dovranno essere disponibili h24x365gg.
9. Dopo una fase iniziale di progettazione complessiva, il rilascio del nuovo
sistema di ACME viene distribuito su un programma di 9 moduli e altrettanti
progetti, da consegnare, collaudare e fatturare individualmente.
I moduli saranno poi messi in esercizio in momenti differenti.
M0 Progettazione complessiva della soluzione
M1 - Infrastruttura di esercizio
M2 - Gestione prodotti assicurativi
M3 - Interfacce sistemi esterni
M6 - Portali aziende convenzionate
M7 - Portale clienti
M4 - Portale agenzie e venditori
M8 - App dispositivi mobili
M5 - Portale Contact center
10. Il fornitore di ACME è un integratore IT
globale, leader di mercato, che dispone
di metodi di produzione all’avanguardia
e una QA interna molto consolidata.
Tuttavia esigenze di tempo, costi e
conoscenza dei processi di business del
cliente rendono sempre parziale la
copertura del testing di sistema
disegnato dal fornitore, rispetto ai suoi
possibili futuri casi d’uso.
Il problema: validazione dei requisiti
11. I disservizi futuri del sistema, dovuti
alla insufficienza degli scenari d’uso in
fase di collaudo, danneggeranno
l’attività di ACME, ma senza
pregiudicare i pagamenti al fornitore.
La conseguenza
12. E’ un modello operativo di collaudo del
sistema che garantirà ad ACME il collaudo
di tutti gli scenari reali d’uso del futuro
sistema, prima di accettare il rilascio di ogni
modulo e mandarlo in esercizio.
UAT Toolkit
13. Un framework globale per il collaudo di
sistemi complessi che include:
● strumenti di pianificazione del ciclo di UAT
● template documentali pronti
● processi (ruoli + workflow) di esecuzione dei test
UAT Toolkit
14. UAT Toolkit: caratteristiche generali
● E’ basato sui documenti dei requisiti di sistema prodotti a inizio progetto
● E’ di veloce apprendimento da parte degli esperti del Business aziendale
● Prevede la strutturazione rigorosa della documentazione di test, estensibile,
adattabile al progetto e al contesto del processo di business del cliente
● Funziona con qualsiasi piattaforma di Test Management
● Mette in relazione e coinvolge naturalmente lo staff del fornitore e del cliente nel
testing finale e nel miglioramento del sistema
UAT Toolkit esalta il gioco di squadra
15. Documenti
previsti da
UAT Toolkit
UAT Toolkit
Detailed Test Plan
Plano di UAT
Scenario 1 Scenario N
Caso di test 1.1 Caso di test 1.M
Test Script 1.1 Test Script 1.M
Strumento di Test Management
Caso di test 1.2
Test Script 1.2
Scenario 2
❖ Detailed Test Plan
❖ Pianificazione ciclo UAT
❖ Scenari e Casi di test(1)
I test script corrispndenti ai Casi di test
sono creati all’interno dello strumento
di Test Management, impiegato a supporto
delle operazioni di UAT
(1) I casi di test sono documentati nel proprio documento di scenario.
16. ● Gli strumenti di Test management sono
utilizzati per memorizzare i dettagli di
esecuzione dei ogni caso di test, pianificarne
l’esecuzione, registrarne il risultato e produrre
la reportistica di andamento della UAT.
● Dato il numero di test previsti per il collaudo
dei sistemi complessi (migliaia), non è
possibile assicurare una UAT di qualità senza
prevedere il supporto di uno strumento
adeguato.
● UAT Toolkit si integra naturalmente con la
maggior parte degli strumenti di Test
Management.
Lo strumento di Test Management
17. Il facilitatore
In ACME un consulente IT senior ha coordinato l’implementazione di
UAT Toolkit nel progetto, aiutando gli esperti del business del cliente a
estrarre dai requisiti gli scenari di test e successivamente a sviluppare i
casi di test, tramite i quali è stato collaudato ciascuno scenario e quindi
l’intero sistema.
➔ Supporto allo staff ACME nella definizione del processo di UAT
➔ Requirement engineering sui documenti di specifica del progetto
➔ Training e affiancamento al personale esperto del business
➔ Coaching del personale alla produzione dei documenti di test
➔ Formazione sullo strumento di test management opensource (TestLink)
18. Risultati
A seguito dell’adozione di UAT Toolkit, ACME ha:
● documentato ordinatamente tutti i possibili scenari e situazioni d’uso del nuovo sistema:
oltre 2000 diversi casi di test eseguiti;
● migliorato la completezza e correttezza dei requisiti del sistema, grazie alla analisi
effettuata per definire gli scenari di test; sono state prodotte change request al fornitore,
rilasciate prima dell’entrata in esercizio del sistema;
● identificato l’esistenza, nel sistema in rilascio, di malfunzionamenti e altre situazioni di non
compliance verso i requisiti, non rilevate dai test interni del fornitore;
● costruito una libreria di test da riutilizzare per effettuare, a regime, le misurazioni sulla
qualità dei servizi erogati in outsourcing (esempio: amministrazione dei sistemi in esercizio,
Contact Center);
● collaudato ogni rilascio con una copertura dei requisiti superiore al 90%, percentuale
limitata solo dal tempo a disposizione per l’esecuzione dei test.