Es ist im Allgemeinen eine schlechte Idee, Ihren Chef als Idioten zu bezeichnen. Daher beginnen meine Vorschläge damit, Metriken zu verstehen und zu diskutieren, anstatt sie abzulehnen.
Einige Menschen, die nicht wirklich Idioten betrachtet haben gebrauchte Metriken, die auf Codezeilen beruhten. Fred Brooks, Barry Boehm, Capers Jones, Watts Humphries, Michael Fagan und Steve McConnell alle ihnen verwendet. Wahrscheinlich haben Sie sie auch dann verwendet, wenn nur an einen Kollegen zu sagen, das Gott-Modul ist 4000 Zeilen, muss es in kleinere Klassen, gebrochen werden.
Es gibt spezifische Daten zu dieser Frage aus einer Quelle, die viele von uns respektieren.
http://www.codinghorror.com/blog/2006/07/diseconomies-of-scale-and-lines-of-code.html
http://www.codinghorror.com/blog/2005/08/are-all-programming-languages-the-same.html
http://discuss.joelonsoftware.com/default.asp?joel.3.286106.22
Ich vermute, dass die beste Verwendung der Codezeile pro Programmierstunde darin besteht, zu zeigen, dass dieser Wert über die gesamte Laufzeit des Projekts ziemlich hoch sein wird. Sobald jedoch Fehler gefunden und behoben werden, werden neue Codezeilen hinzugefügt, um Probleme zu lösen, die auftreten können waren nicht Teil der ursprünglichen Schätzungen, und Codezeilen, die entfernt wurden, um Duplikationen zu vermeiden und die Effizienz zu verbessern, zeigen, dass LOC / h andere Faktoren als die Produktivität angibt.
- Wenn Code schnell, schlampig, aufgebläht und ohne Umgestaltungsversuche geschrieben wird, ist die scheinbare Effizienz am höchsten. Die Moral hier wird sein, dass Sie vorsichtig sein müssen, was Sie messen.
- Für einen bestimmten Entwickler, wenn sie hinzufügen oder eine große Menge an Code zu berühren in dieser Woche, nächste Woche dort kann eine technische Schulden zu bezahlen sein in Bezug auf die Code-Review, testen, debuggen und Nacharbeit.
- Einige Entwickler arbeiten mit einer gleichmäßigeren Ausgaberate als andere. Es kann festgestellt werden, dass sie die meiste Zeit auf immer gute User Stories, dreh dich um sehr schnell und machen entsprechende Unit-Tests, und dann umdrehen und schnell machen Code ausgeben, die nur auf die User Stories fokussiert ist. Die Take hier weg ist, dass methodische Entwickler wahrscheinlich schnell haben wird sich umdrehen, wird kompakter Code schreiben, und haben eine geringe Nacharbeit, weil sie das Problem und die Lösung sehr gut verstehen, bevor sie zu Code starten. Es erscheint vernünftig, dass sie weniger programmieren, weil sie erst nach dem Überlegen programmieren, anstatt vorher und nachher.
- Wenn Code für seine Defektdichte ausgewertet, so wird es als einheitliches weniger sein wird gefunden. Einige Codes sind für die meisten Probleme und Mängel verantwortlich. Es wird ein Kandidat für das Umschreiben sein. Wenn das passiert, wird es das teuerste Code, weil durch sie hohe Maß an Nacharbeit werden. Es werden die höchsten Brutto-Codezeilen (hinzugefügt, gelöscht, geändert, wie von einem Tool wie CVS oder SVN gemeldet), aber die niedrigsten Netto-Codezeilen pro Stunde investiert. Dies kann sein eine Kombination aus dem Code am Ende entweder das komplexeste Problem oder die komplizierteste Lösung zu implementieren.
Unabhängig davon, wie die Debatte über die Produktivität der Programmierer in Codezeilen abwechselnd aus werden Sie feststellen, dass Sie mehr Menschen Macht brauchen, als Sie sich leisten können, und das System niemals rechtzeitig abgeschlossen werden. Sie echte Werkzeuge sind nicht Metriken. Sie basieren auf einer überlegenen Methodik, den besten Entwicklern, die Sie einstellen oder schulen können, und der Kontrolle von Umfang und Risiko (wahrscheinlich mit agilen Methoden).