Frage

Es ist ein subtiler Grund, warum es nicht gut sein könnte: Manchmal ist die Schuld für etwas zu brechen sollte wirklich auf dem Individuum gestellt werden, die ohne automatisierte Tests fragilen Code geschrieben hat, nicht derjenige, der ihren Code brach, indem sie ein sollte-sein -unrelated Änderung woanders.

Ein Beispiel vorstellbar ist, wenn jemand Programme gegen eine Schnittstelle in einer Weise, die das Verhalten der spezifisch auf die Umsetzung du jour übernimmt, aber nicht durch bestehende Verträge garantiert. Dann jemand anderes macht eine Änderung an der Umsetzung, dass passt in den Vertrag, sondern bricht die abhing-on-Code. Keine Tests fehlschlagen, weil keine Tests für den abhing On-Code geschrieben werden. Wer ist wirklich schuld?

Der Zweck ist nicht schuld Menschen, sondern Verantwortung zu verstehen, und wenn „Sie brechen, Sie kaufen es“ ist wirklich so eine gute Politik.

EDIT: ich wirklich diese schlecht formuliert. Ich wollte es sein, wie richtige Software in Bezug auf Abhängigkeiten zu schreiben, einschließlich versteckte Abhängigkeiten. Ich bedeutete dies eine Frage dessen, was Verantwortung eines Programmierers ist, um Fehler zu vermeiden, nicht das, was zu tun ist, wenn eine Überraschung Fehler gefunden wird. Da aber so viele Antworten schon gegeben haben, ich werde die Frage stehen lassen, wie sie ist und geben eine Antwort entsprechend.

War es hilfreich?

Lösung

es Fixing ist der Zweck nicht die Schuld zu legen. Angenommen, die ursprünglichen Autor des fragilen Code hat sich weiterentwickelt, der das Problem besitzen würde? Angenommen, er oder sie wird einfach an ein anderes Projekt zugewiesen? Die Person, die in das Problem Bedürfnisse lief derjenige sein, der es besitzt, bis er fest ist, er oder sie ist die Person zur Zeit dort und zur Zeit die Aufgabe zugewiesen von Änderungen an die Anwendung.

Nun, wenn Sie den Code kennen, wurde mit einem Problem geschaffen, das es in der Zukunft und die ursprünglichen Entwickler noch vermieden werden sollte, wäre es eine gute Sache sein, ihn zu lassen oder sie wissen über das Problem und warum verursacht es ein Problem , aber letztlich die Person, die in das Problem lief ist derjenige, müssen es beheben seinen neuen Code zur Arbeit zu kommen, die.

Andere Tipps

Ich glaube, Sie haben nichts zu gewinnen und alles zu verlieren, indem eine Atmosphäre von Schuld und Fingerzeigen zu fördern. Wenn etwas kaputt ist, sollten Sie es auf die beste Person zuweisen, das Problem zu beheben, ob das die letzte Person ist, diesen Bereich zu berühren, weil er oder sie die Gegend kennt, oder die Person, die es die Design-Philosophie zuerst geschrieben, so weiß es am besten , oder auch nur die Person, ohne etwas dringlicher zu tun.

„Sie brechen, Sie kaufen es“ macht Sinn in Bezug auf Bruch baut, nicht ernstere Probleme.

Wenn Sie den Build in einen Zustand versetzt, wo es nicht kompilieren oder grundlegende Tests ausführen, Sie blockieren Arbeit anderer Menschen. Wenn Sie nicht eine schnelle und einfache Lösung sehen können (weil Sie ein schnellen und einfache Fehler eingeführt), dann nur, um die Änderungen rückgängig zu machen (vielleicht mit lokalen Kopien von dem, was Sie in der Zwischenzeit gearbeitet haben) und begehen.

Wenn die Tatsache, dass Sie die Build brachen letztlich aufgrund eines größeren Problem, und befaßt sich mit diesem Thema weiter, sei es durch die Festsetzung es, die Berichterstattung darüber, oder zuweisen.

Kurzfristige, die Person, die die Code-Basis nicht praktikabel gemacht schnell macht es wieder praktikabel. Langfristig ist die beste Person für den Job (verschiedene Faktoren Balancing) hat den Zweck erfüllt.

Ich würde sagen, dass anfällig für die Katastrophe Eigentum Zuordnung möglicherweise nicht immer die produktivste Strategie. Es ist wahrscheinlich, seine eigene Belohnung.

Die letzte Person zu berühren, es defekt sein sollte, Refactoring ist ein großer Teil der Software-Entwicklung, wenn jemand den Code berühren und nicht richtig Dokument, Schreib- und testen Sie den Code als die auf sie. Im Rahmen der Schätzung legt die Zeit, um richtig den Code in einem besseren Zustand, als es gefunden wurde, soll einbezogen werden.

Das wird gesagt, wenn etwas nicht funktioniert, das ganze Team den Fall übernehmen sollte.

In einem Umfeld, wo Menschen zusammenarbeiten, sollte die Zusammenarbeit von größerer Bedeutung sein als Schuld platzieren. Wenn someone`s Modul zerbrechlich ist und wenn seine / ihre Kollegen, dass etwas zustimmen soll darüber nach, ein guter Team-Spieler würde das Problem beheben getan werden; das heißt, er würde Unit-Tests schreiben .usw

Auf jeden Fall einen eigenen Code des Programmierers ist letztlich ihre Verantwortung, und wenn sie nicht die Verantwortung, ihren Code verarbeiten kann mit der anderen zusammenarbeiten zu machen, dann müssen sie zu Recht die Schuld auf sich nehmen. Aber nicht, bevor sie eine Chance oder zwei geben, ihre Tat zu säubern.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top