“Sindrome da betatester perenne”…

Sono sempre più convinto che certe persone siano dotate di una sorta di “superpotere“: se si chiede loro di provare qualcosa, dopo pochi minuti ecco che qualcosa andrà storto e non funzionerà come dovrebbe.

Immancabilmente verranno bollate come “iettatori“, utenti maldestri, menagrami, rompiscatole, … e molti altri termini non proprio gentili. E’ la vita dei betatester, dopotutto, no?

Questo post ha lo scopo di rivalutare questo prezioso “gruppo” di individui, non necessariamente dei tecnici nè betatester per professione, cercando in qualche modo di risollevare il loro “status sociale“. Ammesso che ne abbiano uno considerato positivo.

Premessa

Ovviamente il mio intento non è affatto disinteressato: in qualche modo ho ereditato da mio papà questo “superpotere” (probabilmente ridotto rispetto a lui :D ) e non di rado mi capita di trovare un problema reale in qualcosa semplicemente usandola “in un certo modo“.

Non sto evidentemente elogiandomi per questo. Anzi…

Il risultato è che, specialmente quando il tempo è agli sgoccioli e bisogna consegnare qualcosa, è un attimo suscitare rabbia e odio in chi dovrà poi correggere quel problema (e spesso sono vittima e carnefice allo stesso tempo, per cui sì, talvolta mi odio :D ).

Perchè sindrome?

Per quanto trovare un problema prima che si trasformi in un completo disastro non possa essere considerato un evento nefasto, è indubbio che la propensione a scoprire bug non passi innosservata e, anzi, spesso è vista in malo modo e produce effetti non troppo positivi su chi è dotato di questo “dono”.

Al punto che in passato ho visto casi dove si preferiva far fare i test a $B piuttosto che a $A perchè quest’ultimo tendeva a creare grane, cioè a scovare più facilmente i problemi.

Come se fosse colpa del betatester la presenza dei bug. Bah…

Poi c’è l’aspetto dell’interpretazione dei problemi, un fatto spesso tralasciato correttamente. “Noi” sviluppatori tendiamo a creare programmi e li testiamo applicando il buon senso, la nostra esperienza, eventuali sistemi di valutazione oggettiva e, non da ultimo, il nostro punto di vista.

Il betatester, non necessariamente un tecnico, applica dei ragionamenti diversi e compie le azioni in un modo spesso radicalmente diverso dal nostro. E quello che per noi è la normalità, agli occhi di un tester può tranquillamente passare per un bug, anche se magari non lo è davvero e/o non è particolamente grave.

Quindi, ai bug reali si aggiungono quelle che passano per “fissazioni stupide dei betatester su qualcosa che realisticamente non si presenterà mai in produzione!” (chi ha detto: “le ultime parole famose?”).

Normale quindi che una persona che abbia il sopracitato “superpotere” e magari non abbia mai sbagliato un colpo fin lì, passi irrimediabilmente per scocciatore dopo il primo falso positivo.

Tutto ciò si aggiunge alla normale diatriba fra sviluppatori e betatester, con i secondi normalmente considerati by default delle spine nel fianco per i primi, come se un bug trovato e da risolvere rappresentasse una sorta di onta per i primi.

Così il “superpotere” diventa a tutti gli effetti un problema a sua volta, una sorta di “sindrome” per chi ce l’ha.

Per giunta è qualcosa di perenne, non solo perchè è qualcosa che non si può spegnere, ma anche perchè gli “effetti sociali” sono spesso duraturi. Una volta bollati come “rompiscatole“, difficilmente si potrà ritornare allo stato precedente.

Diciamo che ho imparato che un buon betatester deve essere anche diplomatico nonchè dotato di tatto, per non mettere immediatamente sulla difensiva chi poi dovrà correggere i problemi segnalati.

Cause della sindrome

Credo che questa capacità – questo il termine corretto a mio modo di vedere – sia causata da un limitato insieme di fattori.

Fra tutti, ritengo che i più importanti siano tre, ossia.

1. Volontà, zelo e intraprendenza

Presupponendo che ogni prodotto umano ci somiglia, ossia è perfettibile, è naturale che applicandosi con tutte le forze per trovare i problemi in qualcosa, prima o poi qualcosa di errato lo si trovi.

