Home topics Che cos'è il monitoraggio dei bug? Monitoraggio dei bug
Monitora i bug con le soluzioni IBM Abbonati per ricevere gli aggiornamenti cloud
 Illustrazione con collage di pittogrammi di monitor del computer, server, nuvole, punti
Cos'è il monitoraggio dei bug?

Il monitoraggio dei bug è il processo di registrazione e monitoraggio dei bug o degli errori durante il test del software. Viene anche definito monitoraggio dei difetti o monitoraggio dei problemi.

I sistemi di grandi dimensioni possono avere centinaia o migliaia di difetti, ciascuno dei quali deve essere valutato e monitorato, e al quale deve essere assegnata la priorità per il debug. A volte, può essere necessario monitorare i bug per un lungo periodo.

"Il monitoraggio dei difetti è un processo importante nell'ingegneria del software, poiché i sistemi complessi e business-critical contengono centinaia di difetti", afferma Tutorials Point. "Uno dei fattori più impegnativi è la gestione, la valutazione e la definizione delle priorità di questi difetti. Il loro numero viene moltiplicato per un periodo di tempo e, per gestirli in modo efficace, viene utilizzato un sistema di tracciamento che semplifica il lavoro". 1

Ottieni flessibilità sul posto di lavoro con DaaS

Scopri in che modo il Desktop as a Service (DaaS) consente alle aziende di raggiungere lo stesso livello di prestazioni e sicurezza della distribuzione delle applicazioni on-premise.

Contenuti correlati

Registrati per ricevere la guida sull'hybrid cloud

Come funziona il monitoraggio dei bug

Un bug del software si verifica quando un'applicazione o un programma non funzionano come dovrebbero. La maggior parte degli errori sono guasti o errori commessi dagli architetti di sistema, dai progettisti o dagli sviluppatori. I team di test utilizzano il monitoraggio dei bug per controllare e segnalare gli errori che si verificano durante lo sviluppo e il test di un'applicazione.

"Un componente importante di un sistema di tracciamento dei bug è un database che registra i fatti sui bug noti", afferma Wikipedia. "I fatti possono includere l'ora in cui è stato segnalato un bug, la sua gravità, il comportamento errato del programma e dettagli su come riprodurre il bug, oltre all'identità della persona che ha segnalato il problema e di eventuali programmatori che possono risolverlo." 2

Nel corso della sua vita, un singolo difetto può attraversare diverse fasi o stati. Eccone alcuni:

  • Attivo: l'indagine è in corso
  • Test: fissato e pronto per il test
  • Verificato: ritestato e verificato dal controllo qualità (QA)
  • Chiuso: può essere chiuso dopo il nuovo test QA o se non è considerato un difetto
  • Riaperto: non fissato e riattivato 3

I bug vengono gestiti in base alla loro priorità e alla gravità. I livelli di gravità aiutano a identificare l'impatto relativo di un problema sul rilascio di un prodotto. Queste classificazioni possono variare per numero, ma generalmente sono una delle seguenti:

  • Catastrofico: causa il fallimento totale del software o la perdita irrecuperabile dei dati. Non esiste una soluzione alternativa e il prodotto non può essere rilasciato.
  • Funzionalità compromessa: Può esistere una soluzione, ma non è soddisfacente. Il software non può essere rilasciato.
  • Errore dei sistemi non critici: esiste una soluzione ragionevolmente soddisfacente. Il prodotto può essere rilasciato se il bug è documentato.
  • Minore: esiste una soluzione alternativa o il problema può essere ignorato. Non influisce sulla versione del prodotto.

Di solito, gli stati e i livelli di gravità vengono monitorati in un database di monitoraggio dei bug. Una buona piattaforma di tracciamento si collega anche a sistemi di sviluppo e gestione del software più ampi: consente di valutare meglio lo stato degli errori e il potenziale impatto sulla produzione e sulle tempistiche complessive.

Perché il monitoraggio dei bug è importante

Si stima che gli sviluppatori di software effettuino da 100 a 150 errori per ogni mille righe di codice.4 Secondo un report del Consortium for IT Software Quality (CISQ): "Anche se solo una piccola frazione, ad esempio il 10%, di questi errori sono gravi, un'applicazione relativamente piccola di 20.000 righe di codice avrà circa 200 errori di codifica gravi". 5

Testare il software è essenziale per isolare e mitigare gli errori. Un buon processo di QA può rivelare centinaia o addirittura migliaia di difetti, e i team di test devono gestirli tutti. L'integrazione del tracciamento dei bug nel workflow di test migliora l'efficienza, aiutando i tester a definire le priorità, a monitorare e a creare report sullo stato di ogni errore.

"Il monitoraggio dei difetti aiuta a garantire che i bug rilevati nel sistema vengano effettivamente risolti", afferma la consulente di Agile, Yvette Francino. "Gli strumenti di monitoraggio non solo forniscono un modo per garantire il follow-through, ma anche parametri preziosi. A seconda dello strumento utilizzato, il team può collegare i difetti al codice modificato, ai test o ad altri dati che consentiranno la tracciabilità o l'analisi delle tendenze dei difetti. Se un certo modulo è pieno di difetti, potrebbe essere il momento di rivederlo e riscriverlo." 6

