M. Crespi, S. Inelli – Mediaset
I. Ene, C. Sobrero – Alten Italia

Sfide metodologiche e tecniche nel testing di sistemi a rapida evoluzione: l’esperienza Mediaset Pay TV

L’evoluzione dei servizi MediaSet Pay TV è fortemente time driven: esiste una notevole aspettativa da parte del business sui tempi e sulla flessibilità dei contenuti di ogni rilascio al fine di poter cogliere nuove opportunità in un contesto dinamico e concorrenziale.

L’utenza consumer a cui i servizi principalmente si rivolgono pone, oltre alle usuali tematiche di affidabilità, anche delle sfide in termini di efficienza e di usabilità dei sistemi.

Questo ha portato la Direzione Sistemi Informativi di Mediaset Pay TV ad investire nell’evoluzione delle metodologie e tecniche di testing del software, con i seguenti obiettivi:

  • Ottimizzare la qualità dei servizi, minimizzando la difettosità in esercizio e limitando conseguentemente i disservizi
  • Contribuire al rispetto delle tempistiche di rilascio
  • Ottimizzare i costi complessivi, anticipando la rilevazione dei problemi (come ben noto, i problemi rilevati in esercizio hanno un costo che cresce in modo esponenziale rispetto alla rilevazione durante le fasi di sviluppo/ test)

Gli interventi si sono concentrati sulle seguenti aree:

  • Processo ed organizzazione
  • Test Strategy
  • Test Environment Management
  • Performance Testing

Dal punto di vista di processo , le attività di Integration Test e Validation sono state meglio definite, con conseguente rafforzamento del ruolo di Test Manager in ambito Sviluppo e del ruolo di Validation Manager in ambito Esercizio; sono state rafforzate le attività di Test Governance sia per quanto riguarda gli aspetti di avanzamento delle attività (con utilizzo di tecniche di Progress Trend Analysis), sia per quanto riguarda i criteri di fine fase e passaggio alla successiva, sia in termini di metriche/ KPI di prodotto e di processo; molto utili anche le attività di “Lessons Learned” che vengono svolte alla fine di ogni rilascio, per individuare le cause di eventuali imperfezioni e tenerne conto per futuri miglioramenti.

Le attività di Test Strategy si sono concentrate su una politica di test ispirata ai syllabi ISTQB e basata sul risk management; viene utilizzato un Test Risk Rating calcolato in base a una serie di criteri quantitativi che determina la prioritizzazione delle attività di test. Questo aspetto è molto rilevante in contesti “time boxed” in cui è necessario operare all’interno di vincoli temporali stretti che implicano il fatto che sia difficile poter eseguire tutti i possibili test (test coverage) e comporta quindi la necessità di selezionare cosa e quanto testare (trade-off). La strategia di test basata su politiche di risk management permette di definire le priorità di esecuzione, assicura che le parti del prodotto a più alto rischio vengano testate in modo prioritario. In questo modo vengono validate con maggior intensità le aree più importanti.

La disponibilità di un piano di Test Master (con copertura di tutte le fasi di test) permette una sincronizzazione con lo sviluppo, in termini di:

  • Pianificazioni di rilasci incrementali, evitando integrazioni “big bang”
  • Condivisione della sequenza di integrazione
  • In alcuni casi particolari, backward planning delle attività di sviluppo per tener conto delle necessità delle attività di test

Per quanto riguarda gli ambienti di Test, sono stati effettuati rilevanti investimenti per garantire la possibilità di avere ambienti di test di integrazione / validazione equipaggiati e gestiti in modo opportuno (sia come dimensionamento sia come dati), in modo che siano pienamente rappresentativi della situazione che si verifica in produzione.

In questo contesto si sono inserite anche le attività di performance testing, per le quali sono state eseguite importanti attività con simulazione di migliaia di utenti concorrenti con mix di vari scenari d‘uso e derivazione delle prestazioni dei sistemi al crescere del carico, fino all’individuazione dei limiti massimi gestibili.

Per il futuro, Mediaset Pay TV intende intensificare/ ottimizzare le pratiche di cui sopra e potenziare le attività di test automation per i regression test, la cui rilevanza cresce ad ogni nuovo rilascio.

Torna alla conferenza