Ich bin ein Softwareentwickler. Es gibt ein Team von Testern, die vom Analysten geschriebene Testfälle verfolgen und ausführen, aber auch Erkundungstests durchführen. Es sieht so aus, als ob die Tester konkurrierten, um herauszufinden, wer mehr Fehler aufdeckt, und ich habe festgestellt, dass die Qualität der Fehlerberichte abgenommen hat. Anstatt die Funktionalität zu testen und Fehler im Zusammenhang mit dem Betrieb der Software zu melden, haben die Tester Fehler in Bezug auf Bildschirmverbesserungen, Benutzerfreundlichkeit oder dumme Fehler gemeldet.
Ist das gut für das Projekt? Wenn nicht, wie kann ich (als Softwareentwickler) versuchen, das Denken und die Einstellungen des Testerteams zu ändern?
Ein weiteres Problem besteht darin, dass die Frist geschätzt wird und sich nicht ändern kann. Wenn sich die Frist nähert, müssen die Tester ihre Testfälle abschließen, und dies führt dazu, dass die Qualität der Tests abnimmt. Dies führt dazu, dass legitime Fehler im Endprodukt enthalten sind, das der Kunde erhalten hat.
OBS: Dieser Wettbewerb ist keine Praxis der Firma! Es ist ein Wettbewerb zwischen nur den von ihnen organisierten Testern und ohne Preise.
quelle
Antworten:
Ich finde es nicht gut, dass sie einen Wettbewerb daraus machen, die meisten Bugs zu finden. Während es wahr ist, dass ihre Aufgabe darin besteht, Fehler zu finden, ist ihre Aufgabe nicht, "die meisten Fehler zu finden". Ihr Ziel ist es nicht, die meisten zu finden, sondern die Qualität der Software zu verbessern. Sie für das Auffinden weiterer Fehler zu belohnen, entspricht in etwa der Belohnung eines Programmierers für das Schreiben der meisten Codezeilen und nicht für den Code mit der höchsten Qualität.
Das Verwandeln in ein Spiel gibt ihnen einen Anreiz, sich darauf zu konzentrieren, viele flache Fehler zu finden, anstatt die kritischsten Fehler zu finden. Wie Sie in Ihrer Bearbeitung erwähnen, geschieht genau dies in Ihrer Organisation.
Man könnte argumentieren, dass jeder Fehler, den sie finden, faires Spiel ist und dass alle Fehler entdeckt werden müssen. Angesichts der Tatsache, dass Ihr Team wahrscheinlich nur über begrenzte Ressourcen verfügt, sollten Sie lieber mehrere Stunden oder Tage Zeit haben, um tief in Ihrem System nach wirklich großen Fehlern zu suchen, oder mehrere Stunden oder Tage damit verbringen, die App nach Tippfehlern und kleinen Fehlern zu durchsuchen Fehler bei der Ausrichtung von Objekten auf einer Seite?
Wenn das Unternehmen wirklich ein Spiel daraus machen möchte, geben Sie den Entwicklern die Möglichkeit, einem Fehler Punkte hinzuzufügen. "Dumme Bugs" bekommen negative Punkte, schwer zu findende Bugs mit gut geschriebenen Berichten bekommen mehrere Punkte. Dies bewegt dann den Anreiz von "am meisten finden" zu "am besten bei der Erledigung Ihrer Arbeit sein". Dies wird jedoch auch nicht empfohlen, da ein Programmierer und ein QA-Analyst zusammenarbeiten könnten, um ihre Zahlen künstlich aufzufüllen.
Fazit: Machen Sie kein Spiel daraus, Fehler zu finden. Finden Sie Wege in Ihrer Organisation, um gute Arbeit zu belohnen und belassen Sie es dabei. Gamification belohnt Menschen für das Erreichen eines Ziels. Sie möchten nicht, dass ein QA-Analyst das Ziel hat, "die meisten Fehler zu finden", sondern "die Qualität der Software zu verbessern". Diese beiden Ziele sind nicht dasselbe.
quelle
Ich werde ein bisschen mit den anderen Antworten nicht einverstanden sein. "Finden von Fehlern" für einen Tester ist ein bisschen wie "Schreiben von Code" für einen Entwickler. Die Rohmenge ist bedeutungslos. Die Aufgabe des Testers ist es, so viele Fehler wie möglich zu finden und nicht die meisten. Wenn Tester A 5 der 10 Fehler in einer Komponente hoher Qualität und Tester B 58 der 263 Fehler in einer Komponente niedriger Qualität findet, ist Tester A der bessere Tester.
Sie möchten, dass Entwickler die Mindestmenge an Code schreiben, um ein bestimmtes Problem zu lösen, und Sie möchten, dass ein Tester die Mindestanzahl an Berichten erstellt, die das fehlerhafte Verhalten korrekt beschreiben. Der Wettbewerb um die meisten Fehler ist wie der Wettbewerb um die meisten Codezeilen. Es ist viel zu einfach, in das Spielen des Systems einzusteigen, um nützlich zu sein.
Wenn Sie möchten, dass Tester am Wettbewerb teilnehmen, sollte dies direkter auf der Grundlage der Aufgaben geschehen, dh es muss überprüft werden, ob die Software wie beschrieben funktioniert. Lassen Sie die Leute vielleicht gegeneinander antreten, um herauszufinden, wer die am meisten akzeptierten Testfälle schreiben kann, oder schreiben Sie noch besser die Testfälle, die den meisten Code abdecken.
Das bessere Maß für die Entwicklerproduktivität ist die Anzahl der abgeschlossenen Aufgaben, multipliziert mit der Komplexität der Aufgaben. Das bessere Maß für die Testerproduktivität ist die Anzahl der ausgeführten Testfälle und die Komplexität der Testfälle. Sie möchten das maximieren, nicht gefundene Bugs.
quelle
Aufgrund meiner persönlichen Erfahrungen ist dies keine gute Sache. Es führt fast immer dazu, dass Entwickler Fehler melden, die doppelt, lächerlich oder völlig ungültig sind. In der Regel tauchen viele davon am Ende eines Monats / Quartals plötzlich auf, wenn die Tester sich beeilen, Quoten einzuhalten. Das Einzige, was noch schlimmer ist, ist, dass Sie Entwickler basierend auf der Anzahl der Fehler, die in ihrem Code gefunden wurden, bestrafen. Ihre Test- und Entwicklungsteams arbeiten an diesem Punkt gegeneinander, und eines kann nicht erfolgreich sein, ohne dass das andere schlecht aussieht.
Sie müssen sich hier auf den Benutzer konzentrieren. Ein Benutzer hat keine Ahnung, wie viele Fehler beim Testen gemeldet wurden. Er sieht nur den Fehler, der durchgekommen ist. Letztendlich ist es den Benutzern egal, ob Sie 20 oder 20.000 Fehlerberichte einreichen, solange die Software funktioniert, wenn sie diese erhalten. Eine bessere Messgröße für die Bewertung von Testern wäre die Anzahl der Fehler, die von Benutzern gemeldet wurden, die aber von Testern vernünftigerweise hätten abgefangen werden müssen.
Dies ist jedoch viel schwieriger zu verfolgen. Es ist ziemlich einfach, eine Datenbankabfrage durchzuführen, um festzustellen, wie viele Fehlerberichte von einer bestimmten Person eingereicht wurden. Ich vermute, dass dies der Hauptgrund dafür ist, dass die Metrik "Fehler abgelegt" von so vielen Personen verwendet wird.
quelle
Es ist nichts Falsches daran, aus dem Auffinden von Fehlern ein Spiel zu machen. Sie haben einen Weg gefunden, um Menschen zu motivieren. Das ist gut. Es hat sich auch gezeigt, dass es nicht gelungen ist, Prioritäten zu kommunizieren. Den Wettbewerb zu beenden wäre eine Verschwendung. Sie müssen die Prioritäten korrigieren.
Nur wenige echte Spiele haben ein einfaches Punktesystem. Warum sollte der Käfer jagen?
Anstatt das Spiel einfach nach der Anzahl der Fehler zu bewerten, müssen Sie ein Maß für die Qualität der Fehlerberichte angeben. Dann geht es beim Wettbewerb weniger um die Anzahl der Bugs. Es wird eher wie ein Angelwettbewerb sein. Jeder wird versuchen, den großen Fehler zu finden, der eine hohe Priorität hat. Machen Sie die Qualität des Fehlerberichts zu einem Teil der Punktzahl. Lassen Sie die Entwickler den Testern Feedback zur Qualität des Fehlerberichts geben.
Die Feinabstimmung der Spielbalance ist keine einfache Aufgabe. Seien Sie also darauf vorbereitet, einige Zeit damit zu verbringen, dies richtig zu machen. Es sollte deine Ziele klar kommunizieren und es sollte Spaß machen. Dies können Sie auch anpassen, wenn sich die geschäftlichen Anforderungen ändern.
quelle
Das Finden von Fehlern ist ihre Aufgabe. Solange sie die Dinge nicht weniger effizient machen (zum Beispiel indem sie einen Bug für 10 Tippfehler anstelle eines Fehlers öffnen, der mehrere davon abdeckt), ermutigen sie sie, genau das zu tun, was sie tun sollen, also Ich kann nicht viel von einem Nachteil sehen.
quelle
Dies ist eine Erweiterung der Antwort von @ CandiedOrange .
Betrachten Sie etwas sehr informelles und inoffizielles, um die Aufmerksamkeit auf nützlichere Ziele zu lenken. Zum Beispiel könnten die Entwickler einige kleine Token und Trophäen kaufen.
Lassen Sie jeden Tag, an dem mindestens ein schwerwiegender Fehler gemeldet wurde, ein "Fehler des Tages" -Token auf dem Schreibtisch des Testers liegen. Halten Sie einmal pro Woche eine Zeremonie mit einer Prozession von Entwicklern ab, die einen größeren und besseren "Bug of the Week" -Token oder eine Trophäe ausliefern. Machen Sie die Trophäenlieferung "Käfer des Monats" noch dramatischer, vielleicht mit Kuchen. Jedem Token oder jeder Trophäe sollte ein Zitat beigefügt sein, aus dem hervorgeht, warum die Entwickler es für gut hielten, dass beim Testen ein Fehler gefunden wurde. Kopien der Zitate sollten an einem Ort aufbewahrt werden, an dem die Tester sie alle lesen können.
Die Hoffnung ist, dass die Tester ihre Aufmerksamkeit von der Suche nach den meisten Bugs auf das Sammeln der meisten Trophäen und Token lenken. Ihre beste Strategie wäre es, die Zitate zu lesen und darüber nachzudenken, welche Testmethoden die Entwickler für wichtig halten.
Ignorieren Sie einfach unwichtige Fehlerberichte. Da alles sehr inoffiziell und informell wäre, könnte es jederzeit heruntergefahren oder geändert werden.
quelle
Nein . Sie haben selbst darauf hingewiesen, dass Sie festgestellt haben, dass dies zu Berichten von geringer Qualität führt, die nicht auf die erforderliche Funktionalität abzielen, und dass die Tester das Problem verschärfen und sich anstrengen, um die tatsächlich "angenommene" Arbeit abzuschließen "zu tun.
Wenden Sie sich an Ihren Projektmanager, um das Problem zu beheben. Sie sollten dies als Teil ihrer Arbeit betrachten. Wenn Ihr PM nicht bereit oder nicht in der Lage ist, damit umzugehen, können Sie Ihre eigenen Bewältigungsstrategien kaum entwickeln. (das wäre eine andere Frage)
quelle
Ich denke, wie es sein wird (oder wie es bereits ist), wenn es so weitergeht, wird man nicht notwendigerweise eine geringere Qualität bekommen. Obwohl ich denke, dass es das Verhältnis von Menge zu Qualität verringern wird. Es hängt davon ab, ob dies eine schlechte Sache ist oder nicht. Es kommt darauf an, ob
ist etwas, das du wirklich nicht willst. Wenn dies bei den Testern klar ist, würde ich ihnen nur sagen, dass sie nicht die Dinge tun sollen, die Sie nicht melden möchten, aber klar darüber sein sollen. Tun Sie es, wenn einer dieser Berichte erneut angezeigt wird.
Der Grund, warum sie einen Wettbewerb haben, ist wahrscheinlich, dass sie Spaß an der Arbeit haben und daher wahrscheinlich nicht vorhaben, schlechte Arbeit zu leisten (wenn dies als schlecht angesehen wird).
quelle