Qualità del software: il punto di vista dello sviluppatore

28th Jul 2023

Tempo di lettura: 4 minuti

Come fa il team di sviluppo a stabilire che il software che sta implementando è di qualità? Che criteri utilizza per determinarlo? Leggi il post per scoprirlo!

Sommario

 

La qualità del software e parametri interni

La “qualità del software” indica con quale misura un prodotto è in grado di soddisfare determinate aspettative e svolgere le funzioni per cui è stato progettato.

Di qualità del software ne abbiamo già parlato qui, perché può essere percepita su due fronti diversi: quello dell'utilizzatore del software e quello dei suoi sviluppatori. Utenti e developer valutano in modi differenti la qualità del prodotto, attraverso parametri e fattori diversi.

In questo post, affronteremo il tema dal punto di vista del Team di Sviluppo: quali criteri usano gli sviluppatori per stabilire se il software è o non è di qualità?

I parametri interni considerano la qualità percepita dagli sviluppatori e interessano aspetti prevalentemente tecnico-progettuali. Le domande tipiche che un software developer si pone sono:

  • La funzionalità che sto progettando è scritta bene o male?
  • Le tecnologie che sto usando sono le best in class?
  • Le funzionalità che sto implementando risolvono il problema dell'utente? Sono in grado di svolgere quello che dovrebbero?
  • Come faccio a testare il funzionamento del software e a simulare un caso d'uso?

Per rispondere a queste e ad altre domande il team di sviluppo deve monitorare e tenere sotto controllo diversi parametri:

Verificabilità

Per verificare se il software è effettivamente corretto e affidabile, i team IT mettono in piedi strategie di sviluppo basate su una progettazione modulare, l'adozione di linguaggi di programmazione adeguati e adottano sistemi e procedure di monitoraggio e testing capaci di fornire loro una panoramica sempre aggiornata sullo stato di salute della piattaforma, identificare la presenza di anomalie o bug, in modo da agire in modo repentino per risolverli.

Manutenibilità

Quanto è facile apportare delle modifiche al software? Non solo per la risoluzione dei bug, ma anche quando si tratta di aggiungere nuove feature o modificarle. Quanto più la manutenzione della piattaforma è agevole e il suo sviluppo facile da gestire, più è menutenibile.

Riparabilità

Quando è semplice e agevole correggere errori, bug e inefficienze, allora un software è ritenuto riparabile. Attorno a questa proprietà ruotano diversi concetti legati al mondo commerciale e spesso le tecniche adottate dalle aziende che vendono prodotti ingegneristici promuovono la sostituzione del prodotto rispetto alla sua riparazione, ma nel caso di prodotti digitali il contesto è diverso.

In un software, non esistono componenti meccanici soggetti ad usura e riparare un software è possibile solo se la sua struttura è modulare e granulare. In questo modo è più semplice identificare e risolvere il problema, senza intaccare l'intera architettura del prodotto.

Evolvibilità

Quanto è semplice far evolvere e aggiornare un software? Dipende. Se alla base di un progetto di sviluppo c'è una profonda fase di analisi di fattibilità è più probabile che il software venga implementato in modo tale che sia agevole aggiornarlo e portarlo alle versioni successive.

Solo se all'inizio si prevedono delle fasi e delle milestone evolutive e se durante l'implementazione si utilizzano tecnologie che favoriscono lo sviluppo modulare e progressivo del prodotto il grado di evolvibilità del prodotto può essere considerato soddisfacente.

Riusabilità

Quante parti del software possono essere utilizzate per realizzare un altro software? Se fino a qualche anno fa riusare parti di piattaforme già sviluppate era impensabili, oggi questo è diventato la norma. Oggi viene utilizzato tutto.

In questo modo, i costi di sviluppo diminuiscono progressivamente, il livello di maturazione, di stabilità e di affidabilità del prodotto aumentano e il rischio di errori e bug diminuisce bruscamente.

Grazie a specifiche tecniche di progettazione, all'adozione di metodologie agile e alla standardizzazione del processo di sviluppo oggi la riusabilità di un software è diventato un modus operandi praticamente standard.

Con che criteri l'utente misura la qualità di un software?
Portabilità

Più un software può essere usato in ambienti diversi, più è considerato portabile.

Un'app o un software può essere usato in sistemi operativi diversi? O su browser differenti? O su hosting diversi?

La portabilità permette di ammortizzare diverse tipologie di costi, in primis quello del trasporto/trasferimento in ambienti differenti.

Se stai pensando di implementare un nuovo software, contattaci! Ti supporteremo per realizzare insieme una soluzione tecnicamente impeccabile e all'avanguardia!

 

Ilaria Boschetto

Ultime dal blog