Skip to main content

Ogni organizzazione sul pianeta è coinvolta nell'ingegneria della qualità, che ne sia consapevole o meno. Il semplice atto di creare un prodotto o un servizio implica affrontare la sfida di offrire un'elevata qualità. Ignorare la qualità ha quasi sempre portato a risultati disastrosi

Infatti, solo negli Stati Uniti, il costo del software di scarsa qualità nel 2018 è stato di 2,8 trilioni di dollari.

Tutti sono alla ricerca del sacro Graal dei prodotti e servizi di qualità: più clienti e crescita, costi più bassi e margini di profitto più elevati. La disciplina dell'ingegneria della qualità nasce da questa ricerca, che non può certo dirsi conclusa.

Want more from The CTO Club?

Create a free account to finish this piece and join a community of CTOs and engineering leaders sharing real-world frameworks, tools, and insights for designing, deploying, and scaling AI-driven technology.

This field is for validation purposes and should be left unchanged.
Name*

L'ingegneria della qualità è un insieme di metodologie, processi e principi che aiutano un'organizzazione a migliorare i propri processi aziendali per raggiungere un certo livello di qualità per i suoi prodotti o servizi. Da professionista intelligente dell'assicurazione qualità, avrai notato la definizione circolare che coinvolge la parola qualità, il che ci porta alla prossima domanda:

Cos'è la qualità? Quali sono gli aspetti della qualità?

La qualità non è facile da definire poiché presenta diversi aspetti che sono soggettivi. Infatti, il filosofo e autore Robert Pirsig ha scritto un libro sulla qualità: “Lo Zen e l’arte della manutenzione della motocicletta”, nel quale enuncia la sua Metafisica della Qualità.

Curiosamente, il suo libro fu rifiutato da 121 editori che lo considerarono di bassa qualità. Pirsig però perseverò ed il 122° editore pensò: “Questo libro è straordinario, probabilmente è un'opera di genio…” e lo pubblicò, dopodiché ne furono vendute oltre 5 milioni di copie.

Forse Pirsig aveva ragione quando diceva che la qualità è difficile da definire, ma la comprendiamo tutti in modo intuitivo. Tuttavia, noi ingegneri non possiamo e non vogliamo lasciar correre, quindi proveremo a stilare un elenco degli aspetti della qualità.

Aspetti della qualità.


In tutto il mondo, l'industria manifatturiera utilizza vari standard e approcci di qualità per una migliore standardizzazione, come ISO 9001, Six Sigma e Total Quality Management.

Ingegneria della qualità nel software

L'industria del software ha compreso che l'approccio correttivo prescritto da assicurazione e controllo qualità – trovare e correggere i bug dopo il fatto – ha raggiunto il suo limite.

L'ingegneria della qualità offre una nuova via con un approccio proattivo e preventivo all'implementazione di sistemi di qualità che risolvono il problema della qualità che affligge lo sviluppo software in generale e quello dei prodotti in particolare.

Mettendo da parte la filosofia “la qualità è negli occhi di chi guarda”, l’ingegneria della qualità nel software affronta due aspetti per garantire alta qualità:

Qualità funzionale, che riguarda gli aspetti funzionali di un prodotto o soluzione software: fa ciò che ci si aspetta? È conforme alle specifiche di progettazione?

Qualità strutturale che riguarda gli aspetti non funzionali del software: è robusto? Sicuro? Altamente disponibile? Facile da mantenere? 

Upgrade your inbox with more tech leadership wisdom for delivering better software and systems.

Upgrade your inbox with more tech leadership wisdom for delivering better software and systems.

This field is for validation purposes and should be left unchanged.
Name*

L'evoluzione e il ciclo di vita dell'ingegneria della qualità nel software

L'ingegneria della qualità del software sta vivendo una nuova rinascita, con le organizzazioni che fanno di tutto per prevenire o individuare i difetti il prima possibile.

Questo ha portato a una serie di nuovi strumenti di QE e metodi, tra cui automazione dei test, test shift-left, DevOps, DevSecOps, Integrazione Continua e Distribuzione Continua (CI/CD), SDET, sviluppo guidato dai test (TDD) e sviluppo guidato dal comportamento (BDD), gestione del rischio e intelligenza artificiale.

Tutti questi elementi combinati costituiscono un approccio emergente all'ingegneria della qualità.

Il ciclo di vita dell’ingegneria della qualità.

Il ruolo di dati e metriche nell'ingegneria della qualità

Edwards Deming, guru della gestione della qualità, ha aiutato i processi produttivi giapponesi a diventare una potenza mondiale negli anni '80 e '90.

È ben noto che dati e metriche sono fondamentali per la qualità. In effetti, sono uno dei modi principali per determinare se la tua iniziativa di ingegneria della qualità sta prendendo piede e funzionando. Ma di che tipo di metriche stiamo parlando?

Utilizzare le metriche per innescare cambiamenti è un processo non banale.

Oggi è possibile ottenere molti più dati di quanti ne sappiamo gestire, ed è facile affogare in questo vero e proprio oceano. Perciò, è importante capire quali dati e misurazioni sono rilevanti. Per parafrasare l'On. Rumsfeld, "Attenti agli sconosciuti sconosciuti!"