Non di rado trovo persone valide, perfettamente in grado di trovare i problemi dedicandosi a quest’impresa anima e corpo, perfino su cose che non dovrebbero riguardarle direttamente (questo purtroppo rappresenta un motivo in più per l’odio verso certi betatester, rei di essere “impiccioni”).

Ovviamente a loro va la mia stima ed il mio rispetto: come si suol dire, “meglio dover correre prima che dopo“.

2. Non linearità delle azioni

Ho notato che determinati individui tendono ad operare in modo “personalizzato” sui programmi, in un modo cioè non lineare rispetto a quanto ci aspetteremmo.

E’ il caso di mio papà, che tende ad esempio ad usare le interfacce in un modo che definirei “dinoccolato“, usando il mouse per alcune azioni e la tastiera per altre, anche se ci si aspetterebbe una sequenza di azioni compiute tutte con uno o con l’altro dispositivo di input.

3. Esperienza

Col passare del tempo, a furia di trovare e risolvere bug, si tende subito ad applicare ad ogni nuovo prodotto i test per trovare quelli passati. Come dire: stavolta non ci ricasco.

E’ una pia illusione, ma vale la pena provarci comunque.

L’esperienza insegna che ogni giorno si trovano nuovi ed “entusiasmanti” bug ma le tipologie sono pressochè sempre quelle. Questo perchè ogni persona, se davvero non si impone di imparare dai suoi sbagli e ci riesce veramente, tende a commettere sempre gli stessi tipi di pecc… ehm bug, una sorta di “favoriti“.

Il ruolo della casualità

Sono stato tentato di aggiungere un quarto fattore, la casualità, ma l’esperienza (sempre quella), mi impedisce di farlo. Può capitare di trovare qualche bug “a caso”, ma difficilmente si trovano quelli seri spesso e per puro caso.

Sono ragionevolmente sicuro che di tanto in tanto possa verificarsi un caso in cui una persona trova un bug pigiando a caso un tasto sbagliato ma sono altrettanto sicuro che sul lungo periodo ci sia una qualche causa meno randomica. Propendo quindi per uno o più dei tre sopra-citati motivi.

Conclusioni

Lo scopo di questo post, come detto, non è quello di farvi piacere i betatester, professionisti o meno che siano. Il mio intento era in qualche modo difendere la categoria, spesso bistrattata inutilmente e ingiustamente.

Sì, i betatester servono e parecchio!

Che ne pensate?

Contrassegnato da tag , , ,

