Cos’è il Defect Triage?
Defect Triage è un processo dove i tester scoprono il bug e gli assegnano un grado di rischio, di ricorrenza e di gravità. Questo grado essenzialmente dà la priorità al bug da trattare per primo.
Triage però è un termine medico che significa fondamentalmente prova o un tentativo. Quando si arriva al dipartimento di emergenza, la prima valutazione medica viene fatta da un infermiere.
Nel dipartimento di emergenza, viene tipicamente fatto nella stanza del triage. Durante questo tempo è molto importante che il paziente descriva il suo problema all’infermiera in modo che possa valutare accuratamente cosa deve succedere dopo.
In base alla gravità o all’urgenza delle condizioni mediche di un’altra persona, questa potrebbe essere ripresa più velocemente di voi. Questo è esattamente ciò che accade quando un tester di software esegue un triage dei difetti o dei bug.
Assegnano un grado di gravità ad ogni bug e il bug che sembra più grave o il bug che ha più potenziale di compromettere l’integrità del sistema viene preso in considerazione per primo.
Riunione di triage dei difetti
Le riunioni di triage sono facilitate dal leader del QA e sono coordinate con gli analisti di business, il leader IT, il project manager o anche il product manager.
Durante la fase di sviluppo o di test, i tester incontrano molti problemi o bug che continuano a preoccupare tutti. Per occuparsi di questi bug, viene organizzata la riunione di triage dei difetti.
L’obiettivo principale di questa riunione di triage è quello di categorizzare, dare priorità e tracciare i problemi.
Le riunioni di triage avvengono ogni tanto, a volte anche 3 – 4 volte in una settimana a seconda delle dimensioni del progetto, della situazione del progetto, del programma e del numero di difetti. Più fattori giocano un ruolo nel determinare il numero di riunioni di triage necessarie per eliminare un bug una volta per tutte.
Tutte queste riunioni comportano discussioni sulla complessità del difetto, il rischio che comporta, le assegnazioni, le riassegnazioni e i rifiuti. Tutti questi aggiornamenti sono catturati nel sistema di tracciamento dei bug.
Per i migliori risultati, il leader QA dovrebbe inviare il rapporto dei bug con i difetti esistenti o i nuovi difetti per ogni riunione.
Ogni difetto dovrebbe essere analizzato per vedere se la corretta priorità e gravità è stata assegnata. Il motivo principale di questa riunione è di risolvere tutti i problemi in modo tempestivo, fisso e accurato.
Durante la riunione, ogni bug viene classificato in una delle tre categorie:
- AZIONE IMMEDIATA PER RISOLVERE IL BUG: Il difetto rientra in questa categoria per due motivi. La prima ragione è che ci sono sufficienti risorse nel team per risolvere il bug e la seconda ragione è che il bug potrebbe causare problemi in futuro, quindi è importante che il bug venga risolto immediatamente.
- AZIONE SUL BUG IN UN PUNTO DOPO NEL TEMPO: Un bug rientra in questa categoria quando il team sa che non è qualcosa di importante e può essere trattato dopo qualche tempo.
- NO ACTION BUG: Questo significa fondamentalmente che il bug è molto minore e non ha alcun effetto sull’intero sistema. Pertanto, non c’è bisogno di intraprendere un’azione su tale bug.
Steps in Defect Triage
Il team di triage è composto da project manager, tester, test lead, developer, environment manager, test manager e business analyst. Ci sono 3 passi nel triage dei difetti; revisione dei difetti, valutazione dei difetti e assegnazione dei difetti. Ognuno dei passi è discusso in dettaglio qui sotto:
- REVISIONE DEI DIFETTI: Tutto il personale menzionato sopra si immerge in profondità nell’origine e nelle conseguenze di ogni difetto nel tentativo di risolverli.
- VALUTAZIONE DEI DIFETTI: In questa fase, i difetti sono classificati in 2 categorie: da correggere e in attesa. La gravità del difetto è la base principale di questa segregazione. Il personale sopra menzionato prende collettivamente la decisione su quale difetto trattare immediatamente e quale difetto tenere in attesa.
- ASSEGNAZIONE DEL DIFETTO: Ora che il team ha una lista di difetti che devono essere trattati prima, assegna ogni difetto alla persona interessata. Tutto questo viene fatto dopo che il difetto è stato valutato correttamente ed esaustivamente.
Ruoli e responsabilità di ogni membro del Triage Team
- TEST LEAD: Il test lead è colui che inizia tutto. Il test lead invia un invito formale a tutti i membri del triage insieme ad un rapporto dettagliato sui difetti. Il test lead è la prima persona a identificare e assegnare un grado di gravità a ogni difetto. Una delle principali responsabilità del test lead è quella di preparare una presentazione per il team di triage che dia loro maggiori informazioni su ogni difetto. Questa presentazione aiuta i membri del team ad arrivare rapidamente alla radice del problema.
- PROJECT MANAGER: Il project manager gioca un ruolo fondamentale nel dare priorità ai difetti, nel fare la lista dei difetti e nel mediare l’intera riunione. Si assicura anche che tutti i membri del team di triage siano presenti alla discussione. A volte la discussione si scalda ed è qui che il project manager interviene per permettere ai membri del team di esprimere le cose dal loro punto di vista.
- DEVELOPMENT TEAM LEAD: Il development team lead e il project manager danno collettivamente la priorità ai difetti. La funzione principale del development lead è di comunicare i rischi coinvolti e il livello di complessità di ogni difetto. Inoltre, è colui che assegna i compiti ai diversi membri del team di triage.
Ci sono altri membri nel team ma il project manager, il test lead e il development team lead sono le persone chiave. La riunione non arriverebbe a una conclusione se una di queste mancasse.
Cosa succede in una riunione di triage?
La riunione di triage dei difetti è divisa in 3 parti; prima della riunione, durante la riunione e dopo la riunione. Prima dell’inizio della riunione, il test lead manda un rapporto a tutti i membri del team di triage in modo che siano consapevoli in qualche misura degli ultimi bug.
- PRE-RIUNIONE: I tester hanno un ruolo chiave nel pre-meeting. I tester danno informazioni sul bug al team e classificano ogni bug in diverse sezioni sulla base della gravità e della priorità. Quindi, fondamentalmente, la sessione di pre-meeting è di proprietà dei tester.
- DURANTE IL MEETING: Non sempre accade che tutti i problemi in una riunione siano risolti. Alcune questioni in sospeso dalla precedente riunione di triage dei difetti vengono discusse prima di passare alle nuove questioni. Poi si discutono i progressi sulle questioni precedenti. Da questo punto in poi, ogni punto viene annotato sulla gravità dei difetti esistenti. I membri del team prendono collettivamente una decisione su quale difetto deve essere risolto immediatamente e quale difetto può essere rimandato ad una data successiva. Se la scadenza è vicina, i bug con un alto grado di gravità saranno trattati per primi e i bug meno gravi saranno tenuti in sospeso. Tuttavia, se non c’è la pressione delle scadenze, anche i bug più piccoli possono essere risolti all’inizio del progetto. Sulla base di questo, la lista dei bug viene aggiornata ed è qui che entra in gioco l’assegnazione dei compiti. Il test lead ha l’ultima parola nella riunione. Riassume rapidamente l’intera riunione e comunica le linee d’azione immediate ai rispettivi membri del team.
- POST-MEETING: Il MOM (verbale della riunione) viene condiviso con il team di triage dei difetti dopo il completamento della riunione. Questo documento contiene i punti chiave discussi durante la riunione.
Contenuti di un Bug Triage Report
- ID DIFETTO: Ogni difetto ha un numero unico assegnato che lo differenzia dagli altri difetti.
- DESCRIZIONE DEL DIFETTO: Si riferisce a come il difetto causa il malfunzionamento del sistema.
- DATA DI CREAZIONE: È la data in cui il bug è stato notato per la prima volta.
- CREATORE: Il creatore è la persona che per prima ha notato e riportato il difetto.
- GRAVITÀ: Questa è una misura di quanto è grave il bug.
- PRIORITÀ: La priorità potrebbe essere alta, media o bassa. Alta priorità significa che il bug richiede attenzione immediata, media priorità significa che il bug può essere risolto dopo qualche tempo e non richiede un’azione immediata, e bassa priorità significa che il bug non ha alcun impatto significativo o evidente sul progetto e quindi può o non può essere risolto.
- STATUS: Se il bug è nuovo, in revisione, in corso o completato è determinato facendo riferimento allo stato del bug.
- ASSIGNMENT DATE: Questa è la data in cui il bug è stato assegnato al rispettivo personale per la risoluzione.
- ASSIGNED TO: Questo campo ha il nome della persona a cui il bug è stato assegnato per la risoluzione.
- RISOLUZIONE: Cosa si sta facendo per risolvere il bug.
- DATA DI RISOLUZIONE: Data stimata in cui il difetto sarà completamente risolto.
- TEMPO STIMATO: Tempo stimato di risoluzione del difetto.
- TEMPO EFFETTIVO: Tempo totale trascorso per la risoluzione del difetto.
- DESCRIZIONE DELLA CAUSA PRINCIPALE: Questo campo contiene informazioni relative al motivo per cui il bug è apparso in primo luogo.
Perché abbiamo bisogno del Defect Triage?
Il principale vantaggio che si ottiene dal processo è che la tua squadra potrà valutare la gravità del bug, escogitare piani per ripescarlo e arrivare a una conclusione riguardo alle risorse che devono essere allocate per il processo. Il triage dei difetti è usato principalmente nella metodologia di test agile
CONCLUSIONE
Per risolvere il difetto, viene convocata una riunione di triage dei difetti. Il test lead, il project manager e il development team lead devono essere presenti tra tutti i membri del team di triage.
La riunione di triage dei difetti è completata in 3 fasi; pre-riunione, durante la riunione e dopo la riunione. Dopo tutto questo, il test lead prepara un rapporto di triage dettagliato.
Il rapporto ha tutte le informazioni a partire da quando il difetto è stato notato inizialmente fino alla causa principale del difetto.
La frequenza del triage dei difetti dipende completamente dalle dimensioni del progetto. Può essere organizzato su base settimanale, mensile o giornaliera.