La sempre più concreta necessità di avere un processo di test strutturato, porta a dover individuare il proprio livello di maturità del processo di test per capire come poterne pianificare un percorso di miglioramento e adottare gli strumenti per applicarlo. Il talk si concentra su TPi®, una metodologia che permette di definire il livello di maturità ed identificare possibili percorsi di crescita, e su una possibile applicazione di tool opensource per il Test Management & Defect Tracking.
2. Agenda
Capgemini
TPi per il miglioramento del processo di test
Presentazione Metodologia
Applicazione TPi in un caso reale
Costruzione Matrice Maturità e Indicatori
Revisione Processo di Test
Metodologia per software selection
Applicazione piattaforma open source per Test & Defect Management
Andrea Di Toro 1
andrea.ditoro@capgemini.com – Capgemini Java Factory
3. Capgemini nel mondo
una società globale presente in 40 Paesi
Presente in 40 Paesi
112.000 professionisti
8.700 Milioni € di revenues nel 2010
Quotata alla Borsa di Parigi
Andrea Di Toro 2
andrea.ditoro@capgemini.com – Capgemini Java Factory
4. CAPGEMINI ITALIA
5 uffici in Italia (*)
3 centri ADC, 1 centro ATC e
2 centri AMSC
1.800 professionisti
146 Milioni € di revenues nel 2010
(*) Capgemini Italia nel secondo semestre
2010 ha acquisito AIVE ampliando
ulteriormente sia il numero di risorse che il
numero di sedi sul territorio
Andrea Di Toro 3
andrea.ditoro@capgemini.com – Capgemini Java Factory
5. Testing Offering
Organizational Support & Investment (dedicated R&D, Alliances, certifications, education etc.)
Strategic Offerings Tactical Offerings
Test Process Improvement (TPI) Functional Testing
Test Management and Test Execution Test Automation
Test Process Consulting (TMAP) Performance Testing
Managed Testing Services Security Testing
Independent Third Party QA End-to-end Testing
Package based Testing
Test environment management
Project Based Engagement Based Managed Services Based
Staff augmentation Co-sourcing Flexi Test Resourcing Independent test partner
Andrea Di Toro 4
andrea.ditoro@capgemini.com – Capgemini Java Factory
6. Competenze e Referenze
Competenze
Certificazioni ISTQB (associazione che ha l'obiettivo di supportare il processo di formazione e di
certificazione delle competenze nel Software Testing)
Competenza sulle principali piattaforme di testing di mercato (HP, Microfocus) e Open Source
Esperienze di testing indipendente in contesti come
BNP, Alstom, Fideuram, Equitalia, Groupama, Postevita, Terna
Referenze
Andrea Di Toro 5
andrea.ditoro@capgemini.com – Capgemini Java Factory
7. Agenda
Capgemini
TPi per il miglioramento del processo di test
Presentazione Metodologia
Applicazione TPi in un caso reale
Costruzione Matrice Maturità e Indicatori
Revisione Processo di Test
Metodologia per software selection
Applicazione piattaforma open source per Test & Defect Management
Andrea Di Toro 6
andrea.ditoro@capgemini.com – Capgemini Java Factory
8. Il Processo di Test
Walkthroughs
Test Acceptance
Requir- Installa-
require- Test
ements tion
ments
High level Test the Build the System
Design Design Reviews & System Test
Inspections
Detailed Test the
Specifi- Specifi- Develop Integration
cations caties Software Test
Code Unit
Test
Il V-model prevede che il processo di test inizi con la verifica dei requisiti
Andrea Di Toro 7
andrea.ditoro@capgemini.com – Capgemini Java Factory
9. Servizi di Testing
• E’ la gestione integrata dei test case dalla loro progettazione alla loro
Test Management esecuzione
• Il test funzionale verifica la corrispondenza con i requisiti di business.
Functional & Integration • Il test di integrazione verifica il corretto funzionamento di un sistema
test integrato composto da diversi sottosistemi
Test Execution & Defect • Esecuzione dei test case, apertura dei difetti tramite le funzionalità del tool
Management di testing e gestione del ciclo di vita dei defect (dall’apertura alla chiusura)
• Reporting periodico relativo alle fasi di test execution e defect
Reporting management.
Andrea Di Toro
andrea.ditoro@capgemini.com – Capgemini Java Factory
10. Servizi di Testing
• Simulare in “laboratorio” il carico di utenti previsto in esercizio al fine di
Performance Test individuare in anticipo “colli di bottiglia “che possono comportare indisponibilità
o tempi di risposta inaccettabili per l’utente (Stress, Load e Stability Test)
• Eseguire Test nell’intorno funzionale delle ultime modifiche effettuate per
Regression Test assicurare che l’introduzione di nuove funzionalità non abbia introdotto difetti in
funzionalità preesistenti.
• Eseguire dei test automatici. Si applica soprattutto ai test case con un elevato
numero di combinazioni di dati in input (es: tariffatori, …). Il tool di test
Test Automation automation registra la navigazione di un tester e genera un “robot” che ripete
automaticamente la navigazione per tutti gli input forniti in un file (es: excel)
• Supporto agli utenti in fase di collaudo con la predisposizione dei test case e la
Supporto al Collaudo relativa esecuzione.
Andrea Di Toro
andrea.ditoro@capgemini.com – Capgemini Java Factory
11. Maturità del processo di testing
Maturità del processo di testing Capgemini ha sviluppato un framework per l’assessment e il
miglioramento del processo di testing basato sulla combinazione
di due approcci: Test Process Improvement (TPI®) e Quality
Blueprint.
Un processo di testing non maturo può provocare:
Conflitti tra business e IT
Costi elevati (risorse, set-up e manutenzione del
test center)
Scarsa qualità dei prodotti
Time-to-market insufficente
Mollte aziende sono consapevoli della necessità di
mogliorare i processi di test per incrementare la
qualità del portafoglio applicativo.
Quali sono i passi necessari ?
Andrea Di Toro 10
andrea.ditoro@capgemini.com – Capgemini Java Factory
12. TPi: gli elementi distintivi 1/2
Unità di misura del
modello, espressa in forma
di sentenza specifica per
analizzare lo stato attuale
della singola Key Area
Seguendo l’approccio CMMI, TPI® è un valido supporto alla verifica della maturità del processo di testing di una organizzazione allo
scopo di aumentarne l’efficacia attraverso una serie di azioni di miglioramento mirate. TPI® è flessibile rispetto alla metodologia di
sviluppo software.
TPI® consente una analisi dettagliata del processo di testing categorizzando le caratteristiche del processo in 16 aree
chiave, suddivise in 3 macro gruppi: Stakeholder Relations, Test Management, Test Profession
Andrea Di Toro 11
andrea.ditoro@capgemini.com – Capgemini Java Factory
13. TPi: gli elementi distintivi 2/2
Le aree di miglioramento nel processo di testing vengono posizionate rispetto a 4 Livelli di Maturità:
• Optimizing: adattamento costante in base ad ogni cambiamento delle circostanze
• Efficient: fare le cose nel modo giusto
• Controlled: fare le cose giuste
• Initial: attività di test ad hoc
Andrea Di Toro 12
andrea.ditoro@capgemini.com – Capgemini Java Factory
14. TPi: le fasi del processo
Capire le necessità per il
L’obiettivo prefissato è stato miglioramento del processo
raggiunto? Continuare o cambiare di test
direzione?
Determinare dove e quale aspetti
migliorare per raggiungere l’obiettivo
Applicare le azioni di miglioramento individuato
Esaminare la situazione del processo
di test attuale
Stabilire un piano operativo
prendendo in considerazione
dove, come, con quali tempi e con
quali risorse attuarlo Stabilire i miglioramenti nelle diverse
key area per raggiungere l’obiettivo
Andrea Di Toro 13
andrea.ditoro@capgemini.com – Capgemini Java Factory
15. Test Maturity Matrix
La Test Maturity Matrix è popolata attraverso
interviste agli attuali stakeholder del processo di
test con l’ausilio di un apposito tool.
Andrea Di Toro 14
andrea.ditoro@capgemini.com – Capgemini Java Factory
16. Benchmark
Benchmark con Blueprint Framework Analisi comparativa
I risultati dell’assessment sono inseriti nel tool
Quality Blueprint che contiene dati comparabili
di centinaia di test assessment eseguiti da
Capgemini
L’analisi comparativa consente di capire come
altri hanno indirizzato i singoli obiettivi ed è un
punto di partenza per definire le azioni di
trasformazione del processo di test
Andrea Di Toro 15
andrea.ditoro@capgemini.com – Capgemini Java Factory
17. Pianificazione Roadmap
Definizione della roadmap Improvement Roadmap
La roadmap è sviluppata trimestre per trimestre e comprende diverse
discipline. Sono definiti dei percorsi di miglioramento paralleli come
stima, metodologia di test, struttura del team.
Le azioni di trasformazione sono inserite in una
roadmap. TPI® contiene “suggerimenti di
miglioramento”, “best practices” e “how to”;
TPI definisce dei checkpoints, ragruppati in
cluster per aiutare a definire i passi di un
percorso incrementale verso il miglioramento.
Andrea Di Toro 16
andrea.ditoro@capgemini.com – Capgemini Java Factory
18. Agenda
Capgemini
TPi per il miglioramento del processo di test
Presentazione Metodologia
Applicazione TPi in un caso reale
Costruzione Matrice Maturità e Indicatori
Revisione Processo di Test
Metodologia per software selection
Applicazione piattaforma open source per Test & Defect Management
Andrea Di Toro 17
andrea.ditoro@capgemini.com – Capgemini Java Factory
19. Assessment Processo
Periodo di osservazione: Giugno 2011 – Febbraio 2012
Fase Obiettivo della misura Descrizione misura ID Valore
Verificare la copertura dell’analisi funzionale rispetto alle Numero di documenti di analisi funzionale rispetto al numero
DOC01 36%
attività totale delle attività
Misurare il numero di CR derivanti dalla non coerenza o Numero di CR emerse su attività con presenza di documenti
Requisiti DOC02 20%
non accuratezza dell'analisi di analisi rispetto al totale delle CR
Misurare il livello di qualità e accuratezza della documen- Test Case eseguibili rispetto al numero totale dei Test Case
DOC03 91%
tazione di analisi ai fini della progettazione dei casi di test progettati a partire dalla documentazione di analisi
Numero di collaudi che non hanno fatto emergere anomalie
Sviluppo Misurare la qualità del software rilasciato al collaudo tali da far invalidare o rinviare il collaudo stesso rispetto al UT01 25%
numero di collaudi totali
Misurare il livello di focalizzazione sulle attività di test Effort impiegato nelle attività centrali per il test (review,
rispetto all'effort speso per attività di supporto come il progettazione, esecuzione) rispetto all’effort totale delle GA01 90%
reporting. attività del team per settimana
Collaudo TC eseguiti rispetto al numero totale dei TC eseguibili, cioé
Misurare la disponibilità dei dati per poter eseguire i test quei TC progettati a partire da una documentazione che DP01 88%
rispecchia la reale esigenza del business
Verificare l’accuratezza delle fasi dei processi correlati % di anomalie con severità Media e Bassa DS01 36%
Andrea Di Toro 18
andrea.ditoro@capgemini.com – Capgemini Java Factory
20. Revisione Processo di Test
Andrea Di Toro 19
andrea.ditoro@capgemini.com – Capgemini Java Factory
21. Improvement Plan
assicurarsi che i tool siano
Improvement condivisi con tutti gli utenti
(key area: test profession;
Suggestion maturity level: controlled)
Actual Test Maturity Matrix
Test Improvement Plan
Installare i tool e organizzare
Improvement
la formazione agli utenti per
Action poter gestire in maniera
strutturata le informazioni
relative alle attività di test
eseguite
Improved Test Maturity Matrix
Andrea Di Toro 20
andrea.ditoro@capgemini.com – Capgemini Java Factory
22. Software Selection: OSMM
Cos’è OSMM?
L’ Open Source Maturity Model è un modello utilizzato per il processo di software selection in grado di fornire un metodo per
stabilire dei criteri oggettivi utili ad affrontare un’analisi comparativa di prodotti open source.
SOFTWARE SELECTION
Andrea Di Toro 21
andrea.ditoro@capgemini.com – Capgemini Java Factory
23. Test Tool Evaluation
Fitnesse Test Link RTH Turbo
Product 0,72 0,74 0,72
Integration 0,62 0,7 0,65
Use 0,6 0,77 0,76
Adoption 0,74 0,78 0,6
Bugzilla Mantis JTrac
Product 0,76 0,76 0,72
Integration 0,7 0,7 0,75
Use 0,76 0,8 0,68
Adoption 0,86 0,74 0,66
Andrea Di Toro 22
andrea.ditoro@capgemini.com – Capgemini Java Factory
24. OIL (Online Interactive heLpdesk)
Creazione dei template per la
Installazione della progettazione e il caricamento dei Definizione di un possibile
piattaforma e requisiti e dei test case miglioramento del processo
integrazione con di test
ambienti di test
Applicazione della
metodologia TPi Revisione logica del processo di
2 componenti integrati per gestire gestione dei difetti
il processo di Test e la lavorazione
delle anomalie
16 requisiti
40 test case
5 mesi
5 build
3 bug
Test Management & Defect Management
Andrea Di Toro 23
andrea.ditoro@capgemini.com – Capgemini Java Factory
25. Riferimenti
Web
• TMap Web Site: http://www.tmap.net/en/tpi-next
• Sogeti Web Site (Società del gruppo Capgemini): http://www.sogeti.com
Libro
• Gerrit De Vries, Ben Visser, Loek Wilhelmus - TPI Next: Business Driven Test
Process Improvement - UTN Publishers, 2009
Andrea Di Toro 24
andrea.ditoro@capgemini.com – Capgemini Java Factory
26. Domande
Andrea Di Toro 25
andrea.ditoro@capgemini.com – Capgemini Java Factory