Idealmente, i test dovrebbero essere eseguiti il prima possibile, quando i bug sono più facili e molto meno costosi da correggere. Uno studio precedente condotto da IBM ha rilevato che la correzione dei difetti riscontrati dopo la produzione o dopo il rilascio può costare 15 volte di più rispetto alla risoluzione nelle prime fasi dello sviluppo.

Molti team utilizzano ora una metodologia nota come test continuo, secondo la quale i test di qualità e il feedback vengono condotti in tutte le fasi dello sviluppo, dalla progettazione al coding, fino all'implementazione. Anche le tecnologie moderne come l'intelligenza artificiale (AI) possono aiutare il processo di test rilevando e analizzando i bug all'inizio del ciclo di vita.

Caratteristiche principali del tracciamento dei bug

Il controllo qualità è fondamentale per sviluppare applicazioni robuste. Gli strumenti di test software, gestione delle modifiche e tracciamento dei bug consentono ai team di scoprire i difetti, misurarne la portata e l'impatto e risolverli.

Nella Harvard Business Review, Nicholas Bowen illustra un processo per la gestione dei difetti. Il primo passo è la classificazione e l'assegnazione delle priorità: "In generale, i team daranno la priorità a due tipi di bug: quelli che causano il crash di un sistema e quelli che sono meno gravi ma potrebbero essere pervasivi.... Successivamente, bisogna decidere il tempo di risposta target per ciascuno livello di gravità. Se il sistema di gestione della qualità è nuovo, il focus iniziale deve essere rivolto alla risoluzione dei bug più gravi entro poche ore o pochi giorni. Mentre utilizzi il tuo sistema, puoi raccogliere dati su due metriche chiave, cioè il tasso di bug in entrata e la produttività delle correzioni dei bug, e modificare i tuoi obiettivi in base alle necessità". Afferma inoltre che le organizzazioni devono creare un sistema in cui i difetti e il tempo necessario per risolverli possono essere esaminati a tutti i livelli, dai CEO in giù.7

Un buon sistema di monitoraggio dei bug può aiutare questo processo fornendo un unico workflow per il monitoraggio dei difetti, il reporting e la tracciabilità del ciclo di vita. Deve inoltre collegarsi ad altri sistemi di gestione per ottenere visibilità e feedback condivisi sia all'interno dello sviluppo del software che nell'organizzazione a livello più ampio. IBM Rational ClearQuest, ad esempio, fornisce una piattaforma centralizzata per il monitoraggio e la segnalazione degli errori. Si integra con altri sistemi di sviluppo e gestione delle modifiche di IBM e aiuta a migliorare la comunicazione e la collaborazione tra sviluppatori, operazioni e team più ampi.

Inoltre, cerca sistemi di test e tracciamento che utilizzino l'AI per rilevare gli errori nelle prime fasi del processo di sviluppo. Può ottimizzare il numero e i tipi di test eseguiti dai team, automatizzare il processo di test e utilizzare l'AI per analizzare i difetti passati e prevenirli in futuro.

Soluzioni correlate
IBM Rational ClearQuest

Software di gestione delle modifiche che aiuta a migliorare la produttività degli sviluppatori adattando le metodologie, i processi e gli strumenti più adatti al progetto e al team.

Esplora Rational ClearQuest
Test software

Ottieni i risultati dei test di sviluppo più velocemente. Riduci i rischi e i costi correggendo i difetti in anticipo.

Visualizza i test
DevOps Insights

Ottieni insight completi dai più diffusi strumenti di integrazione e distribuzione continua per aumentare la velocità, la qualità e il controllo delle tue applicazioni.

Esplora DevOps
Servizi di ingegneria della piattaforma

L'ingegneria della piattaforma è il futuro del DevOps. Accelera il time-to-market (TTM) con l'esperienza degli sviluppatori.

Esplora la consulenza di ingegneria della piattaforma
Risorse Cos'è il test del software?

Scopri i tipi, i vantaggi e l'evoluzione dei test del software.

Sviluppo di software per sviluppatori

IBM Developer fornisce gli strumenti per aiutare gli sviluppatori a creare e mantenere componenti software.

La guida essenziale ai test continui

Scopri come i test continui integrati accelerano lo sviluppo delle applicazioni.

Fai il passo successivo

Vuoi avviare DevOps? Per fornire software e servizi alla velocità richiesta dal mercato, i team devono iterare e sperimentare rapidamente, distribuire frequentemente nuove versioni ed essere guidati dal feedback e dai dati. I team di sviluppo cloud di maggior successo adottano cultura e pratiche DevOps moderne, architetture cloud-native e assemblano toolchain a partire dagli strumenti migliori della categoria per liberare la propria produttività.

Esplora le soluzioni DevOps Fai una prova gratuita