Funktion Punkt-zu-kloc-Verhältnis wie eine software-Metrik... "Name that Tune" metric?

StackOverflow https://stackoverflow.com/questions/243971

  •  04-07-2019
  •  | 
  •  

Frage

Was halten Sie von der Verwendung einer Metrik der Funktion Punkt-zu-code-Zeilen als eine Metrik?

Es macht mich denken, die alten game-show "erkennen Sie die Melodie"."Ich kann name, dass tune in drei Noten!" Ich kann schreiben, dass Funktionalität in 0,1 klocs!Ist das sinnvoll?

Es wäre sicherlich scheinen zur Förderung der bibliotheksnutzung, aber ist das, was Sie wollen?

War es hilfreich?

Lösung

Ich denke, es ist eine schreckliche Idee.Genauso schlimm wie die Zahlung Programmierer von code-Zeilen, die Sie schreiben.

Im Allgemeinen bevorzuge ich prägnanten code, der über die ausführliche code, aber nur so lange, wie es drückt immer noch den Programmierer' Absicht klar.Maximierung der Funktion Punkte pro kloc wird ermutigen jeden, schreiben Sie Ihren code so kurz wie möglich, was darüber hinaus geht, prägnant und in kryptisch.Es wird auch Sie ermutigen die Menschen zu verbinden benachbarte Zeilen code in eine Zeile, auch wenn er den Beitritt der sonst nicht wünschenswert, nur um zu reduzieren die Anzahl von code-Zeilen.Die maximal zulässige Leitungslänge würde auch zu einem Problem werden.

Andere Tipps

KLOC ist erträglich, wenn Sie streng Code-Standards durchzusetzen, die Art wie für einen Bericht Seite Anforderungen: ein. Keine fünf Aussagen auf einer einzige Zeile setzen oder die meisten der Leerzeichen aus dem Code entfernen

Ich denke, eine Möglichkeit, Sie könnten entscheiden, wie effektiv es ist für Ihre Umgebung an mehreren verschiedenen Anwendungen und Module zu suchen ist, eine grobe Schätzung der Qualität des Codes erhalten, und dass der Code die Größe zu vergleichen. Wenn Sie, dass die Qualität des Codes ist konsistent innerhalb Ihrer Organisation nachweisen kann, dann ist KLOC keine schlechte Metrik.

In gewisser Weise werden Sie den gleichen Kampf mit einem ähnlichen Metrik gegenüber. Wenn Sie Feature oder Funktion Punkte zählen oder einfach verfügen oder Module, mögen Sie noch sie in irgendeiner Art und Weise gewichten. Schließlich sollten Sie in eine Art subjektiver Ergänzung zur objektiven Daten benötigen Sie sammeln.

„Was denken Sie, eine Metrik der Funktion Punkt zu Codezeilen als Metrik zu verwenden?“

Sie die Frage nicht bekommen. Das obige Verhältnis - für eine bestimmte Sprache und Team - eine einfache statistische Tatsache. Und es neigt zu einem Mittelwert mit einer kleinen Standardabweichung.

Es gibt viele Freiheitsgrade: Wie Sie Funktionspunkte zählen, welche Sprache Sie verwenden, wie (gemeinsam) klug das Team ist. Wenn Sie nicht über diese Dinge ändern, der Wert bleibt stabil.

Nach einigen Projekten zusammen, haben Sie eine feste Erwartung, dass 1200 Funktionspunkte 12.000 Zeilen Code werden in Ihrer bevorzugten Sprache / Rahmen / Teamorganisation.

KSloc / FP ist eine nackte statistische Beobachtung. Klar, da ist noch etwas über dieses, das Sie stört. Können Sie das konkretisieren in Ihrer Frage sein?

Die Metrik von Function Points zu Lines of Code tatsächlich die Sprachniveau Charts verwendet wird zur Erzeugung (eigentlich ist es Function Points zu Statements) eine ungefähre Vorstellung davon, wie mächtig eine Programmiersprache ist zu geben. Hier ein Beispiel: http://web.cecs.pdx.edu/ ~ timm / dm / functionpoints.html

Ich würde sonst nicht empfehlen, dieses Verhältnis für alles, mit der Ausnahme hohen Annäherungen wie das Sprachniveau-Diagramm.

Bibliotheksnutzung zu fördern, ist eine gute Sache, aber die andere Sache im Auge zu behalten ist, dass Sie im Verhältnis verlieren, wenn Sie die Bibliotheken bauen, und es wird nur mit Dividenden von Einsparungen im Laufe der Zeit auszahlen. Bean-Zähler werden das nicht verstehen.

Ich persönlich würde gerne eine Funktion Punkt zu ABC metrischen Verhältnis sehen - wie ich bin gespannt, wie die ABC-Metrik (die Größe zeigt und umfasst Komplexität als Teil der Info) beziehen würde - vielleicht linear, vielleicht exponentiell, etc ... www.softwarerenovation.com/ABCMetric.pdf

Alle Metriken saugen. Meine Theorie ist immer, dass, wenn Sie Haben , sie haben, dann die einfachste Sache verwenden Sie können, um sie zu sammeln und mit ihm und auf wichtige Dinge getan werden.

Das bedeutet in der Regel etwas entlang der Linien von

grep -c ";" *.h *.cpp | awk -F: '/:/ {x += $2} END {print x}'

Wenn Sie sich für eine „metric“ suchen Code efficency zu verfolgen, nicht. Wenn Sie darauf bestehen, wieder versuchen, etwas dumm, aber leicht wie Quelldateigröße (siehe Befehl grep oben, w / o das awk-Rohr) oder McCabe (mit einem Gegenprogramm).

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