Aiutando i tester che non hanno conoscenze di dominio specializzate

3

Sono un team responsabile di un progetto che sviluppa software di ingegneria specializzato. I miei sviluppatori hanno generalmente lauree avanzate e la conoscenza del dominio necessaria per lavorare con il software che sviluppiamo, ma i miei tester non hanno le conoscenze di base necessarie. Non ho molta flessibilità nel determinare la composizione della mia squadra, quindi non posso assumere nuovi tester con un background ingegneristico. Che cosa posso fare per aiutare il mio team di test a capire meglio il software - o in alternativa, come posso rendere più facile per loro eseguire test "black box" per i quali non avranno bisogno di quella conoscenza?

    
posta Ernest Friedman-Hill 02.03.2015 - 19:49
fonte

3 risposte

5

Se il tuo team di test non ha le conoscenze di base necessarie, non sarà in grado di testare il tuo prodotto in modo adeguato.

(Questo è un caso speciale di un problema più generale: se un membro del team non ha le conoscenze di base necessarie, non sarà in grado di svolgere adeguatamente il suo lavoro.)

Dovrai capire come spiegare alla tua gestione e al personale delle risorse umane che i membri del team di test hanno bisogno di queste conoscenze di base per svolgere il proprio lavoro. Ciò probabilmente avrà l'indesiderato (dal punto di vista della direzione) effetti collaterali del costo del denaro, nella forma di (a) richiedere alla società di spendere di più per i loro stipendi, per poter assumere persone con le conoscenze richieste, o (b) richiedere alla società di spendere denaro per insegnare / addestrare (e poi probabilmente doverli pagare di più per mantenerli, ora che hanno le conoscenze).

Non vorresti mai, ad esempio, chiedere a un non pilota di prendere un nuovo aereo per il primo test di volo. Ha bisogno di quella conoscenza. POTRESTI chiedere a un non pilota di provare a testare un nuovo equipaggiamento avionico, ma saresti stato intelligente a ficcarlo in un simulatore o a mandarlo con un istruttore, così avrà un'idea di ciò che il pilota sta affrontando in Il mondo reale. (I piloti HATE hanno complicato l'avionica, non ho davvero capito perché fino a quando non ho fatto uno scenario sim, e ho imparato in prima persona. Hanno le mani piene con l'aereo e la missione, e tutto ciò che aggiunge carico di lavoro è THE ENEMY.)

Avere gli sviluppatori a scrivere le procedure di test non è la risposta. Anche se si vuole sostenere che gli sviluppatori hanno più familiarità con il prodotto e più in grado di farlo, è anche necessario testare i percorsi che gli sviluppatori NON hanno familiarità con. Esempio: alcune funzioni su un determinato velivolo devono essere eseguite in un ordine molto specifico. Un certo pilota operativo, durante un test di certificazione MOLTO alto profilo, ha deviato dalla procedura e ha dimostrato un problema MAJOR precedentemente sconosciuto, che ha causato il fallimento del test di certificazione all'istante - e con ottime ragioni. L'aereo DAVVERO non avrebbe dovuto fare quello che ha fatto. (Sono deliberatamente vago qui. Ho le mie ragioni.) Un buon ingegnere di test, che gli ha detto "Fallo così", sta andando a deviare, per vedere cosa succede se non lo fa "fallo così" . Ecco cosa fanno i tecnici di test.

Nota: quando è stato chiesto perché il pilota ha deviato dalla procedura, il conduttore ha risposto chiedendo "Conosci il pilota"? ". Wry sorride per la stanza.

    
risposta data 02.03.2015 - 20:56
fonte
4

I tuoi sviluppatori dovranno scrivere istruzioni di test molto dettagliate ed esplicite fino a quando i tester non impareranno il dominio e l'app fino al punto in cui potranno scrivere da soli. Fai testare i video di allenamento dalle registrazioni dello schermo proprio come farebbero per la formazione degli utenti.

Potresti scoprire alcuni bug interessanti che vengono scoperti perché i tuoi tester non pensano come ingegneri o programmatori.

Se ciò non è fattibile, qualcuno della tua azienda deve affrontare il modello attuale di test di business e lasciare spazio a persone più qualificate.

    
risposta data 02.03.2015 - 20:42
fonte
3

I tuoi tester non devono pensare come uno sviluppatore - per i test black-box hanno bisogno di pensare come un utente del tuo software e dovrebbero avere conoscenze aggiuntive su come testare il software in generale. Quindi supponiamo che i tuoi tester siano abbastanza intelligenti da apprendere quelle cose in un ragionevole lasso di tempo, addestrare i tester nello stesso modo in cui istruisci i tuoi utenti e farli apprendere le basi del test. Per la prima parte, se stai sviluppando un prodotto professionale, immagino che tu abbia già una procedura standard. Per la lettera, ci sono libri, corsi e molto altro materiale disponibile sul Web.

E se l'utilizzo del tuo software richiede un tecnico completamente qualificato, avrai bisogno che i tuoi tester abbiano le stesse competenze, almeno alcune abilità di base in quel campo. Ad esempio, quando sviluppi un software CAD, hai bisogno di persone addestrate nel disegno tecnico, se sono utenti o se sono dei tester. Probabilmente i tuoi tester non devono essere bravi come i tuoi utenti nel dominio, ma una certa conoscenza del dominio sarà essenziale. Ma forse potresti vedere questo anche come una possibilità di migliorare il tuo software in un modo per abbassare il livello di abilità di ingresso?

    
risposta data 02.03.2015 - 22:32
fonte

Leggi altre domande sui tag