maandag 12 oktober 2020

Iedereen mag fouten maken en daarom.... mag iedereen fouten vinden

Iedereen maakt fouten. En daarom zijn er testers. Om fouten van anderen te vinden. Maar er is meer. Dit houdt ook in dat de tester fouten maakt. Ja, er is tegenwoordig steeds vaker de houding van "Iedereen mag fouten maken", de tester is daar geen uitzondering op. Maar ik mis de vervolgstap. Voor mij, als iedereen fouten mag maken, mag iedereen ook fouten vinden.

Als je kijkt naar redenen voor fouten, zijn de gebieden waar ik aan denk: informatiegebrek, kokervisie, verkeerde prioritering, miscommunicatie, zaken vergeten, zaken gemist, enz. Sommige van deze problemen kunnen opgelost worden met een tweede paar ogen. Al of niet een tester. Sommige niet. Kokervisie is daar het meest duidelijke voorbeeld van. Dit doet zich vaak voor bij een groep personen. Bijvoorbeeld de testers in een bedrijf of de team werkend aan een product. Neem de groep testers. Deze kan bijvoorbeeld heel erg gefocust raken op regressietesten. En alle tijd en aandacht zo ongeveer daaraan besteden. Maar door deze extra besteedde tijd kan het gebeuren, dat de validatie van gegevens opeens veel meer fout gaat. De tijd voor de regressietestverbetering moet tenslotte ergens vandaan komen. Dit wordt echter niet gezien, want de focus ligt nu op de regressietestbugs. En de validatiebugs vallen daar niet onder. Dan heb je een niet-tester nodig, die bijvoorbeeld zegt: "Hoe kan het dat we opeens heel veel problemen hebben met ongeldige gegevens in onze database?"

Waarom is dit van belang voor een tester? Als tester ben je vaak het tweede paar ogen, waardoor anderen fouten mogen maken. Een belangrijk paar ogen. Daarom moet je beseffen dat ook dit paar ogen af en toe een fout maakt. En dat je er als tester naar moet streven om dit te voorkomen. Wat betekent dat je open moet staan voor fouten, die gevonden worden door anderen. Niet alleen andere testers, maar ook andere collega's, misschien wel van andere teams of afdelingen. En misschien zelfs wel van andere bedrijven. Om dit te promoten is het belangrijk dat je als tester een omgeving creëert, waarin mensen zich vrij voelen bugs te melden. Hoe doe je dit?

Beoordeel bugs zo objectief mogelijk

Wat ik vaak zie en hoor is dat de bron van de bug zwaar wordt meegenomen in de beoordeling. Of een bug in productie is, of hij van de manager afkomt, of hij van een tester afkomt, of de bug geëscaleerde is. Nee, ik ga niet schrijven dat dit totaal niet uitmaakt. Als je twee major bugs heft en 1 is in productie, los je diegene in productie op. En ja, als je twee critical bugs hebt, kan het verstandig zijn die van de manager eerder op te lossen.

Waar het om gaat is dat je de beoordeling van blocking, critical, major, minor, trivial niet laat afhangen van de bron. Dus als een manager een major bug heeft gevonden, maar aan de lunchtafel hoor je een collega van een heel ander team over een critical bug, dan gaat de critical bug voor. Wat voor criteria je ook gebruikt voor deze indeling, wie de bug gemeld heeft is hiervoor niet van belang.

Waarom is dit belangrijk? Ooit wel eens een probleem verteld en te horen hebben gekregen "Je kan best gelijk hebben, maar dit heeft voor de manager/het bedrijf geen prioriteit". En heeft dit je ooit gemotiveerd om problemen te blijven melden? Voor het melden van bugs werkt het niet anders.; Een argument als "Van deze bug hebben niet al teveel klanten. Daarom geef ik voorrang aan bugs, die meer klanten raken." kan iemand misschien tegenhouden elke bug te melden. Maar als er iets ernstigs is, blijft de kans groot dat je het te horen krijgt. "Ik heb al een lijst met 50 bugs van mijn manager en die moeten eerst" kan elke bugmelding blokkeren.

Leg uit waarom

Als tester prioriteer je misschien naar testverbeteringen. Als expert zal je dan snel de neiging hebben mensen gewoon te vertellen wat je wil. Jij bent de expert, dus jij beslist. En in veel gevallen zal dit geen duidelijke problemen geven. Je zal meestal gevolgd worden. Tot je prioritering of verbetering een fout besluit is. En niemand dat kan zien, want het enige wat ze kunnen zien is dat je doet wat je hebt gezegd.

Als je aan iemand verteld wat je gaat testen of hoe je gaat testen, vertel dan ook waarom. Vertel wat je wil bereiken. Minder bugs in productie, een sneller testproces, meer kennis van de applicatie, het maakt niet uit. Of in het geval van testen: een goed werkende validatie, goede integratie met andere apps, enz. Maar vertel altijd je doel. Naast draagvlak, wat altijd handig is, zorgt dit voor iets anders. Als jij met je ideeën je doel niet bereikt, kan dat ook door anderen opgemerkt worden. Als jij de testtijd verdubbelt om de bugs flink terug te brengen, kan iemand opmerken dat voor een verdubbeling van de tijd 10% minder bugs niet veel is. En dat het aantal grote bugs zelfs bijna gelijk is gebleven. Zodat de vraag gesteld kan worden: is dit wel de juiste weg voor het doel dat je wil bereiken.

Neem iedereen serieus

Ook als tester kan je verstrikt raken in problemen als kokervisie en informatiegebrek, waardoor je ernstige fouten mist. En als je team of directe collega's dezelfde kokervisie hebben of dezelfde informatie missen, kunnen zij je hier niet bij helpen. Daarvoor heb je een buitenstaander nodig. Die persoon dus, die vaak als lastig wordt gezien, omdat die zich met zaken bemoeit, waar hij/zij geen verstand van heeft.

Als iemand denkt een bug te hebben gevonden en dat wil laten weten, neem daar altijd de tijd voor. Geef altijd een reactie. Als iemand een onbelangrijke of onterechte bug meldt, leg uit waarom. Maar probeer te voorkomen dat je reactie overkomt als "Val me hier niet mee lastig". Hoewel dit misschien de meest logische is, is dit tegelijkertijd de moeilijkste. Als iemand zegt "Waarom heb je die bug niet gevonden?", terwijl je weet dat geen klant die bug ooit zal vinden, krijg je de neiging om te denken "Hoepel even op". En als iemand steeds opnieuw kleine, onbelangrijke bugs meld, of nog erger, onterechte, krijg je de neiging die persoon te negeren. En toch moet je blijven proberen deze personen serieus te nemen. Allemaal. Altijd

Dus iedereen mag fouten vinden, tester of niet

Het belangrijkste is te beseffen dat je als tester anderen nodig hebt om goed te blijven testen. Niet alleen je manager, andere testers of teamgenoten, maar soms ook buitenstaanders. Dit geldt zeker als het aankomt op het melden van bugs, die je misschien gemist hebt. Maar geldt ook voor je testaanpak of je testverbeteringen. Geef iedereen daarom het gevoel dat ze fouten bij je kunnen melden, wat het onderwerp ook is. Geef ze het gevoel serieus genomen te worden. En help je omgeving om je op fouten te betrappen, door ze te informeren over je doelen als tester. Hoewel dit allemaal niet zo eenvoudig is, zal je er uiteindelijk als tester door groeien.