Vai al contenuto

  • Da un nuovo report emerge che il Quality Assurance e Testing rappresenta un ostacolo per l’implementazione di DevOps e Continuous Delivery per molte aziende
  • Il panorama del test automation risulta frammentato e sta rallentando l’adozione del Continuous Testing
  • Con il 58% delle aziende intervistate che installa una nuova ‘build’[1] quotidianamente (e il 26% almeno una ogni ora), il Continuous Testing sta diventando una componente necessaria dell’ecosistema di DevOps e sviluppo agile

Milano, 11 marzo 2019 Capgemini e Sogeti, parte del Gruppo Capgemini, hanno pubblicato oggi un report sul Continuous Testing, in collaborazione con Broadcom Inc.’s Enterprise Software Division. Dalla ricerca emerge che il Continuous Testing – ovvero il processo che prevede una validazione veloce ed efficiente delle nuove versioni dei software in ambienti agile attraverso dei test altamente automatizzati – sta prendendo piede nelle grandi aziende, tanto che circa un terzo degli IT manager (32%) afferma che le loro divisioni hanno “completamente abbracciato il Continuous Testing”. Tuttavia, con il 58% del campione che implementa una nuova ‘build’ su base giornaliera (e il 26% almeno una ogni ora), il report evidenzia che le aziende devono continuare a migliorare la propria efficacia in ambito Continuous Testing, snellendo i propri ambienti di collaudo all’interno di un ecosistema di sviluppo agile.

Il report si basa su 500 interviste a IT manager con elevata seniority di aziende medio-grandi (con oltre 1.000 dipendenti) operanti in diversi comparti, tra cui Financial Services, High Tech, Healthcare and Life Sciences, Telecommunications, Media and Entertainment e Manufacturing. Ne è emerso che:

Le aziende devono sbloccare il potenziale dell’automazione nella fase di testing

C’è ancora molto spazio di miglioramento per ottimizzare i processi di Continuous Testing attraverso l’utilizzo della tecnologia: l’automazione viene utilizzata per eseguire solo il 24% dei test, il 24% degli scenari di business end-to-end e per generare il 25% dei dati richiesti per i test.

Un uso maggiore dell’automazione potrebbe migliorare significativamente la velocità delle attività di testing dei team agile; ad esempio, oltre un terzo (36%) degli intervistati ha dichiarato che più del 50% dei tempi di collaudo è dedicato a ricercare, gestire, mantenere e generare dati per i test. Lo studio raccomanda a tutte le aziende di intraprendere azioni significative per rispondere alle esigenze dei clienti e del mercato.

Tra i casi d’uso descritti nel report, c’è quello di una delle principali banche australiane, che aveva oltre 5.000 build per più di cento applicazioni. Sfruttando un’unica piattaforma per la creazione e il rilascio automatizzato, integrata con strumenti di testing e di automazione, la banca è stata in grado di ridurre del 40% le tempistiche dei cicli di rilascio, migliorando il time-to-market e aumentando significativamente il tempo di operatività dell’ambiente di lavoro.

Le aziende necessitano di processi di gestione e abilitazione più smart per i test

La discrezionalità con cui i team di lavoro si sono mossi in autonomia, ha avuto come conseguenza che molte imprese si siano trovate a dovere gestire situazioni fuori controllo, con un’ampia varietà di approcci alla QA e al test automation. Per riprendere il controllo, afferma lo studio, le imprese devono indirizzarsi verso strumenti e metodologie che garantiscano un controllo centralizzato della qualità da parte dei team agile, attraverso linee guida più chiare in ambito QA ed il supporto di tecnologie QA più smart. Uno sviluppo che può portare a risultati promettenti è rendere l’orchestrazione e l’esecuzione dei test molto più smart attraverso l’utilizzo di tecnologie di intelligenza artificiale (IA). Con l’introduzione di funzionalità di machine learning, i sistemi saranno in grado di determinare automaticamente i test necessari nei cicli di rilascio e di produzione.

