Domanda

Nel corso della mia carriera, ho avuto vari successi con il QA. Ammetto che posso prendere personalmente le segnalazioni di bug, ma di solito quando sono realizzate in uno stile a mano libera che è formulato più come un reclamo: " Questo processo ANCORA non funziona! & Quot ;, senza informazioni sufficienti per riprodurre il difetto.

Sono disposto a lavorare sulla mia sensibilità alle critiche, ma sarei anche interessato a strumenti e tecniche che depersonalizzano il processo di controllo qualità e incoraggiano la segnalazione di bug informativi. Attualmente, i bug vengono segnalati via e-mail o talvolta camminando su e verbalizzandoli.

Tutti gli strumenti dovrebbero essere: gratuiti come nella birra e facili da installare / bassa amministrazione. Sono anche aperto a post di blog, libri o articoli su come desensibilizzare me stesso alle segnalazioni di bug.

È stato utile?

Soluzione

  1. Ottieni un vero sistema di tracciamento dei bug. FogBugz, Bugzilla, qualunque cosa (non sono uno shill per Spolsky, ma dirò che FB è di gran lunga il sistema più facile da usare per i nostri tester e facile da usare per loro). Ciò semplifica notevolmente la definizione dei processi di controllo qualità e dei flussi di lavoro di segnalazione dei bug. Ciò dovrebbe contribuire a renderla un'interazione meno personale tra te e i tuoi tester.

  2. Non prenderlo mai personalmente. Ricevo sempre bug, sia attraverso il nostro sistema di tracciamento dei bug sia attraverso interazioni personali. Indipendentemente dal loro tono, rispondo sempre, "Grazie per averlo preso, lo esaminerò". Potrebbero avere una brutta giornata, potresti avere una brutta giornata, chi lo sa? Se non forniscono informazioni sufficienti per la riproduzione e non forniscono tali informazioni su una base sufficientemente coerente, vedere il punto 1 (ottenere un flusso di lavoro reale e attenersi ad esso).

Altri suggerimenti

Dimentica strumenti. Si tratta di comunicazione. Hai bisogno di persone che abbiano la disciplina per dirti esattamente cosa c'è che non va, come sono arrivati ??lì e qualsiasi condizione specifica che ha portato all'evento. Devi anche essere in grado di fornire feedback quando le persone scrivono qualcosa del tipo "È rotto". Lo sviluppo e la gestione della qualità devono parlare di ciò che è necessario da entrambe le parti.

Per quanto riguarda la sensibilità, ho scoperto che l'atteggiamento vince su tutto. Ogni volta che vedi una segnalazione di bug, devi iniziare con l'atteggiamento che "Questo non è un attacco personale; è un'opportunità per risolvere un problema e imparare qualcosa. " Dopo aver impostato il tuo stato d'animo, le tue risposte seguiranno.

Lascerò i consigli sugli strumenti a qualcun altro, poiché ciò che utilizziamo non è "gratuito come nella birra".

La tua prima priorità deve essere quella di favorire la capacità di staccarti dal processo. Questo non può essere un problema personale. Detto questo, cerca di comunicare con il QA (personalmente o tramite il CoC) che la redazione nelle segnalazioni di bug è controproducente ("Questo processo ANCORA non funziona!", Come hai scritto, non è utile). Lo scopo del processo è aumentare la qualità dell'output finale. Tali esclamazioni non promuovono tale obiettivo.

In qualità di QA che è fondamentalmente uno sviluppatore (test di regressione automatizzato), penso di essere stato in grado di vedere entrambi i lati di questo problema.

Come molti altri hanno affermato, questo è un problema di comunicazione, nessuno strumento lo risolverà. Strumenti come bugzilla, migliorano la efficienza della comunicazione, ma richiedono ancora che entrambe le parti lavorino per mantenere aperte le linee di comunicazione.

Ho visto che gli sviluppatori hanno spesso problemi a prendere personalmente i bug, il che porta a cancellarli come "non importanti", "Edge case", "come previsto", ecc. quando il problema è in realtà un problema . Anche se il problema in realtà non è importante, semplicemente condividere la tua valutazione del rischio / rendimento nel correggere un bug aiuta a favorire una migliore comunicazione.

Al contrario, i ragazzi del QA spesso tralasciano i dettagli del bug e i passaggi per riprodurlo (me compreso). Quando come sviluppatore ti imbatti in dettagli mancanti, è tuo compito chiederci maggiori dettagli (e per favore chiedici gentilmente e prontamente). La sensazione peggiore è quando si scrive un bug e lo si invia a uno sviluppatore, quindi non si sente nulla per alcuni giorni e viene chiuso come "Impossibile riprodurre".

Alla fine, la chiave è un feedback rapido e gentile da entrambe le parti . Se io (in QA) sto lavorando con uno sviluppatore che risponde sempre quando gli invio un bug e sembra felice di aiutare a risolvere il problema, sono molto più disposto a prendermi il tempo di fornirgli tutti i dettagli che posso.

