Kontinuierliche Liefermetriken

Kontinuierliche Liefermetriken

  • ITOps & DevOps
6 Minuten Lesezeit Aktualisiert Jun 23, 2021

Auf einen Blick: Continuous Delivery Metrics bewertet die Leistung in DevOps, um die Softwareentwicklung und -bereitstellung zu verbessern. Sie legt Wert auf kritische Kennzahlen wie Build-Qualität und Sicherheitsintegration innerhalb der CI-Pipeline.

  • Wichtige Leistungskennzahlen sind die Vorlaufzeit zur Produktion und die Qualität des Softwareaufbaus.
  • Die frühe Integration von Sicherheit in der CI-Pipeline ist für die Risikominderung unerlässlich.

Der DevOps-Ansatz für den Softwareentwicklungslebenszyklus (SDLC) wurde mit dem Ziel eingeführt, die Geschwindigkeit, Qualität und Leistung des Softwareentwicklungs- und Lieferprozesses zu optimieren. Der Ansatz stützt sich auf Best Practices bezüglich:

  • Softwareentwicklung
  • Organisationskultur
  • Geschäftsabläufe
  • Endnutzerinteraktionen

In DevOps-Organisationen werden diese Rahmenrichtlinien von Entwicklern, IT-Ops, QA, InfoSec und anderen Teams übernommen, die gemeinsam auf das gemeinsame Ziel hinarbeiten, bei jeder Veröffentlichung hochwertige Software im Rahmen der Continuous Delivery (CD)-Praxis zu liefern. Wie bewerten DevOps-Teams also ihre Leistung hinsichtlich der Erreichung dieser Ziele? In diesem Artikel betrachten wir einige gängige Kennzahlen, die zur Bewertung der Continuous Delivery-Leistung in DevOps verwendet werden.

Kontinuierliche Lieferbereiche zu messen

Kritische Themen

Der erste Schritt zur Steuerung eines effizienten kontinuierlichen Lieferzyklus besteht darin, die kritischsten und wirkungsvollsten Risiken zu eliminieren. Diese Risiken umfassen Schwachstellen im Netzwerk und Technologien der IT-Umgebung, die die Software und Datenressourcen potenziell kompromittieren können, bevor sie überhaupt auf den Markt gebracht werden. Beispiele für KPIs sind:

  • Anzahl kritischer Schwachstellen in allen Apps und Diensten
  • Netzwerk-Eindringlingsversuche
  • Unbefugte Nutzung von Datenverkehr oder Datenübertragungsversuche
  • Anzahl fehlgeschlagener Sicherheitstests
  • Prozentsatz der bestandenen Sicherheitsprüfungen

Die Integration von Sicherheit in die Pipeline für Continuous Integration (CI), eine Teilmenge von CD, ist oft herausfordernd und von Entwicklern, die schnellere CD-Zyklen anstreben, nicht immer willkommen. Daher muss Sicherheit in früheren Phasen des SDLC von Grund auf aufgebaut werden.

Effizienz und Produktionszeit

