how deal with bad requirements
Der stille Konferenzraum erstickte und alle darin waren verwirrt. Wie konnten wir es vermissen war die Frage, die sich in jedem Gesicht widerspiegelte.
Schließlich war es kein kleiner Fehler, nicht mit einem relevanten Fehler zu erscheinen, wenn der Benutzer versucht, den vorhandenen Datensatz zu duplizieren, und dies zuzulassen. Dies war auch für eine Versicherungsgesellschaft der Fall.
Nachdem sie beschlossen hatten, das Problem zu lösen, zerstreuten sich alle. Beim Ausgraben wurde festgestellt, dass der Kunde im Anforderungsdokument nie etwas über die Doppelung von Aufzeichnungen erwähnt hat und daher niemand relevante Fragen stellte oder darüber nachdachte.
Dies war nur ein Beispiel.
In einer Karriere von mehr als 10 Jahren Ich habe viele Fälle beobachtet, in denen Projekte unter schlechten oder schlechten Anforderungen litten.
Aber wie sie sagen, nichts ist perfekt auf dieser Welt, und Sie müssen sich damit auseinandersetzen, und mit Projekten umzugehen, die keine oder nur geringe Anforderungen haben, ist eine Art Albtraum.
Lassen Sie mich erklären -
Was du lernen wirst:
- Wie schlechte, schlechte und widersprüchliche Anforderungen Probleme verursachen:
- Schlechte Anforderungen und wie man als Tester damit umgeht:
- Fazit
- Literatur-Empfehlungen
Wie schlechte, schlechte und widersprüchliche Anforderungen Probleme verursachen:
# 1) Keine Anforderungen - Keine Anforderungen implizieren Annahmen und Vermutungen und daher gibt es kein Vertrauen. Es ist sehr schwierig, ein Produkt / eine Anwendung ohne Basislinie zu testen. Und dies führt zu mehr Arbeit, mehr Fehlern vom Kunden und mehr Leid für das Projekt.
- Wie würdest du ein Problem melden über Systemabsturz, wenn es keine Definition gibt, wie mit dem Verhalten umgegangen werden soll, war verfügbar?
- Wie würden Sie vermitteln, dass eine Ladezeit von 100 Sekunden für die Startseite nicht akzeptabel ist, wenn keine relevanten Leistungsanforderungen bestehen?
Weitere Informationen zu Keine Anforderungen und zum Umgang mit der Situation beim Testen finden Sie in einem früher veröffentlichten Artikel - Wie teste ich eine Anwendung ohne Anforderungen?
# 2) Schlechte Anforderungen - Das Zitat, Etwas Unvollständiges zu wissen ist gefährlich, als es überhaupt nicht zu wissen ist sehr wahr, wenn es darum geht, mit einer schlechten Anforderung umzugehen.
Das Interpretieren und Implementieren einer schlechten Anforderung ist ein großes Risiko.
- Wie würden Sie bestätigen, dass das Popup mit den Suchergebnissen gültig ist oder nicht, wenn die einzige genannte Anforderung lautete: Die Suchergebnisse sollten korrekt sein und Sie sind sich nicht sicher, welche Kriterien bei der Suche berücksichtigt werden sollten.
- Wie würden Sie dies interpretieren? - Passwort vergessen wurde implementiert, damit der Benutzer das vergessene Passwort neu generieren / zurücksetzen kann. Unbekannt darüber, welchen Workflow der Kunde für ein vergessenes Passwort wünscht, implementiert der Entwickler, was er für am besten hält, und die Konflikte beginnen.
# 3) Widersprüchliche Anforderungen - Wenn Sie jemanden bitten, zwei verschiedene Dinge gleichzeitig zu tun, wird er / sie nur verwirrt, und auch das System ist keine Ausnahme.
- Wie würden Sie eine Anwendung mit den genannten Anforderungen testen?
- Die Anwendung sollte immer auf der Homepage geöffnet sein.
- Von Benutzern wird erwartet, dass sie sich anmelden, um auf die Anwendung zuzugreifen.
- Was würden Sie als Priorität festlegen, wenn das Anforderungsdokument wie folgt lautet:
- Die Spieleanwendung sollte den Benutzer auf die nächste Stufe befördern, wenn der Benutzer 1000 Punkte erzielt.
- Der Benutzer sollte auf die kostenlose Abonnementseite weitergeleitet werden, sobald er 1000 Punkte erzielt hat.
Und so verursachen die schlechten, schlechten und widersprüchlichen Anforderungen Ärger.
In der Softwareindustrie sollte es Teil des Projekts sein, da manchmal sogar der Kunde nicht sicher ist, was er genau will und wie er es formulieren soll.
Aus Testsicht ist es zwar nicht schwierig, mit diesen mehrdeutigen oder vagen Anforderungen umzugehen, aber nicht völlig unmöglich.
Schauen wir uns die möglichen Lösungen an:
Schlechte Anforderungen und wie man als Tester damit umgeht:
Methode 1)Entdecken und lernen:
Das Erkunden anderer Anwendungen, das Erlernen des allgemein erwarteten Verhaltens, das Verstehen des Arbeitsablaufs, das Nachdenken über die Benutzerfreundlichkeit und das Anwenden von Logik sind eine Möglichkeit, mit der Situation umzugehen. Ebenfalls, unter Berufung auf Erkundungstests wäre hilfreich in solchen Situationen, in denen die Anforderungen nicht klar sind.
In den meisten Fällen ist es eine gute Wahl, die Benutzererfahrung und den Komfort zu priorisieren, wenn die Anforderungen nicht klar sind.
Methode 2)Erfahrung nutzen:
Domain-Erfahrung Die allgemeine Testerfahrung, Probleme in der Vergangenheit und persönliche Erkenntnisse können dazu beitragen, verwirrende Situationen und Anforderungen zu bewältigen.
Methode 3)Siehe Drahtgitter:
Wireframes sind eine Art visuelle Anforderung, bei der Sie kleine Details finden können. Diese Details können sehr hilfreich sein, um das erwartete Bild des Produkts oder der Anwendung zu erstellen, und helfen dabei, Testaspekte besser abzudecken.
Weiterlesen => Wireframes - sollten sie wirklich getestet werden? Und wenn ja, wie?
Methode 4)Peer-Diskussion:
angularjs interview Fragen und Antworten für erfahrene in .net
Egal, was die Verwirrung ist, wenn sie mit der richtigen Gruppe von Leuten besprochen werden, werden die Dinge geklärt. Jeder hat unterschiedliche Erfahrungen, Erwartungen, Benutzerperspektiven und Analyseansichten. Die Diskussion dieser schlechten Anforderungen mit Kollegen trägt dazu bei, das Verständnis zu kristallisieren und das Selbstvertrauen zu stärken.
Methode 5)Klarstellung vom Kunden:
Der Kunde ist der Eigentümer des Produkts / der Anwendung und es ist immer ratsam, sich an ihn zu wenden, wenn es um die Klarheit der Anforderungen geht. Denken Sie jedoch daran, dass es nicht ratsam ist, den Kunden mit Hunderten von Fragen anzugreifen. Zuvor sind einige Hausaufgaben erforderlich.
Versuchen Sie, die verfügbaren Best Practices herauszufinden, die Vorteile der Implementierung zu verstehen und den Kunden mit Fragen und möglichen Lösungen zu kontaktieren.
Fazit
Schließlich sind lose definierte oder undefinierte Anforderungen ein Teil des Lebens des Testers, und wir müssen sie akzeptieren, aber versuchen wir, optimistisch zu sein und Lösungen dafür zu finden. Schließlich sind wir Tester, helfen dabei, die Anwendungen auf Kurs zu halten und sie vor dem Herunterfallen zu schützen. YAY zu uns :)
Über den Autor: Dieser inspirierende Beitrag wurde von STH-Teammitglied Bhumika M verfasst. Sie ist Projektleiterin und verfügt über mehr als 10 Jahre Erfahrung im Testen von Software.
Viel Spaß beim Testen, wie immer ... Warten auf Ihre Ansichten, Kommentare und Meinungen.
Literatur-Empfehlungen
- Eigenschaften eines schlechten Software-Testers
- Tutorial für zerstörende Tests und zerstörungsfreie Tests
- Mind Mapping beim Testen von Software - Möglichkeiten, um das Testen unterhaltsamer zu gestalten!
- Beste Software-Test-Tools 2021 (QA Test Automation Tools)
- Wie teste ich die Software Requirements Specification (SRS)?
- Perfect Software Testing Resume Guide (mit Software Tester Resume Sample)
- 5 Dinge, die ein Anfänger (und Tester) über Softwaretests wissen sollte
- Ankündigung meines neuen eBooks 'Karrierepaket zum Testen von Software - Ein Software-Tester auf dem Weg vom Job zum Testleiter!'