Proprio come gli sviluppatori, il QA deve (o dovrebbe avere) standard minimi per aderire. Quando sollevano un problema, devono fornire:

  • un caso di prova ripetibile;
  • uno screenshot; o
  • una descrizione del problema e qualsiasi modello se è incoerente o altro non riproducibile.

Se devo passare al QA e chiedere qual è il problema o come lo hanno prodotto, mi annoio. " Questo non funziona " semplicemente non è abbastanza buono.

In un sistema che ho sviluppato (un sistema di report Web) ho generato tutti i dati di input su ciascun report generato. Quando il QA eseguiva un rapporto e notava un problema, potevano andare in un URL cieco e scaricare un file ZIP che conteneva:

  • la definizione del rapporto;
  • il modello utilizzato; e
  • qualsiasi input di database.

Sul lato sviluppatore ho scritto uno strumento che potrebbe rieseguire il rapporto basato esclusivamente su quel file ZIP. Ciò ha avuto diversi effetti:

  • Se il QA ha sollevato un problema, potrei dire " dov'è il file ZIP? " ;;
  • Una volta che hanno preso l'abitudine, è diventato molto più facile sollevare un problema; e
  • I problemi erano banali da riprodurre e ripetere il test dagli sviluppatori.

L'effetto è stato profondo e penso che evidenzi un problema chiave: agli sviluppatori non piace quando le cose sono difficili da testare, difficili da riprodurre e così via. Allo stesso modo, alle persone con QA non piace nulla che renda il loro lavoro più difficile e che a loro piace tutto ciò che lo rende più facile.

Quindi il mio consiglio per lavorare in armonia con il QA si riduce a:

  • utilizza un sistema di tracciamento dei problemi. Questa è la priorità assoluta n. 1. Tutto ha bisogno di una pista di controllo;
  • hanno qualcuno responsabile del QA che è responsabile della squadra. Possono affrontare questioni di dettaglio insufficiente fornite nelle questioni sollevate dal QA. Piuttosto che andare da ogni tester, vai da questa persona e lascia che se ne occupino come meglio crede. Per prima cosa ciò dovrebbe condurre a standard coerenti;
  • fornisce il maggior numero possibile di strumenti e diagnostica al QA per semplificarne la vita. Ti semplifica anche la vita;
  • non giudicare gli sviluppatori o il QA per i tassi di passaggio. Non produrre nemmeno tali statistiche. Conducono in un ambiente contraddittorio piuttosto che collaborativo. Siete (o dovreste essere) tutti nella stessa squadra;
  • organizzano incontri settimanali sui difetti tra QA, sviluppo e gestione dei progetti per discutere le questioni più recenti, risolte e in sospeso a un livello più macro. Questo può essere utile sia per un punto di vista del monitoraggio del progetto, sia per avere un'idea generale di tutti i principali problemi o aree problematiche che potresti avere.

Ho avuto la migliore esperienza assoluta con il controllo qualità quando ho lavorato insieme per risolvere i bug e / o analizzarli. Né i programmatori né gli ingegneri del QA sono le persone più facili con cui andare d'accordo, e c'è una tensione fondamentale tra questi gruppi.

Quando ho avuto problemi con segnalazioni di bug archiviate in base al mio codice, si avvicina a loro e mi chiede cosa significano esattamente, e / o accompagnami attraverso i passaggi per riprodurli. Molte volte i problemi erano in disaccordo tra il modo in cui leggevo alcuni requisiti e presumevano che avrebbe funzionato. Parli, come gli esseri umani, non secondo una formula, e lo capisci insieme (accettando di non essere d'accordo e lasciare che qualcun altro faccia una chiamata è un'opzione qui).

Un bugreport inviato o archiviato in un bugtracker può sembrare offensivo nel modo in cui è scritto, e sicuramente lo farà poiché punta il dito su "tuo figlio", la tua creazione. Parla con la persona che presenta il bug e potresti notare un obiettivo comune: rendere il mondo / software un po 'migliore.

Il mio atteggiamento nei confronti del QA è stato ripagato dal fatto che è diventata una relazione di reciproco rispetto (anche se nessuno di noi lo ammetterebbe: P), invece di urlare "non un insetto", prima andrei da loro. Invece di affermare all'istante che qualcosa era un insetto, mi venivano incontro per primi. Alla fine, facciamo tutti il ??nostro lavoro. Sono i programmatori a scrivere software e gli ingegneri del QA a fare buchi in quel software. E sono molto grato di aver lavorato con alcune persone molto brillanti che mi hanno detto cosa ho fatto di sbagliato.

Oh, e mai mai usa la frase " Non è un bug, è una funzione " ;.

