Wir Menschen sind seltsam. Wir glauben, dass wir fehlerfreie Software produzieren können. Wir denken, wir können Projekte planen. Wir glauben, wir können sagen: "Ich habe alles getestet". Aber wie ist das möglich, wenn wir von Vorurteilen in unserem Denken beherrscht werden? Wir können einfach nicht an alles im Voraus denken, auch wenn wir uns gerne einreden, dass wir das können (confirmation bias).
In seinem Buch "Thinking, Fast and Slow" erklärt Daniel Kahneman die häufigsten Denkfehler und Irrtümer. Ich habe das Buch so sehr geliebt, dass ich es zweimal gelesen habe und jedem, der es hören will, empfehle ich, es auch zu lesen. Für mich ist es das beste Buch, das ich je über Tests gelesen habe. Das ist richtig, ein Buch, das an sich nichts mit Testen zu tun hat, hat mich am meisten darüber gelehrt. Bevor ich das Buch gelesen habe, waren mir all die Vorurteile und Irrtümer, die es da draußen gibt, nicht bewusst. Natürlich war mir aufgefallen, dass Projekte immer zu spät fertig wurden, und ich fragte mich, warum die Leute so viel Wert auf Planung legten, wenn es doch nie so war, aber ich wusste nicht, warum die Leute weiterhin an ihre Excel-Tabellen glaubten. In diesem Sinne war "Thinking, Fast and Slow" ein großer Augenöffner für mich. In dem Buch gibt es viele Beispiele, die ich falsch beantwortet habe, was beweist, dass ich genauso leichtgläubig bin wie jeder andere auch.
Aber das hat mich erschreckt, denn es ist ja meine Aufgabe, 'alles zu testen', nicht wahr? Aber wenn mein Denken fehlerhaft ist, wie kann ich dann behaupten, ein guter Tester zu sein? Ich möchte versuchen, so viel wie möglich von meinen Denkfehlern auszumerzen. Dies ist eine Reise, die niemals enden wird. Aber ich möchte Sie mit auf diese Reise nehmen. Das Ziel ist wie immer: sich als Tester zu verbessern. Genießen Sie den Lernprozess und entdecken Sie. Es ist mir ein Bedürfnis, hier eine Erklärung abzugeben. Dies ist keine wissenschaftliche Blogserie. Ich werde Quellen angeben, wenn ich sie für notwendig halte, aber der Sinn dieser Serie ist es, Sie auf eine Reise mitzunehmen, die größtenteils persönlich ist. Ich hoffe, dass auch Sie davon profitieren werden! Mein Ziel ist es vor allem, Sie dazu zu inspirieren, einen Blick nach innen zu werfen, auf Ihre eigenen Vorurteile.
Bevor wir fortfahren, muss ich ein paar grundlegende Konzepte erklären: schnelles und langsames Denken, Heuristiken, Voreingenommenheit und Trugschlüsse. Ich werde diesen ersten Beitrag mit einer Liste der Vorurteile und Trugschlüsse abschließen, die ich in dieser Serie behandeln werde. Diese Liste kann natürlich je nach dem Feedback, das ich hoffentlich erhalten werde, erweitert werden.
Schnelles und langsames Denken
Dies ist ein Konzept aus Kahnemans Buch. Schnelles Denken, in dem Buch "System-1-Denken" genannt, ist das Denken, das Sie auf Autopilot betreiben. Wenn Sie mit dem Auto fahren und etwas sehen, reagieren Sie blitzschnell. Es ist auch das Denken, das Sie anwenden, wenn Sie jemandem neu begegnen. In einem Sekundenbruchteil haben Sie diese Person aufgrund von Stereotypen beurteilt. Es passiert einfach! Es ist schnell, automatisch, instinktiv und emotional. Das System 1-Denken ist der Grund dafür, dass wir als Spezies heute so erfolgreich sind (es hat uns zum Beispiel geholfen, aus gefährlichen Situationen zu entkommen).
Auf der anderen Seite gibt es das "System 2-Denken". Diese Art des Denkens ist mühsam, sie ist langsam. Es ist überlegt. Sie verwenden z.B. System 2, wenn Sie (in Ihrem Kopf) die Antwort auf 234 x 33 berechnen müssen (im Gegensatz zu 2 x 3, was Sie mit System 1 tun).
Es gibt ein großes Problem: Wir machen alle möglichen Fehler, wenn es um die Verwendung dieser Systeme geht. Manchmal verwenden wir System 1, um ein Problem zu analysieren, während System 2 besser geeignet wäre. Im Zusammenhang mit dem Testen: Wenn jemand zu Ihnen kommt und fragt: "Sind die Tests schon abgeschlossen?", könnten Sie versucht sein, mit "Nein" oder "Ja" zu antworten, obwohl es sich eher um eine Frage handelt, die nicht mit einem Ja oder Nein beantwortet werden kann. Wenn Sie unausstehlich sein wollen, können Sie sagen, dass das Testen nie abgeschlossen ist, aber ein realistischeres Gespräch über dieses Thema würde sich meiner Meinung nach um das Risiko drehen.
Wenn Menschen eine scheinbar einfache oder kurze Frage stellen, wie z.B. "Sind die Tests schon abgeschlossen?", meinen sie oft etwas ganz anderes. Wenn mich der Product Owner fragt: "Sind die Tests schon abgeschlossen?", bedeutet das für mich: "Glauben Sie, dass die Qualität unseres Produkts gut genug ist, um veröffentlicht zu werden? Haben wir das Ding richtig gebaut? Haben wir das Richtige gebaut? Ich schätze Ihren Rat in dieser Angelegenheit, denn ich bin mir selbst nicht sicher". Aber wenn ich gerade schlechte Laune habe, kann ich auch einfach "Ja" sagen, und das wäre mein System 1 gewesen.
Die geistige Anstrengung, zu verstehen, dass es bei einer einfachen Frage eigentlich um etwas anderes gehen kann, Fragen zu stellen, um herauszufinden, was die andere Person wirklich meint, und Ihre Antwort so zu gestalten, dass sie ihr wirklich hilft, ist harte Arbeit. Deshalb müssen Sie Ihre Energie klug einsetzen.
Entwickeln Sie Ihre Sinne für System 1 und System 2: Wann verwenden Sie welches System? Und dann ist da noch die Frage der Wahl. Es wäre dumm zu glauben, dass Sie sich immer aussuchen können, welches System Sie verwenden.
Das bringt uns zu den Heuristiken.
Heuristik
Definition auf Wikipedia: "Eine heuristische Technik, oft auch einfach Heuristik genannt, ist ein Ansatz zur Problemlösung, zum Lernen oder zur Entdeckung, der eine praktische Methode verwendet, die nicht garantiert optimal oder perfekt ist, aber für die unmittelbaren Ziele ausreicht."
Heuristiken sind mächtig, aber Sie müssen sich die Zeit nehmen, sie von Zeit zu Zeit neu zu bewerten und/oder anzupassen, und dafür brauchen Sie System 2. Warum müssen Sie Ihre Heuristiken neu bewerten? Weil Sie dazu neigen, auf Vorurteile und Irrtümer hereinzufallen.
Wir müssen Heuristiken verwenden, aber sie basieren auf System 1. Wenn Sie ein erfahrener Tester sind, haben Sie einen riesigen Werkzeugkasten an Heuristiken, die Ihnen beim Testen helfen. Das ist eine gute Sache, aber sie birgt auch ein Risiko. Sie könnten anfangen, Ihrem heuristischen Urteilsvermögen ein wenig zu sehr zu vertrauen, aber man kann ja nicht für alles einen Hammer benutzen, oder?
Voreingenommenheit und Irrtum, Definition und Bedeutung
Eine Voreingenommenheit "ist eine Neigung oder ein Ausblick, eine Teilperspektive darzustellen oder beizubehalten, oft begleitet von einer Weigerung, die möglichen Vorzüge alternativer Standpunkte in Betracht zu ziehen."
Ein Trugschluss "ist die Verwendung einer ungültigen oder anderweitig fehlerhaften Argumentation oder "falscher Züge" bei der Konstruktion eines Arguments."
Bei den meisten Denkfehlern, die ich in dieser Serie behandeln werde, handelt es sich um Vorurteile, aber es ist gut, den Unterschied zwischen Irrtum und Vorurteil zu kennen. Eine Voreingenommenheit ist eine Denkweise; Sie sehen etwas auf eine vorgefasste Weise. Sie beeinflusst, wie Sie die Dinge erleben. Stereotypisierung ist ein gängiges Beispiel für ein Vorurteil. Ein Irrtum hingegen ist eine Unwahrheit. Es handelt sich um eine Aussage oder einen Glauben, der nicht der Wahrheit entspricht.
Es gibt mehr als eine Art von Voreingenommenheit, aber in dieser Blogserie werde ich über kognitive Voreingenommenheit sprechen, für die die Definition lautet: "[...] ein sich wiederholender oder grundlegender Fehler beim Denken, Beurteilen, Erinnern oder bei anderen kognitiven Prozessen."
Da das Testen ein Beruf ist, der in hohem Maße auf Kognition und geistiges Urteilsvermögen angewiesen ist und wir nur Menschen sind, ist es kein Wunder, dass wir Fehler machen. Sie können nicht alle Ihre Voreingenommenheiten loswerden, das würde der menschlichen Natur widersprechen, aber im Zusammenhang mit dem Testen ist es eine gute Idee, sich selbst zu hinterfragen: Welche Voreingenommenheiten und Irrtümer schaden meinen Testaktivitäten tatsächlich?
Sie müssen jedoch erkennen, dass Vorurteile auch zu Ihrem Vorteil sein können! Da es Teil unserer menschlichen Natur ist, voreingenommen zu sein, sollten wir diese Tatsache nutzen. In Bezug auf das Testen könnte das bedeuten: Bringen Sie mehr Leute zum Testen. Jede Person bringt ihre eigene Perspektive (mit Voreingenommenheit) ein, und dies wird zu mehr Informationen über die zu testende Anwendung führen.
Wie geht es weiter?
In dieser Blogserie möchte ich eine Reihe von Vorurteilen und Irrtümern beleuchten und aufzeigen, welchen Schaden oder Nutzen sie beim Testen anrichten können. Ich werde die folgenden Vorurteile, Trugschlüsse und Auswirkungen behandeln:
- Verankerungseffekt
- Verfügbarkeitsheuristik
- Rahmung
- Irrtum der versunkenen Kosten
- kognitive Leichtigkeit
- Bestätigungsfehler
- Grundierung
- Voreingenommenheit im Nachhinein
- Attributionsvorurteil
- "Was Sie sehen, ist alles, was da ist"
Wenn Sie weitere Anregungen für Vorurteile oder Irrtümer haben, die Sie gerne behandelt sehen möchten, hinterlassen Sie bitte einen Kommentar oder einen Tweet an @Maaikees. In der Zwischenzeit wissen Sie, welches Buch Sie unbedingt lesen müssen!
Verfasst von
Maaike Brinkhof
Agile Test Consultant @Xebia. Automate sensibly, let humans do the sapient testing.
Unsere Ideen
Weitere Blogs

Testgetriebene Entwicklung (TDD) mit dbt: Erst testen, dann SQL
Testgetriebene Entwicklung mit dbt: Erst testen, dann SQL Wenn Sie mehr als drei Tage als Analytik-Ingenieur verbracht haben, hatten Sie...
Dumky de Wilde

Python Mocking, die heimtückischen Bits
Bei dem Versuch, eine Funktion in meinem Python-Code zu spiegeln, bin ich auf diesen hervorragenden Blog von Durga Swaroop Perla gestoßen. Der Blog...
Jan Vermeir
Contact