Il report ha evidenziato la chiara necessità di migliorare trasparenza e gestione dei test agile. Per il 35% dei dirigenti intervistati, gli elementi fondanti per validare la capacità di gestione dell’orchestrazione dei test e dei rilasci sono “una tracciatura completa delle attività di test svolte” ed un “processo consolidato di test e rilascio”. Il 32% del campione, invece, ha sottolineato la necessità di uno “spazio condiviso per la collaborazione tra i team” e di una “visibilità continua dei test e rilasci in esecuzione”.

Se ci si sofferma sulle sfide legate agli ambienti di test, la carenza di una struttura centralizzata finalizzata alla fornitura di un ambiente ready-to-use è sempre più evidente. I team sprecano troppo tempo per ottenere degli ambienti di collaudo completi, tanto che quattro intervistati su dieci (40%) hanno dichiarato che i loro team dedicano più della metà del loro tempo alla creazione e manutenzione degli ambienti di test.

“I prossimi due o tre anni saranno cruciali per il Continuous Testing, in quanto le aziende dovranno risolvere il dilemma della transizione verso team sempre più autonomi, in cui tutti si devono sentire responsabili della qualità, migliorando però al contempo il sostegno e la supervisione centralizzata della stessa, al fine di creare un ambiente di sviluppo agile, che sia realmente in grado di offrire valore in un panorama IT sempre più complesso”, ha dichiarato Francesco Fantazzini, Technology & Innovation Lead, Capgemini Business Unit Italy. “Tra le aree principali di intervento, questo report evidenzia chiaramente la necessità di ampliare i livelli di automazione dei test, rendere più intelligente e rapida la disponibilità degli ambienti di collaudo e dei relativi dati, implementare metriche più efficaci supportate da cruscotti avanzati per il controllo della qualità”.

I team interdisciplinari richiedono nuove competenze e supporto

Negli ultimi 3-5 anni, i ruoli degli sviluppatori e degli addetti ai test si sono evoluti in modo significativo. Secondo lo studio, attualmente gli sviluppatori sono molto più vicini al cliente, con un ruolo di primo piano nel definire la user experience, mentre gli addetti ai test hanno abbandonato una logica di lavoro a silos, collaborando con sviluppatori e team aziendali, e ciò significa che vengono coinvolti molto prima nel processo di sviluppo. I ruoli e le responsabilità di sviluppatori e addetti ai test si stanno parzialmente mischiando, tuttavia è fondamentale avere esperti focalizzati sulla QA e sui test all’interno dei team agile.

Il report prosegue sottolineando che, se da un lato la creazione di team interdisciplinari rappresenta un passo avanti, dall’altro crea delle sfide. È necessario infatti che ogni membro del team abbia una comprensione olistica dell’intero processo, con gli addetti ai test che devono aggiornare le proprie competenze tecniche. Le aziende devono soddisfare i requisiti di aggiornamento delle competenze e utilizzare un nuovo approccio integrato per raggiungere veramente il pieno potenziale del Continuous Testing.

“È difficile sfruttare appieno i vantaggi di Agile e DevOps senza l’automazione del Continuous Test, che consente alle organizzazioni di sfruttare dati e intelligence per accelerare la creazione di software di alta qualità al ritmo richiesto dal business digitale”, ha dichiarato Ashok Reddy, Senior Vice President e General Manager, Enterprise Software Division di Broadcom. “Mentre il divario tra IT e business leader continua a restringersi, nuove pratiche e tecniche DevOps, come l’automazione dei processi di Continuous Testing, cominceranno ad emergere come strumenti necessari per guidare la trasformazione digitale in un mercato iper-competitivo”.

Per scaricare una copia del report, cliccare qui.

Metodologia

Il Continuous Testing Report (CTR) 2019 riunisce i dati delle indagini e i contributi di esperti del settore al fine di delineare le potenziali sfide e gli approcci per trasformare le pratiche di test nell’era di agile e DevOps. Si basa sulle opinioni di diversi esperti del settore di Capgemini, Sogeti e Broadcom, supportate dai risultati di un’indagine globale condotta su 500 decision-maker senior delle divisioni IT di imprese e organizzazioni del settore pubblico in otto paesi diversi.

[1] Una build è un “artefatto prodotto dalla compilazione” e consiste in una migliorìa o una correzione di un software.