Frage:
Sollte Geld als Motivation für Tester und Entwickler gezahlt werden, um Fehler zu erkennen und zu produzieren?
Tobi Alafin
2016-12-11 13:41:37 UTC
view on stackexchange narkive permalink

Ich habe eine Idee zur Steigerung der Produktivität in einem Unternehmen gelesen. Es ging so:

Haben Sie einen bestimmten Fonds, der ein Bonus sein wird. Sagen wir 100.000 Dollar. Für jeden gefundenen greifbaren Fehler erhalten die Tester 5 bis 15 US-Dollar. Was am Ende des Monats / Jahres noch übrig ist, geht an die Entwickler.

Theoretisch scheint es eine wunderbare Idee zu sein, obwohl ich nicht sicher bin, wie gut es in der Praxis funktionieren wird . Die offensichtliche Folge davon ist, dass es den Antagonismus zwischen Entwicklern und Testern fördert. Das Bug-Geschäft wird zu einem Nullsummenspiel.

Ist der Antagonismus eine schlechte Sache? Wie wird sich dies auf die Produktivität und vor allem auf das Unternehmen auswirken? Persönliche Erfahrungen werden sehr geschätzt.

P.S: Ich bin in keiner Führungsposition (noch im College), obwohl ich Pläne für ein paar Software-Startups habe, wenn ich meinen Abschluss mache.

