Was nicht gemessen wird, wird nicht verbessert. Qualitätsmetriken helfen Ihnen, den Zustand der Software zu verstehen und Entscheidungen zu treffen. Dieser Leitfaden führt Sie in die wichtigsten Metriken und deren Verwendung ein.
Warum Qualität messen?
Sichtbarkeit
Aktuellen Zustand verstehen.
Trends
Wird es besser oder schlechter?
Entscheidungen
Basiert auf Daten, nicht auf Intuition.
Kommunikation
Demonstrieren Sie den Stakeholdern Qualität.
Code-Metriken
Codeabdeckung
Prozentsatz des durch Tests abgedeckten Codes.
Zyklomatische Komplexität
Komplexität der Pfade im Code.
Vervielfältigung
Wiederholter Code.
Technische Schulden
Kostenvoranschlag für Aufräumarbeiten.
Wartbarkeitsindex
Bewertung der Wartungsfreundlichkeit.
Fehlermetriken
Fehlerdichte
Fehler nach Codegröße (KLOC).
Bug-Escape-Rate
Fehler in der Produktion im Vergleich zur Vollversion gefunden.
###MTBF
Mittlere Zeit zwischen Ausfällen.
MTTR
Mittlere Reparaturzeit.
Schweregradverteilung
Anteil nach Schweregrad.
Testmetriken
Testabdeckung
Einheit, Integration, E2E.
Testerfolgsquote
Prozentsatz, der bestanden wird.
Flockige Tests
Instabile Tests.
Testausführungszeit
Wie lange soll die Suite ausgeführt werden?
Prozessmetriken
Vorlaufzeit
Vom Commit bis zur Bereitstellung.
Zykluszeit
Vom Anfang bis zum Ende eines Features.
Bereitstellungshäufigkeit
Wie viele Bereitstellungen pro Zeitraum.
Fehlerrate ändern
Prozentsatz der Bereitstellungen, die Probleme verursachen.
DORA-Metriken
Was sind sie?
DevOps-Forschungs- und Bewertungsmetriken.
Vier Metriken
- Bereitstellungshäufigkeit
- Vorlaufzeit für Änderungen
- Ändern Sie die Ausfallrate
- Zeit zur Wiederherstellung des Dienstes
Klassifizierung
Elite-, High-, Medium- und Low-Performer.
Codeüberprüfung
Zeit für eine Überprüfung
Wie lange dauert es, bis der Code überprüft wird?
Überprüfen Sie die Gründlichkeit
Inhaltliche Kommentare.
Zustimmungsrate
Erfolgsquote.
Produktionsmetriken
Betriebszeit
Systemverfügbarkeit.
Fehlerrate
Fehlerquote in der Produktion.
Reaktionszeit
Anforderungslatenz (S. 50, S. 95, S. 99).
Durchsatz
Anfragen pro Sekunde.
Benutzerzufriedenheit
###NPS
Net Promoter Score.
App Store-Bewertung
Bewertung in Geschäften.
Fehlerberichte
Umfang der Benutzerberichte.
Support-Tickets
Fehlerbezogene Tickets.
##Sicherheit
Schwachstellen
Anzahl und Schwere.
Zeit zum Patchen
Wie lange dauert die Reparatur?
Sicherheitsvorfälle
Sicherheitsvorfälle.
Werkzeuge
SonarQube
Statische Analyse, Codemetriken.
Codecov/Overalls
Abdeckungsverfolgung.
DORA/Sleuth
Bereitstellungsmetriken.
Datadog/Neues Relikt
Produktionskennzahlen.
Dashboards
Sichtbarkeit
Für das Team zugängliche Metriken.
Update
Wenn möglich in Echtzeit.
###Trends
Evolution ansehen.
Warnungen
Benachrichtigungen bei Anomalien.
Metriken verwenden
Spielen Sie nicht
Maßstäbe für Einsicht, nicht für Bestrafung.
Kontext
Zahlen ohne Kontext täuschen.
Trends > Absolutwerte
Die Richtung ist wichtiger als der Punktwert.
###Aktion
Kennzahlen, die nicht zu Maßnahmen führen, sind nutzlos.
Metriken nach Phase
Entwicklung
Komplexität, Abdeckung, Überprüfungszeit.
Veröffentlichung
Vorlaufzeit, Bereitstellungshäufigkeit.
Produktion
Fehlerrate, Betriebszeit, Reaktionszeit.
Nach der Veröffentlichung
Fehlerdichte, Kundenzufriedenheit.
Kontinuierliche Verbesserung
Grundlinie
Ausgangspunkt festlegen.
Ziele
Setzen Sie sich realistische Ziele.
Retrospektiven
Besprechen Sie die Kennzahlen regelmäßig.
###Experimente
Testinterventionen.
Häufige Fehler
Metriken als Ziel
100 % Abdeckung bedeutet nicht gleich Qualität.
Viele Metriken
Konzentrieren Sie sich auf einige wichtige Punkte.
Kontext ignorieren
Verschiedene Teams und Projekte.
Bestrafung durch Metriken
Es führt zu perversem Verhalten.
Fazit
Qualitätsmetriken sind Werkzeuge zum Verständnis und zur Verbesserung von Software. Wählen Sie die richtigen für Ihren Kontext aus, überwachen Sie Trends und ergreifen Sie datengesteuerte Maßnahmen. Qualität ist eine kontinuierliche Reise, kein Ziel.
##FAQs
1) Welcher Versicherungsschutz ist ausreichend? 70-80 % sind ein gutes Ziel. Aber es kommt darauf an, was getestet wird.
2) Welche Kennzahlen sind am wichtigsten? DORA-Metriken für DevOps. Fehlerdichte und Verfügbarkeit für Qualität.
3) Ersetzen Kennzahlen ein gutes Urteilsvermögen? Nein. Sie informieren über Entscheidungen, sie entscheiden nicht.
4) Wie kann man das Team davon überzeugen, Metriken zu übernehmen? Wert zeigen. Benutze es nicht zur Bestrafung.
5) Sind die Kennzahlen für ein kleines Team gültig? Ja. Vereinfachen Sie, aber messen Sie das Wesentliche.