Das Hauptziel eines Entwicklungsteams ist es, sicherzustellen, dass der funktionalste Software-Build innerhalb kurzer CD-Zyklen zur Veröffentlichung verfügbar ist. Das Ziel von ITOps ist es, sicherzustellen, dass die Infrastrukturressourcen stets verfügbar und optimal genutzt werden, um maximale Kosteneffizienz des Prozesses zu gewährleisten. Gemeinsam können Dev und Ops die folgenden KPIs betrachten, um die Leistung ihrer kontinuierlichen Lieferzyklen zu verstehen:

  • Anzahl der Code-Zweige. Dies bezieht sich auf die Anzahl der in Arbeit befindlichen Feature-Komponenten. Unnötige Komponenten erhöhen die Entwicklungslast und Sicherheitsrisiken.
  • Vorlaufzeit zur Produktion/Zykluszeit. Die Zeit, die benötigt wird, um einen neuen Build zu implementieren, zu testen und zu liefern. Dieser KPI hängt von mehreren Variablen ab, wie Risiko, technischer Schulden, Überwachungsmetriken und anderen Abhängigkeiten, die die Durchlaufzeit zwischen Teams, Versionen und den Stand der SDLC-Reife beeinflussen können.
  • Time To Value (TTV). TTV bewertet den Release-Prozess statt des gesamten CD-Zyklus. Es bezieht sich auf die Zeit zwischen dem Schreiben von Code und dessen Veröffentlichung. Mit anderen Worten: Es betrachtet, wie schnell der Endnutzer aus einer neuen Softwareentwicklung profitiert.
  • Team-Bindungsrate. Als weiche Kennzahl zur Bewertung der Unternehmenskultur kann die Team-Bindungsrate zeigen, ob die Mitarbeiter gerne im angestrebten Tempo des CD-Zyklus arbeiten. Die durchschnittliche Zeit, die ein Mitarbeiter in den DevOps-Teams verbringt, könnte eine Antwort darauf geben.

Bauqualität & Betrieb

Die Infrastrukturleistung ist eine der obersten Prioritäten von DevOps-Teams. Wenn die Software in der Test- oder Produktionsumgebung bereitgestellt wird, hinterlässt sie an jedem Knoten der Infrastruktur eine riesige Spur von Log-Metriken. Diese Informationen helfen dabei:

  • Verstehen Sie den Zustand der zugrundeliegenden Infrastruktur
  • Anwendung optimieren
  • Identifizieren Sie potenzielle Sicherheitslücken

Einige Kennzahlen, die helfen können, diese Ziele zu erreichen, sind:

Infrastrukturnutzung

Sind einige Knoten überzeichnet? Welche Knoten zeigen über einen bestimmten Zeitraum kritische Fehler? Die Analyse der Infrastrukturauslastungsraten aller Knoten, Server, virtuellen Maschinen sowie anderer Hardware und virtualisierter Komponenten im Netzwerk kann Ihnen helfen, die tatsächliche Leistung jeder Softwareversion zu verstehen.

Produktionsausfälle & MTTR

Service Level Agreement (SLA)-Metriken bezüglich Verfügbarkeit, Leistung und Antwort des CD-Zyklus sollten für einen Anwendungsdienst angegeben und angewendet werden. Kontinuierliches Feedback und Verbesserungen können genutzt werden, um die Reife des kontinuierlichen Lieferzyklus zu verbessern.

Anzahl der Fehler/Fehlerraten

Dies kann verwendet werden, um Fehler und Produktionsprobleme in Neubauten zu identifizieren . Diese Fehler erfordern eine gründliche Ursachenbewertung und können von verschiedenen Faktoren abhängen.

Teststatistiken

Die Anzahl der Tests, die CD-Pipeline im Vergleich zur Vollständigkeit der Tests und die Testabdeckung können Ihnen helfen, die Qualität des Softwarebaus sowie die Effizienz des Testprozesses zu verstehen.

Ticketbearbeitungszeit

Effektive Ticket-Lösung bedeutet nicht nur, ein spezifisches Problem für den Endnutzer zu lösen, sondern konzentriert sich in erster Linie darauf, die Ursache des Problems zu verstehen. Eine große Anzahl wiederholender Tickets liefert beispielsweise Einblicke in spezifische wiederkehrende Probleme, die mit der Technologie, der App-Performance oder der Steuerung des SDLC-Prozesses zusammenhängen.

Kontinuierliche Lieferung erfordert Messung

DevOps-Organisationen übernehmen kontinuierliche Bereitstellungspraktiken als ingenieurwissenschaftliches Prinzip. Die Lieferung hochwertiger Software-Builds innerhalb eines kontinuierlichen Prozesses erfordert, dass Organisationen:

  • Baseline-Metriken festlegen
  • DevOps- und agile-Methodiken übernehmen
  • Wiederholen Sie es, indem Sie datenbasierte Erkenntnisse aus Daten nutzen