Mi sbilancio e dico che le metriche che misurano i risultati finali e gli esiti sono le più indicative di tutte. Dopotutto, le iniziative di ingegneria della qualità devono portare a un business più forte e migliore. Questo include metriche come:

  • Volume di vendite del prodotto
  • Soddisfazione del cliente – in particolare la raccomandazione del cliente verso altri
  • Volume e tipo di richieste di assistenza

Tuttavia, arrivare a queste metriche può richiedere dai pochi mesi a un paio d’anni dall’implementazione, e Nessuno ha tutto quel tempo!

Per aiutarci a tenere traccia del miglioramento della qualità man mano che avviene, usiamo metriche come:

  • Il costo della qualità
  • Metriche sui difetti
  • Copertura
  • Metriche di performance e rilascio
  • Metriche di produttività, efficienza ed efficacia.

In definitiva, tutti i dati e metriche dovrebbero aiutare i leader dell’ingegneria della qualità a identificare preventivamente i rischi, minimizzare i difetti e il debito tecnico e aumentare l’agilità e il time-to-market.

Perché l’ingegneria della qualità è importante

STORIA VERA: agli inizi della mia carriera, ho gestito un team software che consegnava soluzioni ai clienti. Un bel giorno, sono stato a una call pre-vendita con un potenziale nuovo cliente – chiamiamoli “Consulenti Finanziari Frustrati Spa” – che desiderava una web application per la gestione delle ore e delle spese. Frustrated aveva oltre 1.000 consulenti che lavoravano per i loro vari clienti.

Mi sono incontrato con il loro CTO, che mi ha spiegato che erano esausti dal loro sistema di timesheet personalizzato (che qualcuno aveva impiegato nove mesi a sviluppare) e che presentava strani comportamenti. Ogni volta che un dipendente cliccava su un link per compilare una nuova scheda oraria, vedeva un modulo simile a questo:

Ora, come ingegnere QA smart, avrai senz’altro notato il problema grande come il Grand Canyon in questo modulo.

Per quale motivo un utente dovrebbe mai dover scegliere il proprio nome da un elenco di dipendenti!?

Molti utenti, con cose più urgenti da fare, si dimenticavano di selezionare il proprio nome dall’elenco, lasciandolo sul valore predefinito di Amy Adams, che aveva la sfortuna di essere il primo nome in ordine alfabetico.

Ma la storia non finisce qui. La povera Amy Adams era veramente infastidita da questa situazione, così venne risolta aggiungendo un dipendente fittizio chiamato A. Aardvark! Non sto scherzando!

Così, ogni settimana, la responsabile della fatturazione scopriva che A. Aardvark era balzato in testa alla classifica della produttività con non meno di 300-500 ore lavorate! Questa povera signora doveva passare metà giornata ogni settimana a trovare e inseguire chi aveva commesso l’errore per farsi correggere i dati.

E fu così che A. Aardvark divenne il dipendente più produttivo del mese per diversi mesi di seguito, con una produttività da 6 a 10 volte la media! Ve lo giuro, non potrei inventarmi una cosa simile nemmeno se lo volessi…

Foto di archivio dell’instancabile Dipendente del Mese, A. Aardvark.

Comunque, la storia si conclude felicemente per i dipendenti di Frustrated. In un paio di mesi, abbiamo sviluppato una moderna applicazione per le schede orarie che non richiedeva più ai dipendenti di selezionare il proprio nome da una lista, e così vissero tutti felici e contenti!

Ecco qua, amici, questa è la ragione per cui l’ingegneria della qualità è importante.

Cosa fa un ingegnere della qualità?

Gli ingegneri della qualità del software sono una parte integrante del team di progettazione e controllo qualità del software. Supervisionano il processo di sviluppo software, dall’ideazione all’esecuzione, per garantire che il software rispetti gli standard di qualità prestabiliti.

Gli ingegneri della qualità certificati utilizzano tecniche di miglioramento continuo e vari strumenti di controllo qualità per garantire la qualità. Misure come azioni correttive e azioni preventive servono a eliminare qualsiasi carenza nella qualità.

Per rispondere alle diverse e impegnative esigenze delle organizzazioni software di oggi, gli ingegneri della qualità del software ricoprono diversi ruoli, tra cui progettazione, SDET, testing e altro. In genere, si tratta di un ruolo impegnativo che richiede molteplici competenze per essere svolto al meglio, tra cui problem-solving, troubleshooting, controllo statistico dei processi, testing del software, automazione e controllo qualità.

L’American Society for Quality (ASQ) offre la certificazione Certified Software Quality Engineer per gli ingegneri della qualità.

Unisciti per scoprire di più

La transizione dal controllo qualità e dall’assicurazione qualità verso l’ingegneria della qualità è ormai ben avviata. L’ingegneria della qualità ha cambiato il modo in cui si crea il software e continua a evolversi.

Potenzia la crescita del tuo SaaS e le tue competenze di leadership. Iscriviti alla nostra newsletter per ricevere le ultime novità per CTO e futuri leader tecnologici. Ti aiuteremo a crescere in modo più intelligente e a guidare meglio con guide, risorse e strategie dei migliori esperti!