Die Kernidee dabei ist, dass es besser ist, ein Team im Wettbewerb zu platzieren als zusammenzuarbeiten.Und nein, selbst wenn Sie die praktischen Probleme mit diesem Plan ignorieren, ist dies ein Rezept für ein Scheitern.
Es motiviert beide Teams, härter zu arbeiten.Sie werden dafür belohnt, dass sie ihre Arbeit besser machen.
-1
Vielleicht werde ich beim ersten Lauf dort sitzen und wissen, dass mein Kollege einen massiven Bonus bekommen hat, und ich habe es nicht getan, obwohl wir genauso hart gearbeitet haben, das wird meiner Moral nichts nützen
Ich habe die Frage positiv bewertet, weil es ein wirklich wichtiges Konzept ist, es richtig zu machen.Aber bitte befolgen Sie den Rat all dieser Antwortenden, die über eine Vielzahl unterschiedlicher Erfahrungen und Hintergründe verfügen und sich alle einig sind, dass dies eine Idee mit VIELEN schädlichen Nebenwirkungen ist, die weitaus negativere Auswirkungen haben könnten als jedes Gut, das kommen könntedavon.
Bug ist eine Entschlossenheit.Sie denken, dass sich Software auf eine bestimmte "falsche" Weise verhält und für das Unternehmen wichtig ist.In Wirklichkeit kann sich herausstellen, dass das, was Sie denken, falsch oder in Ordnung ist, da die geschäftlichen Anforderungen nicht beeinflusst werden.Es ist ein langer Weg, um beides zu beweisen, und wenn es um Geld geht, wird es Grabenkriege geben.Die Entwicklung neuer Funktionen wird aus Angst stagnieren.A und A + Leute werden in Kürze gehen.
Daily WTF hat eine ausgezeichnete Geschichte über etwas Ähnliches und Sie können sehen, was passiert ist: [The Defect Black Market] (http://thedailywtf.com/articles/The-Defect-Black-Market)
Diese Frage zeigt die Grenzen des wettbewerbsintensiven Denkens auf.
Aaahhh die Gamifizierung von Entwicklung und Debugging!Spielen Sie alles und die Leute werden anfangen, es zu spielen, zu manipulieren, zu betrügen, zu hacken, zu schlagen, ...
@FixedPoint und QA / Entwickler neigen dazu, bei Spielen GUT zu sein.Normalerweise besser als die Manager, die die Regeln für die Spiele festlegen ...
Welche Motivation haben Programmierer, um die Fehler zu beheben?Sobald der Fehler als Fehler markiert wurde, ist es sicherer, ihn NICHT zu beheben. Wir werden keinen neuen Fehler einführen, und es geht trotzdem Geld verloren.
Warum um alles in der Welt eine Nullsummenlösung verwenden?Finden Sie zumindest eine positive Summenlösung (Punkte für Software, die die Client-Validierung bestanden hat).Auf dieser Grundlage können Sie dann darüber nachdenken, wie Sie die Vorteile gut verteilen können.
Ich habe beschlossen, die Antworten zu akzeptieren, die ich gesehen habe, und ich habe dies als eine Idee fallen gelassen, die ich in Zukunft verwenden werde.Eriks Video hat mich überzeugt.
Obligatorische Dilbert-Referenz: http://dilbert.com/strip/1995-11-13
Dieses genaue Szenario ist in der Geschichte passiert (ich kann mich nicht erinnern, wo), aber einfacher gesagt, wo Entwickler für jeden Fehler bezahlt wurden, den sie zerstören.Dies führte zu Entwicklern, die eine riesige Menge von "Bugs" produzierten und reparierten.
Anstelle von Geld wie wäre es mit etwas Dummem und Trivialem wie Cupcakes?
Was ist mit der Situation, in der ein Entwickler einen Fehler findet und behebt, der aber trotzdem in Jira oder Bugzilla eingeht, damit die Qualitätssicherung weiß, dass er ihn testen kann?Diese Idee ist zu schwarz und weiß und zu "wir gegen sie".
Funktionieren Cupcakes überhaupt?
Nach meiner Erfahrung würden Cupcakes deutlich besser funktionieren, wenn die Idee überhaupt funktioniert.Dies liegt daran, dass es eine freundliche Komposition fördert, bei der eine Seite es der anderen ins Gesicht reiben kann, ohne schrecklich schreckliche Menschen zu sein.Es hätte das Potenzial, eher wie ein Freundschaftsturnier zu laufen als beispielsweise wie die Hungerspiele.Schlüsselwortpotential.Wenn Sie planen, zu verwalten, müssen Sie den Unterschied unbedingt lernen.
@Jeff: Cupcakes haben ebenfalls Probleme, insbesondere wenn das Testteam viele Fehler findet.Anfänglicher Diabetes, arterielle Blockaden, schlechte Knie (oh, woher weiß ich von schlechten Knien!) Usw., bla.Tu es nicht!Schick mir einfach die Cupcakes und ** ich ** werde sie für dich erledigen.Es ist zu deinem Besten... :-)
[Classic Dilbert] (http://dilbert.com/strip/1995-11-13).Ja, dat hat recht - ich werde mir einen Minivan schreiben!
@BobJarvis huh, ich habe nie so darüber nachgedacht.Versenden Sie jetzt Cupcakes im Wert von 100.000 USD an Sie.In aller Ernsthaftigkeit war ich in Teams, die etwas Ähnliches gemacht haben (es waren tatsächlich einzelne Teammitglieder, die die anderen Team-Donuts kauften, wenn sie es besser machten als wir).Es hat wirklich gut funktioniert, bis wir angefangen haben, Zucker zu essen ...
https://www.google.com/search?q=dilbert+write+me+a+minivan, wenn Ihre Idee genau aus einem Dilbert-Cartoon stammt…
Persönlich, wenn Sie dieses System auf mich setzen, würde ich einen Wettpool darüber starten, wer wie schnell auf dem Parkplatz kämpfen würde.Dies ist nur der dümmste Plan, von dem ich je gehört habe.
Es ist ein Rezept für eine Katastrophe.Die einzige Situation, in der ich sehen kann, dass es möglicherweise funktioniert, ist eine, in der die Spezifikationen zu 100% geschrieben, zu 100% aktualisiert werden, wenn selbst die kleinste Designänderung entschieden wird, und zu 100% verwendet werden können, um mit Sicherheit zu bestimmen, in welchem Verhalten sich der Code befindetverschiedene Kontexte.Wenn die Situation nicht so ist (und normalerweise nicht), werden Sie jetzt nach ständigen Argumenten suchen, ob es sich um einen Fehler handelt oder nicht.Oder anders ausgedrückt: Tester haben jetzt ein (finanzielles!) Interesse daran, dass Entwickler Fehler machen, und Entwickler haben Interesse daran, dass Tester Fehler vermissen.
Bonus für das Produzieren von Bugs?ABONNIEREN!!!
Der neue Titel "Bonus für die Erzeugung von Fehlern" macht nicht wirklich Sinn.
Lol.Ich bin nicht derjenige, der es geändert hat.
Elf antworten:
Erik
2016-12-11 15:47:10 UTC
view on stackexchange narkive permalink

Es scheint eine schreckliche Idee zu sein. Hier sind einige Dinge, die passieren werden, zusätzlich zu Ihren Entwicklern und Testern, die anfangen, sich und sich selbst dafür zu hassen, dass sie dies einführen:

  • Jeder wird sich auf niedrig hängende Früchte konzentrieren . Dies bedeutet, dass die Qualitätssicherung alle möglichen Dinge meldet, die eigentlich in Ordnung sind, aber in der Hoffnung, bezahlt zu werden, als "fehlerhaft" ausgelegt werden können, während die Entwickler ihre ganze Arbeit darauf konzentrieren, sicherzustellen, dass es keine offensichtlichen Fehler gibt und viel weniger darauf, sie zu erstellen Sicher gibt es keine komplexen strukturellen Fehler.
  • Einige Leute werden sich zusammenschließen und ein Entwickler wird absichtlich eine Menge Fehler einführen, diese dann an eine bestimmte Qualitätssicherung senden, um sie zu "finden", und dann das Geld aufteilen.
  • Einige Ihrer Mitarbeiter werden beleidigt, weil Sie glauben, dass sie ihren Job nur schätzen, wenn sie einen Bonus dafür erhalten. Sie werden wahrscheinlich weniger hart arbeiten und aus diesem Grund mehr Müll produzieren.
  • Die Kommunikation zwischen Mitgliedern des Teams wird aufgrund des zunehmenden Antagonismus zusammenbrechen. Es ist jetzt tatsächlich ein Plus für die Entwickler, nicht der Qualitätssicherung zu helfen, ihre Arbeit besser zu machen, da alle Fehler, die unbemerkt in die Produktion gehen, bedeuten, dass sie mehr bezahlt werden.
  • Entwickler werden sich nicht mögen, weil jeder Fehler, den ein Entwickler einführt, sie alle Geld kostet.

Das ist mir ein Rätsel. Versuchen Sie niemals, Programmierer und QAs mit Geld zu motivieren, es stellt sich nur als schrecklich heraus. Ihre Jobs basieren auf intrinsischer Motivation.

Schauen Sie sich auch diesen animierten TED-Vortrag über Antrieb und Motivation an, da er viel besser erklärt, warum jedes Setup, bei dem kluge Leute mit Geld motiviert werden, schrecklich scheitern wird:

https://www.youtube.com/watch?v=u6XAPnuFjJc

+1 Ich denke, es lohnt sich auch zu erwähnen, dass Sie sich in einem Markt für Entwickler befinden und mit anderen Firmen konkurrieren.Die negativen externen Effekte dieses Vorschlags werden zu einer Situation führen, in der die guten Entwickler gehen und die Zitronen zurückbleiben.Die Qualitätssicherung wird sich freuen, da die Änderung der Zusammensetzung in der Qualität der Softwareentwickler im Rahmen dieses Programms zu höheren Prämien für sie führen wird.Dies ist eine der destruktivsten Ideen, die mir begegnet sind.
+1 Dies führt wahrscheinlich zu Feindseligkeiten im Team, die sogar über das Tech-Team und die Qualitätssicherung hinausgehen können.Entwickler werden darüber streiten, wer einen Fehler eingeführt hat und ob es sich überhaupt um einen Fehler handelt oder möglicherweise um eine schlecht geschriebene Spezifikation, ein schlechtes Design usw.
Ich habe mir das Video angesehen (das Netzwerk war schlecht, es hat also eine Weile gedauert).Ich war komplett verkauft.Es genügt zu sagen, dass es eine andere Frage inspiriert hat.
Lassen Sie uns [diese Diskussion im Chat fortsetzen] (http://chat.stackexchange.com/rooms/49928/discussion-between-erik-and-djechlin).
Das kolludierende Argument ist sehr real.Ich habe über einen Fall gelesen, in dem Entwickler Testern einige coole Lücken und Vorbehalte dienten, sie teilten die Boni auf.Ich denke, das Schema wurde entdeckt, weil sie zu oft zu groß wurden, d. H. Super versteckte Fehler traten auf und wurden mit verdächtiger Geschwindigkeit entdeckt.
"QAs werden anfangen, alle möglichen Dinge zu melden, die eigentlich in Ordnung sind, aber möglicherweise als" fehlerhaft "ausgelegt werden." Die QA-Mitarbeiter, in denen ich arbeite, tun dies trotzdem.Die Hälfte der "Fehler", die die Qualitätssicherung in meinem Projekt verursacht, sind Design-Ratschläge ("Laden Sie einen Ladespinner auf diese Seite"), Grammatikkorrekturen (die normalerweise falsch sind) und Dinge, die wie beabsichtigt funktionieren, aber nicht den Erwartungen der Qualitätssicherung entsprechen.Einige Male haben wir aus diesem Grund möglicherweise weltweite Fehler fast übersehen.Wenn sie dafür Boni bekommen würden, würden sie uns mit falschen Müllwanzen überfluten.
@JoeStrazzere Es fehlt ein Schritt.Dem QS-Team werden auch die Personen entzogen, die Wert auf Qualität und Belohnung legen.Die verbleibenden QS-Mitglieder werden mit der Situation zufrieden sein, da sie mehr niedrig hängende Früchte bekommen, was mehr Geld für sie bedeutet.
@Torisuda: Obwohl es bedauerlich ist, dass die QS-Mitarbeiter in Bezug auf Grammatikprobleme falsch liegen, würde ich Fehler (Rechtschreibung, Grammatik, was auch immer) im UI-Text sicherlich als Qualitätsprobleme betrachten, die irgendwann im QA-Prozess behoben werden müssen.
Hier ist eine möglicherweise wahre Anekdote über diese Art von Situation: http://thedailywtf.com/articles/The-Defect-Black-Market
@Torisuda, QA interpretiert die Anforderung anders als die Entwickler ist ein klares Zeichen dafür, dass die Anforderung falsch ist.Es bedeutet jedoch immer, dass die Personen, die die Anforderung gestellt haben, konsultiert werden müssen, welche die richtige Interpretation ist, und dann hängen die ergriffenen Maßnahmen von dieser Antwort ab.Dies ist ein gültiger Fehler, der ausgelöst werden sollte, und sollte niemals ebenfalls abgewiesen werden. Dies ist der richtige Weg.Ich habe viele Projekte gerettet gesehen, weil diese Diskrepanz in dem, was gemeint war, angesprochen wurde und die Qualitätssicherung tatsächlich korrekt war, was die Anforderung bedeutete.Ich bin immer dankbar, wenn die Qualitätssicherung diese Art von Fehler auslöst.
@HLGEM: Es ist schön, wenn QA es fängt, aber es ist viel besser, wenn es genug Kommunikation gibt, dass die Entwickler es erkennen, bevor sie es bauen :)
Ja, ich stimme zu, dass viele, wenn nicht die meisten Entwickler beim Entwerfen mehr mit den Benutzern / Stakeholdern / BAs sprechen müssen und diese Art von Fehlinterpretationen nicht vornehmen müssen, aber ich habe gesehen, dass allzu viele die Anforderung zum Nennwert annehmen, ohne angemessen oder sogar offensichtlich zu fragen, Fragen.Ein Grund für die Qualitätssicherung besteht darin, dass jemand mit einer anderen Perspektive betrachtet, wie die Dinge gemacht wurden.Aus diesem Grund ist es eine schlechte Idee, wenn Entwickler ihre eigene Qualitätssicherung durchführen.Genau diese Dinge wird der Entwickler niemals finden, weil er weiß, was er für die Anforderung hält.
@HLGEM Wir lagern an eine QS-Firma in Übersee aus, sodass den QS-Mitarbeitern viel Fachwissen und Kontext fehlt.Aus diesem Grund ist ihre Interpretation selten korrekt, obwohl es mir manchmal hilft, die Anforderung selbst besser zu verstehen, wenn ich sie ihnen erkläre.
@Torisuda Als Sie Ihren ersten Kommentar abgegeben haben, war dies das erste, worüber ich mich wunderte.Aus den Zeiten, in denen ich es versucht habe, bin ich zu dem Schluss gekommen, dass es sich nicht lohnt, eine Qualitätssicherung in Übersee durchzuführen.Es ist wirklich etwas, das Sie im Haus haben sollten.
Oder Sie könnten versuchen, ihnen das Domänenwissen zur Verfügung zu stellen.Das haben wir mit unserer QS in Übersee gemacht.Wir haben das Geld ausgegeben, um ein paar ihrer älteren Leute für ein paar Monate hierher zu bringen, um zu lernen.Das hat sich ausgezahlt.
Ja, zumindest sollten sie ausgezeichnete Domain-Kenntnisse haben.Und ein gutes Verständnis der Muttersprache der App.Ohne sie kann man keine gute Qualitätssicherung sein.
@Erik Aus meiner Erfahrung stimme ich zu, dass eine interne Qualitätssicherung viel besser wäre.Leider war dies ein System, das lange vor meinem Start vorhanden war und wahrscheinlich noch lange nach meiner Abreise vorhanden sein wird.Sie haben gute Englischkenntnisse, aber es gibt dialektale Unterschiede, die Verwirrung stiften, und ihre Domänenkenntnisse sind anständig, weisen jedoch Lücken auf, die nicht leicht zu beheben sind, da sie in Übersee sind.
@HLGEM Das ist eine gute Idee.Ich glaube nicht, dass unser Unternehmen über die Ressourcen dafür verfügt, aber ich könnte versuchen, Pitching durchzuführen.Sogar ein paar Video-Chats mit Schlüsselpersonen könnten helfen.
Joe Strazzere
2016-12-11 18:45:30 UTC
view on stackexchange narkive permalink

Ich habe eine Idee zur Steigerung der Produktivität in einem Unternehmen gelesen. Es ging so:

Haben Sie einen bestimmten Fonds, das wird ein Bonus sein. Sagen wir 100.000 Dollar. Für jeden gefundenen konkreten Fehler erhalten die Tester 5 bis 15 US-Dollar. Was am Ende des Monats / Jahres noch übrig ist, geht an die Entwickler.

Theoretisch scheint es eine wunderbare Idee zu sein, obwohl ich nicht sicher bin, wie gut es in der Praxis funktionieren wird . Die offensichtliche Folge davon ist, dass es den Antagonismus zwischen Entwicklern und Testern fördert. Das Bug-Geschäft wird zu einem Nullsummenspiel.

Ist der Antagonismus eine schlechte Sache? Wie wird sich dies auf die Produktivität und vor allem auf das Unternehmen auswirken? Persönliche Erfahrungen werden sehr geschätzt.

(Ich erschrecke, wenn ich solche "Motivationsschemata" lese.)

Vielleicht definiert der Autor dieser Idee "Produktivität" anders als ich es tun würde.

Das Ziel der meisten Unternehmen, die Software herstellen, ist es, Geld zu verdienen und vielleicht den Geldbetrag zu maximieren, den sie verdienen. Das Ziel eines Bug-Bounty-Systems ist weniger klar und hat sicherlich nichts mit Produktivität zu tun. Es würde viel Zeit aufgewendet werden, um Bonusgeld zu erhalten, und wenig Zeit würde darauf verwendet werden, die Software zu versenden (so verdient das Unternehmen Geld).

Stellen Sie sich ein Unternehmen mit einem Entwickler und einem Tester vor

Wenn Sie der Entwickler wären, wäre es Ihre optimale Strategie, dem Tester die gesamte Software vorzuenthalten, bis überhaupt keine Fehler mehr vorhanden sind oder bis der Tester keine Zeit mehr hat, einen zu finden

Ich habe in einem Unternehmen gearbeitet, das Entwickler eher mit Lob als mit Geld belohnte, und genau diese Strategie verfolgte ein Entwickler. Builds wurden alle 2 Wochen für die Qualitätssicherung freigegeben. Und jeden zweiten Freitag hatten wir ein Full-Team-Meeting, bei dem die Anzahl der Fehler im aktuellen Build bekannt gegeben wurde. Wenn ein Entwickler jemals keine Fehler hatte, wurde dieser Entwickler für seine großartige Arbeit ausgezeichnet und gelobt.

Ein Entwickler hat beschlossen, das System zu spielen. Sie hielt den Build (immer mit vernünftigen Ausreden) bis kurz vor dem wöchentlichen Treffen. Sie veröffentlichte dann den Build, der Fehlerzählungsbericht wurde ausgeführt und "magisch" hatte sie pünktlich zum Meeting eine Fehleranzahl von Null.

Während sie eine gute Entwicklerin war, war ihr Code keiner besser als die meisten anderen. Ihre Klugheit bestand darin, das System zu ihrem Vorteil zu manipulieren.

Ich arbeite derzeit in einem Geschäft, das Entwickler für die Anzahl der Fehler bestraft, die ihrer Arbeit während eines Projekts zugeschrieben werden. Es wird erwartet, dass sie ihre Fehleranzahl gegenüber dem Vorjahr "verbessern". Dies ist Teil ihrer MBOs und Teil ihrer jährlichen Bonusauszahlung.

Es ist nicht überraschend, dass sie lange gebraucht haben, um den ersten testbaren Build für die Qualitätssicherung zu erstellen. Und sie baten die Qualitätssicherung, viel Zeit mit Tests in der Entwicklungsumgebung zu verbringen (wo keine Fehlerberichte geschrieben werden können). Sie haben jede Chance erhalten, weniger Fehler im Berichtssystem zu erzeugen und damit ihren Bonus zu maximieren.

Der Produktmanager hat sogar beschlossen, viele Fehlerberichte in "Erweiterungsanforderungen" zu ändern, um keine Auswirkungen zu haben Entwickler-MBOs. Sein Argument war: "Nun, die Entwickler haben diese Funktion noch nicht vollständig entwickelt, also werden sie sie verbessern, wenn sie Zeit haben."

Wenn ich "durch den Fehler" bezahlt würde, könnte ich eine Menge finden Fehler ganz leicht, egal wie gut der Entwickler ist. (Ich mache diese Arbeit seit fast 30 Jahren). Ich würde mich anfangs auf die niedrig hängenden Früchte konzentrieren und alles überspringen, was überhaupt zeitaufwändig war. Meine Fehlerberichte wären minimal und nicht sehr hilfreich - im Grunde genommen alles, was nötig war, um den Fehlerbericht in das System einzugeben und das Geld zu bekommen.

Das Ergebnis wären viele oberflächliche Fehlerberichte, die "gerade greifbar genug" waren, und die Software würde unweigerlich einige wichtige kritische Fehler aufweisen. Ich kann mir nicht vorstellen, dass das System jemals ausgeliefert wird.

Die Entwickler würden ihre ganze Zeit und Aufmerksamkeit auf neuen Code konzentrieren. Es wäre absolut kein finanzieller Vorteil, bereits gefundene Fehler zu beheben. Und sie würden einen Anreiz erhalten, winzige, unbedeutende Veröffentlichungen zu produzieren. Wenn sie eine Veröffentlichung produzieren, die nur eine einzige Zeile perfekten Codes enthält, erhalten sie einen Bonus von 100.000 US-Dollar! Warum überhaupt knifflige Funktionen hinzufügen?

Beide Teams stritten sich vehement über jeden einzelnen Fehlerbericht und ob es sich wirklich um einen "greifbaren" Fehler handelte oder nicht. (Das ist ein schöner und unscharfer Begriff. Ich würde gerne hören, wie ein Team versucht, ihn konkret zu definieren.) Diese Art von Argumenten bilden nicht die Grundlage für alles, was ich Produktivität nennen würde.

Und weder Tester noch Entwickler würden Zeit für etwas anderes aufwenden. Keine Besprechungen, keine Dokumentation, keine Kundenbetreuung, keine Hilfe für andere, keine Vorbereitung für den Versand. Hey, wenn es wichtig wäre, wäre Geld damit verbunden, oder?

Und dieser letzte Teil ist bedeutsam. Für Wissensarbeiter ist es ein großer Nachteil, häufig Geldprämien an Aufgaben zu knüpfen, die sie für wichtig halten. Wenn Sie die Arten von Funktionsstörungen, die durch diese Art von Anreizsystemen entstehen können, besser verstehen möchten, empfehlen wir Ihnen dringend, Messen und Verwalten der Leistung in Organisationen von Robert D. Austin zu lesen.

Kurz gesagt, das ist eine schreckliche Idee.

Die meisten guten Softwareunternehmen erkennen die Torheit eines solchen Plans und versuchen, sich von solchen Systemen fernzuhalten. Die meisten Softwareunternehmen verstehen, dass die Freigabe von Software ohne Fehler kein realistisches Ziel ist und dass es wichtiger ist, Software rechtzeitig freizugeben.

'Verbesserungswünsche' sind hier ein guter Punkt - wenn Sie als Entwickler Geld von meinem Gehalt für jeden Fehler abziehen, liegt es in meinem Interesse, über die Spezifikation zu streiten: * "In der Geschichte wurde nie das Geburtsdatum angegebenFeld könnte nicht in der Zukunft sein. Dies ist kein Fehler, es ist eine zusätzliche Geschichte. "* Sie belohnen Entwickler nicht nur dafür, dass sie langsamer arbeiten und für das QA-Team weniger hilfreich sind, sondern motivieren sie auch, den gesunden Menschenverstand zu ignorierenund alles, was vom Product Owner / Analyst dokumentiert wurde, bis zum N-ten Grad benötigen.
https://blog.codinghorror.com/thats-not-a-bug-its-a-feature-request/
Hinzu kommt, dass es vor dem Büro der Entwickler eine hängende Stange für jeden gibt, der es wagt, alten Code umzugestalten und die Codebasis in einem völligen Chaos zu belassen, denn "Wenn es nicht fehlerhaft ist, versuchen Sie es nicht einmal."berühre es!"
"Ein Entwickler hat beschlossen, das System zu spielen."- Protestieren durch "Golemarbeit" oder einfach nur in Lob?In jedem Fall denke ich, dass sie ein Genie ist und möchte einen Weg finden, sie zu motivieren, auf meiner Seite zu sein.
Während das im OP beschriebene Setup in der Tat ziemlich schrecklich ist, kann eine tatsächliche, ordnungsgemäße Fehlerprämie in Ordnung sein.Das Einrichten eines kontroversen Wettbewerbs zwischen Entwicklung und Qualitätssicherung ist jedoch keine angemessene Fehlerprämie.Eine bessere Möglichkeit besteht darin, Ihren QS-Testern für jeden gefundenen Fehler einen Bonus zu gewähren.Und vielleicht auch Ihre Entwickler für jeden gemeldeten Fehler, den sie beheben.
@aroth - Ich werde mir heute Nachmittag einen neuen Minivan schreiben!http://dilbert.com/strip/1995-11-13 (seien Sie vorsichtig, wofür Sie bezahlen - Sie werden nicht das bekommen, was Sie erwarten könnten)
@WorkerDrone - Fair genug.Obwohl "Vorsicht, Sie stellen keine korrupten / unethischen Entwickler ein" eine ebenso plausible Interpretation zu sein scheint.
Ich denke, @aroth war mit seinen Bemerkungen genau richtig.Obwohl das OP mit seinem Setup wahrscheinlich nicht gut abschneiden würde, könnte dies besser gerahmt werden.Selbst die Kommentare in diesem Beitrag können mit einem einfachen Framework leicht entfernt werden (z. B. erhalten nur schwerwiegende / kritische Fehler Kopfgeld, nur bereits vorhandene Fehler und machen es nicht zu einem Wettbewerb zwischen Entwicklern und Testern).
candied_orange
2016-12-11 18:57:07 UTC
view on stackexchange narkive permalink

Dies ist genauso sinnvoll wie die Aufteilung einer Schiffsbesatzung in Teams, diejenigen, die Antriebe ausführen, und diejenigen, die navigieren, in einem Rennen auf demselben Schiff antreten.

Ich lehne es ab, eine antagonistische Beziehung zu haben mit meinen Testern. Ich schätze sie. Sie machen mich zu einem besseren Programmierer.

Ich respektiere auch die Kreativität, die ihre Arbeit von ihnen verlangt. Deshalb denke ich, dass Geld hier der falsche Motivator ist. Studien haben gezeigt, dass Geldanreize die Menschen tatsächlich messbar verlangsamen, wenn ein Job nicht praktisch sinnlos ist.

Kreative Arbeit ist nicht am besten durch Geld motiviert. Seine besten Motivatoren sind:

Autonomie - der Wunsch, unser eigenes Leben zu lenken
Meisterschaft - der Drang, besser zu werden oder Fähigkeiten zu entwickeln
und Zweck - die Notwendigkeit zu tun Was wir aus Gründen tun, die größer sind als wir selbst.

Richtig, Entscheidungen, Verbesserungsmöglichkeiten und Teamwork würden besser funktionieren als Geld.

Qualitätssicherung ist ein kreativer Job. Die Aufgabe besteht wirklich darin, darüber nachzudenken, woran die Entwickler nicht gedacht haben. Aus diesem Grund sollte die Qualitätssicherung automatisiert werden. Sobald ein Test gedacht ist, sollte er nicht mehr wie ein Broadway-Stück "durchgeführt" werden. Es sollte automatisiert werden, damit die Qualitätssicherung nicht mehr darüber nachdenken und über den nächsten Test nachdenken kann. Die Qualitätssicherung sollte mit Ihren talentiertesten Entwicklern durchgeführt werden. Weil sie versuchen, Ihr anderes Entwicklerteam zu überdenken.

Einige glauben das nicht. Einige betrachten die Qualitätssicherung als Müllhalde für weniger talentierte Entwickler. Wenn Sie das getan haben, sind Ihre Prioritäten rückwärts. Fordern Sie Ihre besten Entwickler auf, Ihre Tests zu modernisieren und sicherzustellen, dass die Leute wissen, dass Sie bei der Qualitätssicherung das Beste einsetzen.

Wenn dieses Geld immer noch ein Loch in Ihrer Tasche brennt, verwenden Sie es für Schulungen oder bei Bedarf für Abfindungen Pakete.

Wir machen hier keine sinnlose Arbeit.

nvoigt
2016-12-11 17:43:59 UTC
view on stackexchange narkive permalink

Haben Sie einen bestimmten Fonds, das ist ein Bonus. Sagen wir 100.000 Dollar. Für jeden gefundenen konkreten Fehler erhalten die Tester 5 bis 15 US-Dollar. Was am Ende des Monats / Jahres noch übrig ist, geht an die Entwickler.

Das ist schrecklich. Aus all den Gründen in den anderen Antworten und für die Tatsache, dass dieser sehr einfache Test nicht bestanden wird:

  • Was ist, wenn alle Ihre Mitarbeiter großartig sind und keine Fehler gefunden werden?

    Die Produktion funktioniert einwandfrei und das gesamte Geld geht an die DEVS.

  • Was ist, wenn alle Ihre Mitarbeiter Mist sind?

    Die Produktion hat gerade gebrannt der Boden wegen der Fehler, aber hey, wen interessiert das, das Geld wird an die DEVS gehen.

Selbst wenn Geld ein Motivator wäre In unserem Geschäft wäre dies schrecklich falsch.

Nehmen Sie das Geld und stellen Sie jemanden ein, der wirklich gut darin ist, Spezifikationen zu schreiben und Projekte mit überschaubaren Fristen zu planen. Sowohl DEV als auch QA werden viel glücklicher sein, als jedes Geld sie jemals verdienen könnte.

Ein guter Punkt, um alternative Verwendungszwecke für einen 100.000-Dollar-Fonds vorzuschlagen.Es gibt wahrscheinlich ein paar andere Möglichkeiten, mit so viel Geld ein Team von Entwicklern und QAs produktiver zu machen.Obwohl ich denke, dass es nicht zum Thema gehört, mit dem Brainstorming zu beginnen.
"Die Produktion ist wegen der Fehler einfach niedergebrannt, aber hey, wen interessiert das, das Geld wird an die DEVS gehen."- Theoretisch ist dies der Anreiz für die Qualitätssicherung, bessere Ergebnisse zu erzielen, da sie dafür bezahlt werden, dass die Produktion nicht niedergebrannt wird.
Roger Rowland
2016-12-12 12:25:06 UTC
view on stackexchange narkive permalink

Es mag apokryphisch sein, aber ich habe in den 1980er Jahren ein ähnliches Beispiel erhalten, als ich das "Gesetz der unbeabsichtigten Folgen" als Teil eines BPR-Kurses behandelte.

Das Beispiel betraf eine Fabrikproduktionslinie, in der die Die Qualitätskontrollabteilung wurde durch die Anzahl der Ablehnungen motiviert. Die Produktionsabteilung erhielt ähnliche Anreize, je nachdem, wie wenig Ausschuss sie produzierte.

Der Nettoeffekt bestand darin, dass die Qualitätskontrolle mehr Produkte als zuvor ablehnte und die Produktion länger dauerte, um "perfekte" Artikel zu produzieren, sodass die Gesamtproduktion währenddessen zurückging Die Kosten stiegen aufgrund der Anreizzahlungen. Die Qualität wurde nicht beeinträchtigt.

Kilisi
2016-12-11 14:36:17 UTC
view on stackexchange narkive permalink

Es funktioniert schlecht. Ich habe es mit Entwicklern und Testern nicht gesehen. Das Justizministerium in Neuseeland belohnte jedoch zu einem bestimmten Zeitpunkt regelmäßige Haftaufseher für jeden Häftling, gegen den sie verstoßen hatten. Es ging von einer Verletzung in einer schlechten Woche bis zu einigen Häftlingen, die 6 Verstöße an einem Tag bekamen und darüber im Gefängnis landeten. Irgendwann wurde ein Aufseher verletzt.

Ich bezweifle, dass es so weit gehen würde, da es nicht die gleiche Menge und weniger flüchtige Menschen sind (würde ich denken), aber es erzeugt schlechtes Blut zwischen den Gruppen, die bereits uneins sind zu ihren Rollen.

Ich habe keine Ahnung, was es bedeutet, einen Häftling zu verletzen.
Ich vermute, "einen Häftling verletzen" bedeutet "offiziell festhalten, dass ein Häftling gegen eine Regel verstoßen hat".
@emory Mein Verständnis ist, dass es sich um eine offizielle Meldung handelte. Wenn ein Häftling innerhalb seiner Haftstrafe 3 bekam, wurden sie verhaftet, vor Gericht gebracht und zu einer Haftstrafe verurteilt.
Peter
2016-12-12 04:55:27 UTC
view on stackexchange narkive permalink

Andere Antworten haben bereits ausreichend angegeben, dass Ihre Idee schlecht ist TM. Ich werde das also nicht weiter wiederholen und stattdessen erwähnen, was Sie ändern müssen, um die Idee zu verbessern.

Sie versuchen, Geld an die letztendlich auf einem Papier angegebene Zahl anzuhängen. Diese Zahl wird kein Geld schaffen. Um die Sache noch schlimmer zu machen, ist die Anzahl, die Sie verwenden möchten, meistens zufällig: Ein Produkt, das nie einen Fehler hatte, hat plötzlich 50, alles Tippfehler in der Dokumentation. Ein Fehler, der die Hervorhebungsfarbe von 200 Elementen durcheinander bringt, wird zu 200 Fehlern. Sobald Sie einige Leute bitten, die Zahl auf magische Weise zu erhöhen, ist diese Zahl eine völlig nutzlose imaginäre Zahl. Und obendrein verschwenden Sie Zehntausende von Dollar an Löhnen mit absolut sinnlosen Treffen, bei denen die Leute darüber streiten, was ein Fehler ist und was nicht.

Wenn Sie Zahlen auf einem Papier mit Boni oder anderen Belohnungen versehen möchten, müssen diese Zahlen direkt mit dem tatsächlichen Geld verknüpft sein, das das Unternehmen verdient. Ein häufiges Beispiel ist, dass der Bonus mit dem Gewinn eines Handelsunternehmens verknüpft ist.

user8036
2016-12-12 15:56:48 UTC
view on stackexchange narkive permalink

Wie in den "Cupcake" -Kommentaren unter Ihrer Frage vorgeschlagen, können einige Formen der Gamifizierung funktionieren. Wie wäre es, wenn Sie eine Trophäe für den 'Best Bug' vergeben, der in einem bestimmten Zeitraum gefunden wurde und durch Stimmen von beiden Teams zusammen vergeben wird?

In einer gesunden Entwicklungsumgebung herrscht eine gemeinsame Ehrfurcht 'zwischen Testern und Entwicklern über Leute (normalerweise die Tester), die diese lästigen Fehler finden, die nur unter bestimmten Bedingungen reproduziert werden können, über diesen zeitweiligen Fehler, der Sie seit Monaten belästigt, über etwas sehr Einfaches, das ein Entwickler übersehen hat usw. * sup>

Die Trophäe sollte etwas sehr Einfaches sein, da es nicht um ihren inneren Wert geht: ein kleines Schild, ein Cupcake, eine Tafel Schokolade.

* In diesem letzten Beispiel geht es nicht darum, einen Fehler zu finden, sondern einen Fehler zu verursachen. In diesem Fall bedeutet der Preis freundliche Verspottung. Dafür brauchen Sie eine Kultur, in der Ihre Kollegen erkennen, dass jeder Fehler macht. Sup>

DDT
2016-12-12 15:25:55 UTC
view on stackexchange narkive permalink

Ich denke, das Ergebnis wäre nachteilig. Es widerspricht sowohl dem gesunden Menschenverstand beim Entwickeln als auch beim Testen.
Keine gefundenen Fehler bedeuten nicht, dass Software gut ist. Das Testen könnte zu komplex sein oder die Qualitätssicherung könnte einige Tests überspringen. Selbst keine gefundenen Fehler, umfangreicher Testprozess und gute Codequalität bedeutet nicht, dass das Produkt gut ist. Wenn die Anforderungen durcheinander gebracht wurden, kann die Software für den Client schrecklich sein.

Das Spielen gegen dieses System kann extrem einfach sein.
Für Entwickler: späte Builds. Für Tester: Konzentration auf triviale Fehler.
Bei späten Builds ist ein frühes Testen unmöglich. Wenig Zeit zum Testen und zur Befriedigung der Anzahl der Fehler? Tester konzentrieren sich auf triviale Fehler wie falsch geschriebene Etiketten oder einige unkritische Fälle.
Wenn Sie wissen möchten, ob das Produkt gut ist, fragen Sie einfach Ihren Kunden.

Crowley
2016-12-12 19:48:29 UTC
view on stackexchange narkive permalink

Lange Rede, kurzer Sinn. Entwickler und Tester arbeiten an demselben Boot - Ihrem Unternehmen.

Es ist leicht, Entwickler für einen Fehler zu kritisieren, den sie produzieren, aber es ist schwierig, sie für Fehler zu belohnen, die sie nicht produziert haben.

Wenn der Fehler den endgültigen Build erreicht hat und der Kunde ihn gemeldet hat, wer sollte dafür verantwortlich gemacht werden? Entwickler, um den Fehler zu schreiben, oder Tester, um ihn nicht zu erkennen?

Dies führt standardmäßig zu Spannungen zwischen Entwicklern und Testern. Ihre Idee bringt zusätzliche Spannung zwischen die beiden. Das wollen Sie wirklich nicht.

Wenn Sie einen freundlichen Arbeitsbereich haben und das Auffangen von Fehlern belohnen möchten, teilen Sie das Budget fair auf alle auf, erstellen Sie eine Liste der Entwickler, und für jeden Fehler zahlt der Entwickler 1 US-Dollar an die Bank. Organisieren Sie die Weihnachtsfeier und nutzen Sie die Bank, um das gesamte Team zu belohnen. Stellen Sie sicher, es macht mehr Spaß als Belohnung / Bestrafung und niemand nimmt es (zu) ernst. Belohnen Sie sowohl die "schlechtesten" als auch die "besten" unter Entwicklern und Testern.

Dom
2016-12-11 14:39:39 UTC
view on stackexchange narkive permalink

Ehrlich gesagt scheint der Anreiz bestenfalls nutzlos und schlimmer noch schädlich zu sein. Wenn Sie ein engagiertes QS-Team haben, haben Sie bereits Mittel für die Suche nach Fehlern bereitgestellt, da dies einen großen Teil der Stellenbeschreibung ausmacht. Es wird nicht viel zusätzlichen Gegensatz zwischen den beiden geben, da es mehr in Richtung der Politik selbst geben wird. Wenn Sie sich tatsächlich Sorgen über das Problem machen, dass Ihre derzeitigen Mitarbeiter viel Geld mit Bedingungen verdienen, ist es besser, jemanden einzustellen, bei dem Sie ihn entweder in der Qualitätssicherung oder in der Entwicklungsabteilung benötigen.

Wo könnte das wirklich hingehen? Falsch ist auf der Entwicklerseite, dass Sie einen Rückgang der Veröffentlichungen sehen, aus Angst, dass sie aufgrund neuer Fehler weniger bezahlt werden, und auf der QA-Seite könnten Sie viel längere Überprüfungsphasen sehen, weil Tester zusätzliche Bezahlung wünschen. Nicht zu sagen, dass dies passieren wird , nur dass es eine Möglichkeit ist.

Niemand möchte Fehler in seinem Endprodukt, aber das wird passieren. Als Manager gibt es viel bessere Möglichkeiten, um sicherzustellen, dass weniger Fehler im Code vorhanden sind, z. B. realistische Ziele und Zeitpläne, und eine bessere Entwicklung wie Codeüberprüfungen zu ermöglichen.

Aber sie werden nicht weniger bezahlt.Ich ziehe das vereinbarte Gehalt nicht ab.Ich gebe ihnen einen Bonus basierend darauf, wie viele Fehler in ihrem Code fehlten.Wenn längere Überprüfungszeiträume eine etwas bessere Qualität bedeuten, warum nicht?Es sollte jedoch ein Zeitrahmen für die Überprüfung festgelegt werden.
@TobiAlafin: Sie werden weniger bezahlt als wenn keine Fehler gefunden würden.Es liegt in der Natur des Menschen, dies als Verlust zu betrachten.


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...