Schließlich lassen sich die Verbesserungen durch greifbare Änderungen der SDLC-Arbeitsabläufe sowie an Infrastruktur- und Betriebsänderungen basierend auf den Continuous Delivery-Kennzahlen beobachten.

Verwandte Literatur

DevOps-Leitfaden

  1. Was ist DevOps? Eine umfassende Einführung
  2. Eine kurze Geschichte von DevOps
  3. Einführung in die DevOps-Architektur
  4. Automatisierung in DevOps: Warum und wie man DevOps-Praktiken automatisiert
  5. Was ist CI/CD? Kontinuierliche Integration und kontinuierliche Lieferung erklärt
  6. Wie man eine CI/CD-Pipeline mit Jenkins aufbaut
  7. DevOps-Metriken zur Optimierung von CI/CD-Pipelines
  8. Kontinuierliche Liefermetriken
  9. Ist Continuous Integration in Continuous Deployment ein Fortschritt – oder nicht?
  10. Unterschiede zwischen Continuous Integration (CI), Delivery (CD) und Deployment
  11. Quellcode und Versionskontrolle in DevOps
  12. Was ist kontinuierliche Testung?
  13. Testautomatisierungs-Frameworks: Der ultimative Leitfaden
  14. Release Management in DevOps
  15. Erklärt: Monitoring & Telemetrie in DevOps
  16. Anwendungs-Leistungsmanagement in DevOps
  17. DevOps-Orchestrierung im SDLC
  18. Einführung in Datenbank-DevOps
  19. Die Rolle der Microservices in DevOps
  20. Die Rolle der Virtualisierung in DevOps
  21. Container & DevOps: Wie Container in DevOps-Lieferpipelines passen
  22. Was ist eine Containerpipeline?
  23. Was ist eine DevOps-Toolchain?
  24. Verwaltung von Containern und Code für DevOps
  25. Die Rolle von Agile in DevOps
  26. Die Rolle der Cloud in DevOps
  27. Was ist FinDevOps?
  28. Top-DevOps-Trends im Jahr 2022
  29. DevOps-Werte & Prinzipien
  30. DevOps-Kennzahlen und KPIs
  31. DevOps-Ratschläge für kleine, mittlere und große Organisationen
  32. DevOps-Teamstruktur
  33. Top-DevOps-Bücher, die man heute lesen sollte
  34. Buchrezension von The Phoenix Project: DevOps For Everyone
  35. DevOps-Influencer: 11 DevOps-Experten, denen Sie auf Twitter folgen können
  36. GitHub, GitLab, Bitbucket & Azure DevOps: Was ist der Unterschied?
  37. Best Practices: Wie man Anwendungen für Kubernetes architekt
  38. Konfigurationsmanagement in DevOps
  39. DevOps-Verzweigungsstrategien erklärt
  40. DevOps-Jobbezeichnungen, Rollen und Verantwortlichkeiten
  41. Testen in DevOps: Konzepte, Best Practices und mehr
  42. Der vollständige DevOps-Zertifizierungsleitfaden für 2022
  43. Was ist das Kubernetes-Operator-Muster?

Diese Beiträge sind meine eigenen und spiegeln nicht unbedingt die Position, Strategien oder Meinung von BMC wider.

Mehr aus ITOps & DevOps

Interessieren Sie sich für mehr von BMC?

The Brief ist unsere monatliche E-Mail zum Mainframe und zur Enterprise-Orchestrierung: Recherchen, Kundenberichte, Produktnachrichten, Events.

Mit der Registrierung für dieses Angebot bestätigen Sie, dass Sie die Datenschutzrichtlinie von BMC gelesen und zugestimmt haben.

Sie haben The Brief abonniert

Das Briefing umfasst die Mainframe- und Enterprise-Orchestrierung – BMC AMI und Control-M – sowie die Analystenforschung, Kundeneinsätze und Events in beiden Bereichen.