Grundlagen der Programmierung: Codemetriken

Was sind Metriken und was sind sie nicht?

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Metriken findet man im Alltag an vielen Orten. Was ist ihr Zweck und woran sollte man lieber nicht zu viel Erwartungen stellen?
04:34

Transkript

Was sind Code-Metriken und was sind sie nicht? Mit Metriken generell haben wir immer wieder zu tun. Beispielsweise Stiftung Warentest schafft Metriken, um Dinge zu vergleichen, die für uns sonst nicht vergleichbar sind, wie zum Beispiel Baumärkte. Das Gleiche macht auch gern der ADAC. Und dabei nutzt man das gleiche Verfahren. Man sucht sich eine Klasse von zu vergleichenden Dingen wie Fahrzeuge, Baumärkte, Bohrmaschinen und so weiter und so fort, überprüft deren Eigenschaften. Also, welche Eigenschaften sind vorhanden? Diesen Eigenschaften werden Wertigkeiten zugeordnet und dann wird geschaut, wie diese Eigenschaften untereinander vergleichbar gemacht werden können. Das heißt, ist der Stromverbrauch bei einer Bohrmaschine besonders wichtig? Oder bei einem Auto: Ist der Spritverbrauch besonders wichtig? Das fließt dann in eine Maßzahl ein und diese Maßzahl wiederum gibt dann eben die Qualität des Gegenstandes in Bezug auf seine Eigenschaften und im Verhältnis zu anderen Gegenständen mit ähnlicher Eigenschaft wieder. Diese Form von Metriken erlaubt es uns also, Dinge vergleichbar zu gestalten, die sonst nicht vergleichbar wären oder die nur über subjektive Wahrnehmung vergleichbar wird. Wir objektivieren also die subjektive Eigenschaft und machen es auf die Art und Weise vergleichbar. Und so wie bei allen anderen Metriken machen wir das auch bei Code-Metriken. Statt dass wir also einen Blackbox-Test machen und einfach nur sagen: "Okay, das sieht gut aus und das sieht nicht so gut aus", schauen wir uns tatsächlich an, wie ist der Code aufgebaut, den wir vergleichen. Und dabei sind die Code-Metriken nicht die einzigen Software-Metriken, die es gibt. Wir haben häufig auch mit vielen anderen zu tun, die sich zum Beispiel mit der Risikobewertung von Dingen beschäftigen, die sich mit den Aufwänden beschäftigen, "Function Points" zum Beispiel. Dort geht es eher darum, anhand von Anforderungsdokumenten einzuschätzen, wie aufwendig wird denn die Umsetzung, was man dann wieder bei deren Vertragsverhandlungen berücksichtigen muss. Code-Metriken beschäftigen sich aber mit dem Endprodukt und schauen dazu eben, wie ist dieses Endprodukt intern aufgebaut. Das heißt, insgesamt dienen Metriken immer dazu, dass wir objektiv Dinge prüfen können, um subjektive Empfindungen messbar zu machen, um subjektive Empfindungen zu widerlegen oder um sie zu bestätigen auch. Durch ihr strukturiertes Vorgehen, durch die Messbarkeit der Metriken haben wir auch die Möglichkeit, im Nachgang den Test zu wiederholen, ihn auf andere Gegenstände der gleichen Art anzuwenden. Erst dadurch wird es ja vergleichbar. Und eben diese Vergleichbarkeit der unterschiedlichen Zustände über Metriken erlaubt es uns dann, Qualitätsvorgaben für die gleiche Klasse von Gegenständen zu machen. Mit Gegenständen meine ich hier eben alles von der Bohrmaschine über den Prozess innerhalb von Unternehmen bis hin zur Softwarequalität als solches. Ganz wichtig bei der ganzen Sache ist aber noch, dass diese Metriken aufgrund ihrer Erfassung nicht 100 % exakt sein können. Sie sind immer nur Indikatoren für einen Qualitätszustand. Wenn man diesen Indikator anwendet, muss man also berücksichtigen, in welcher Situation man sich befindet. Vielleicht ist für mich beim Kauf einer Bohrmaschine beispielsweise viel wichtiger, ob es sich um eine Schlagbohrmaschine handelt oder nicht, als dass ich den Energieverbrauch berücksichtige, der für mich nicht ganz so wichtig erscheint, da ich ja nicht den ganzen Tag nur bohren werde, sondern eher selten. Genauso ist das bei den Code-Metriken. Wenn ich viel generierten Code einsetze, dann entstehen automatisch andere Zahlenwerte, als wenn ich den Code beispielsweise selbst geschrieben habe. Generierter Code ist aber eher abhängig von den Generatoren und demnach habe ich eventuell nicht direkten Einfluss darauf, wie er letztendlich entsteht. Da ist wichtig, dass der Generator anständig funktioniert als dass der Code anständig aussieht, der da entsteht, weil er gar nicht verständlich sein müsste. Denn wenn etwas nicht verständlich ist bei generiertem Code, dann kann ich den einfach nochmal generieren. Also, behalten Sie im Hinterkopf: Man muss Metriken mit Vorsicht genießen und man muss sie interpretieren lernen. Man muss auch seine eigene Situation kennen, um diese Interpretation auf die Situation anwenden zu können.

Grundlagen der Programmierung: Codemetriken

Lernen Sie Methoden, Prinzipien und Werkzeuge kennen, mit deren Hilfe Sie die Qualität Ihrer Software dauerhaft sicherstellen können.

1 Std. 43 min (20 Videos)
Derzeit sind keine Feedbacks vorhanden...
Exklusiv für Abo-Kunden
Erscheinungsdatum:25.04.2017

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!