12 thoughts on ““Sindrome da betatester perenne”…

  1. Stefano scrive:

    Magari averne ! Uno dei progetti a cui lavoro soffre della sindrome del “ma devo proprio provarlo ?” per cui il prodotto rischia di passare direttamente dalle mani dello sviluppatore alla produzione passando per N persone che ‘schivano’ sistematicamente ogni tipo di test :)

    Il problema è che, lo ribadisco sempre, lo sviluppatore che ha scritto il codice non è quasi mai la persona più indicata a testarlo per la produzione. Lo sviluppatore usa il software sempre nel ‘suo’ modo e di solito applica il ‘suo’ (lineare) percorso. E non basta.

    Comunque, JP, se dove lavori i betatester non sono apprezzati te li prendo in prestito io. Per usare una frase fatta, un buon betatester vale davvero tanto oro quanto pesa.

  2. jp scrive:

    @Stefano: LOL! Tu pensa che ormai nelle BigCo da un po’ si è passati oltre i betatester. Vanno di moda gli SDET, i Software Design Engineer in Test, cioè programmatori specializzati nel produrre test il più possibile automatizzati.

    Non so cosa ne pensi tu, ma sono concinto che esista una correttezza formale, che può essere in qualche modo controllata con strumenti appositi, ed una funzionale, difficilmente verificabile in modo automatico.

    Cioè, i betatester servono ancora e se sono bravi valgono davvero oro.

    Se interessa, posso scrivere un post sull’argomento…

    Ciau e grazie di essere passato!

  3. cavok scrive:

    no noooo… ci basta questo post!! ;)

    i betatester migliori sono quelli che apprendono, sono quelli che si buscano il tuo programma ogni volta, anche durante lo “sviluppo pesante”, che lo vedono regolarmente con le “mutande calate”. che sanno, meglio ancora di te che lo scrivi, che cosa cappero _fa_ davvero il tuo programma.

    sono quelli che quando ti dicono “c’e’ un problema”, tu rizzi immediatamente le antenne perche’ sai che o c’e’ un baco o sei andato fuori specifica.

    gente preziosa, _questi_ betatester, perche’ puoi essere lo squalo migliore ma senza pesce pilota prendi solo granchi.

  4. jp scrive:

    @Cavok: ok, non proseguo… :P

    Il fatto è che essere “betatester” sembra (è?) un lavoro noioso e alienante, in cui devi sostanzialmente trovare le magagne altrui. In pratica: giocare sempre con i giocattoli degli altri.

    Naturale che di betatester “puri” ce ne siano sempre troppo pochi, nonostante la loro comprovata utilità…

    Ciau & grazie di essere passato! ^^

  5. Stefano scrive:

    Si, un altro post !

    Entrambe le pratiche sono importantissime, anche se non credo ci si debba specializzare professionalmente in un’area o in un’altra.
    Non si può fare solo beta test manuale (tante operazioni DEVONO essere automatizzate) e non si può fare solo test automatizzato (vedi i tre punti che hai citato, difficili da riprodurre via codice).

  6. jp scrive:

    @Stefano: io invece credo che ci sia spazio per una figura che faccia tanto da betatester che da QA. Questo perchè se è vero che il primo betatester è lo sviluppatore stesso non è giusto che il secondo in ordine sia il cliente: ci vuole almeno un livello intermedio, possibilmente gestito da qualcuno in grado di fornire risposte chiare, utili alle correzioni e ai miglioramenti. :D

    PS: che devo fare? Lo scrivo o no? :P

  7. Stefano scrive:

    E scrivilo :)

  8. jp scrive:

    @Stefano: appena ho tempo, ci provo. :P

  9. cavok scrive:

    beh certo, il betatester che fa solo il testing della roba fatta da altri non si diverte molto, come del resto il programmatore che scrive soltanto il codice pensato e sviluppato da altri.

  10. jp scrive:

    @Cavok: esatto. La riprova è il fatto che si sono dovuti inventare nomi altisonanti (tipo appunto SDET) per nascondere le cose. :P

  11. Gianlorenzo scrive:

    Cercando in rete qualche programma / porodotto da poter testare ho trovato questo articolo, devo dire molto ben fatto, e scopro di essere afflitto da questa sindone ! In effetti trovo in continuazione problemi su siti / programmi / prodotti ma non posso o non ha senso segnalarli o molto probabilmente immagino che la segnalazione andrebbe cestinata, per questo cercavo di trovare una sorta di sito dove fossero contenuti diversi programmi ad esempio da testare ma sono riuscito a trovare solamente videogiochi.

    Penso di essere ad uno stadio più elevato ^_^
    Saluti

  12. jp scrive:

    @Gianlorenzo: prima di tutto, benvenuto. :P

    Probabilmente ti dirò una banalità ma non tutte le aziende sono realmente interessate a correggere (proprio tutti) i bug o non hanno i mezzi/risorse per poterlo fare.

    Se può farti piacere, quando trovo qualcosa che mi piace e ha dei problemi, per senso “civico” tendo a segnalarlo. Spesso non ottengo nemmeno la ricevuta di ritorno della mail. Ma lo faccio lo stesso: una cosa giusta è giusta anche senza il ritorno di gratitudine che ci si aspetterebbe.

    Non sono a conoscenza di siti specializzati in betatesting perchè fare il betatester professionista è un lavoraccio, spesso mal considerato (ne riparlerò a breve: domani o al massimo dopodomani pubblicherò la prosecuzione di questo post, come da promessa).

    Ciao & grazie di essere passato! ^^

Lascia un Commento

Fill in your details below or click an icon to log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Log Out / Modifica )

Foto Twitter

You are commenting using your Twitter account. Log Out / Modifica )

Foto di Facebook

You are commenting using your Facebook account. Log Out / Modifica )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 259 other followers