Sono d'accordo con Paul Williams. Sembra che il processo di QA utilizzato per inviare i problemi debba essere migliorato. E-mail e comunicazione verbale dello stato del problema suggeriscono margini di miglioramento. Concordo anche con i suoi consigli su Sviluppo e QA che lavorano insieme per migliorare il processo e comunicare. Sono un ingegnere addetto al controllo qualità e lo faccio da oltre 10 anni.

Suoni molto maturi e grandi oggetti di scena per non aver fatto esplodere nessuno. È ok scrivere parole per l'effetto di " È ancora rotto " ma chiaramente la persona con QA deve imparare più tatto.

Non sono completamente d'accordo con il messaggio che AnthonyWJones sta inviando. Mi rendo conto che ogni azienda ha la propria cultura, ma il modo in cui ha espresso la sua risposta suggerisce un "lancio sul muro, il controllo qualità è responsabile della qualità, non io". atteggiamento. Niente di sbagliato in questo in particolare, ma non aiuta se si desidera promuovere un ambiente coopertivo e cordiale. Una cultura più sana è quella in cui l'intero team di sviluppo (che include il controllo qualità) condivide la stessa responsabilità per la qualità.

Leggi " Lavorare con te mi sta uccidendo! " Realizza che le persone vogliono solo superare la giornata, guadagnare un dollaro e andare a casa. " Non sudare le piccole cose. "

Gli strumenti per spersonalizzare mi sembrano nella direzione sbagliata.

  • non prendere le cose sul personale
  • sii grato di aver riscontrato un problema prima che il tuo capo o il cliente lo trovasse
  • venire al rapporto con rispetto per i tester; pensa a cosa stanno aggiungendo al processo di sviluppo questo
  • esprimi la tua frustrazione in modi che potrebbero essere presi meglio:
  

" Accidenti, sembra davvero   bug importante che dobbiamo correggere. Grazie   per averlo trovato, amico.

     

Sono confuso   su come riprodurlo. Hai   qualche idea? o ulteriori informazioni? "

  • Ricorda, fai parte della stessa squadra:
  

Wow, quella segnalazione di bug che hai scritto è stata davvero fantastica. Mi ha fatto risparmiare un sacco di tempo nell'isolare il bug. Grazie!

     

Vuoi uscire per una birra? Birra, come in omaggio?

ecc.

Hai sharepoint (o un wiki, ecc.) dove lavori? Sarebbe abbastanza facile impostare un registro dei problemi lì affinché tutti possano vederlo gratuitamente. Non entrerò nella selezione degli strumenti di monitoraggio, ce ne sono molti là fuori. Controlla SourceForge o Codeplex se vuoi libero.

La cosa più importante da aiutare è sicuramente NON prenderla sul personale - stanno facendo il loro lavoro come te. Impostazione di un formato per "accettabile" segnalazioni di bug sarebbero di aiuto, anche con l'e-mail che stai utilizzando attualmente.

Come minimo dovrebbero includere:

  • Natura del difetto
  • Gravità (di solito 1 - 5 con 1 "impossibile continuare" e 5 come cose come errori di ortografia
  • Passaggi da riprodurre.
  • Screenshot (s) se disponibile.

Qualsiasi persona decente di QA dovrebbe già farlo e testare uno script.

Cerca di coinvolgerli maggiormente nei processi del progetto. Abbiamo periodiche retrospettive in cui le persone di controllo qualità hanno la stessa voce degli sviluppatori. Spesso suggeriscono modi in cui possiamo migliorare i processi che semplificano il loro lavoro e facilitano la qualità. E, soprattutto, questi suggerimenti sono discussi e (se concordati) adottati. Ciò rende il controllo qualità e lo sviluppo parte dello stesso processo e non in opposizione.

È anche importante che gli sviluppatori si assumano la responsabilità del proprio codice. Se il QA sta trovando molti bug in un'area, è perché lo sviluppatore ha fatto un lavoro scadente nel scriverlo. Non è perché il QA è difficile. Il team di sviluppo dovrebbe riconoscerlo tutti.

Non credo che gli strumenti possano aiutarti molto.

Chiedi ai QA di scrivere passaggi per riprodurre il problema, preferibilmente iniziando con

  • Esegui applicazione
  • Fai clic su ...
  • ecc.

Questo strutturerà i loro pensieri e ti aiuterà a capire cosa vuole dire il QA.

Il modo migliore che ho trovato per gestire affermazioni come "non funziona". è usare una domanda concisa simile in risposta. " Grazie, però potresti aiutarmi raccontando di più su quello che hai trovato? " ;. Quindi lascia la palla nel loro campo.

Se c'è un reclamo che non hai risposto, puoi puntare alla tua richiesta per ulteriori informazioni. Non fare qualcun altro al lavoro, è compito del QA definire ciò che specificamente non ha soddisfatto la qualità che loro sono responsabili di assicurare.

Per me come membro del team remoto gli strumenti di tracciamento dei bug sono inevitabili. E nella mia esperienza aiutano davvero a "spersonalizzare" il processo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top