Ich habe TDD für die letzten 3 Jahre gemacht. Wir waren ein kleines Unternehmen, und wir haben die meisten Aspekte des agilen Prozesses vom Management sehr gut unterstützt. Jeder im Entwicklungsteam wurde bei diesem Prozess verkauft. Und so wurde die Vorabinvestition, die es normalerweise braucht, um Fixtures zu bauen, in dem Wissen akzeptiert, dass es sich auf dem Weg auszahlt. (Code, der einen HTTP-Server startet, Code, der SQL-Datenbanken vor Tests füllt, usw.). Die Dokumentation fand meistens in den Tests statt, und Hilfeanfragen wurden normalerweise in Form eines fehlgeschlagenen Tests präsentiert.Verkauf von TDD an das Team
Jetzt bin ich zu einem größeren Unternehmen umgezogen, und während das Management den agilen Prozess unterstützt, sind die Teammitglieder eine bunte Mischung, einige von ihnen halten es für nützlich, manche tun es wegen des Managements und einige sehen es nicht Wert. Es war eine Herausforderung, die Leute davon zu überzeugen, einige Zeit damit zu verbringen, Geräte zu bauen oder ein Teammitglied zu überzeugen, wie ich ihm am besten helfen kann, wenn er sich die Zeit nimmt, einen versagenden Test zu schreiben.
Was ist Ihrer Meinung nach der beste Weg, TDD an einen zögerlichen Teamkollegen zu verkaufen? Die Einwände sind normalerweise: "Es sind unnötige Kosten", "wir können immer Tests nach der Tat für wichtige Teile schreiben", es ist ein Schlagwort, Teams nehmen es auf und dann fällt es auf die Seite, wenn der schwere Grind beginnt 'etc.
Duplizieren von vielen von diesen: http://stackoverflow.com/search?q=tdd+roi –
Sie haben etwas berührt, das mich gestört hat, seit ich anfing, an Teams zu arbeiten. Warum müssen wir Entwickler manchmal mit guten Praktiken "verkaufen"? Sicher haben sie nie die Erlaubnis für ihre schlechten, verschwenderischen Gewohnheiten bekommen. –
mögliche Duplikat von [Wie zur Förderung der Umsetzung von TDD?] (Http://stackoverflow.com/questions/428691/how-to-encourage-implementation-of-tdd) und viele andere. –