Parlare di qualità del codice significa puntare all’essenza. “Nel collaudo del software e nell’assicurazione della sua qualità, il punto chiave è ottenere applicazioni che possiedano intrinsecamente un livello qualitativo elevato, ossia soddisfino, in maniera corretta, coerente e completa, tutti i requisiti per cui sono state sviluppate”, così Mariagrazia Brunetti, fondatrice e Managing Director di Quence, spiega il motivo ispiratore all’origine del nome della stessa società: “Quence significa ‘Quality in essence’, ed esprime la nostra volontà di raggiungere questo obiettivo, attraverso l’utilizzo di soluzioni innovative per l’automazione delle attività di testing. Soluzioni effettivamente in grado di aiutare le persone che svolgono questo tipo di mansione”.
In passato, infatti, aggiunge la manager, troppe volte i tester si sono trovati a utilizzare soluzioni d’automazione che richiedevano sforzi d’implementazione e manutenzione molto elevati: e, non possedendo queste competenze di sviluppo, hanno dovuto affidarsi a esperti capaci di eseguire tali operazioni.
Parola d’ordine automatizzare
Per ovviare al problema, e rendere i tool di automazione dei test abbordabili anche da parte dei business tester, competenti sulle funzionalità applicative ma privi di un bagaglio tecnico approfondito in materia di sviluppo del codice, Quence ha avviato una fase di esplorazione per trovare soluzioni innovative nel settore ‘test automation’. “Mi riferisco in particolare a Tosca, soluzione sviluppata dalla società austriaca Tricentis e punto di riferimento in questo mondo. Oggi la utilizziamo frequentemente, dopo averla portata sul mercato italiano, assieme ad altre, indicate per altre tipologie di test”.
Oltre ad aiutare i propri clienti a migliorare i loro processi, principalmente di test, Quence è attiva in altri settori, come i processi di supporto allo sviluppo software, in particolare nel mondo Agile e DevOps. “E poi c’è l’automazione, perché tutte le nuove metodologie di sviluppo software hanno un unico mantra, che è automatizzare: automatizzare tutte le attività per realizzare il modello di integrazione continua”.
Quence opera in ambito business. I suoi sono prevalentemente grandi clienti: banche, istituti finanziari, società della grande distribuzione, in cui i problemi di definizione dei requisiti, di verifica e validazione del codice sono sentiti, perché, tipicamente, i software sono ‘business critical’: “Una volta era molto più marginale, ma oggi – precisa Brunetti – il software diventa parte integrante del core business aziendale in qualunque settore. Penso, ad esempio, alle applicazioni di mobile banking e Internet banking, il cui funzionamento, continuo e affidabile, diventa ora più critico rispetto a quello di uno sportello bancario tradizionale”.
Creazione di competenze
Nell’attuale contesto di trasformazione digitale, Quence forma i propri consulenti sia a livello metodologico, sia sull’uso pratico dei tool di automazione da implementare sul campo, nei vari progetti che sviluppa per i clienti. “I nostri collaboratori devono poter aiutare le imprese utenti a migliorare i propri processi di quality assurance, fornendo ad esse gli strumenti per verificare qual è la qualità del proprio software e quindi, indirettamente, per migliorarla. Non è infatti chi esegue il test che migliora la qualità del codice, ma questa attività permette di controllare che determinate funzionalità siano state implementate correttamente da chi il software lo ha sviluppato”, spiega la managing director.
Approccio metodologico
Dati ed esperienze raccolti sul campo indicano che, spesso, l’80% del valore di un’applicazione software è ricondotto al 20% delle sue funzionalità: anche su queste basi, la strategia di Quence parte dalla definizione dei requisiti di business che rappresentano un fattore di rischio più elevato per l’impresa utente, per poi elaborare test mirati alla verifica puntuale di tali criticità: “Per quello che abbiamo osservato, nelle organizzazioni sono previsti molti test, sui quali però poi spesso nessuno sa dire quanto davvero coprano i requisiti del software considerati critici”.