Das Tempo des geschäftlichen Wandels hat sich rasant beschleunigt. Es geht darum, fehlerfreie Produkte und Dienstleistungen zu produzieren, die den Erwartungen der Kunden in Bezug auf Qualität, Zuverlässigkeit und Stabilität entsprechen, und das relativ schneller als die Konkurrenz. Dies erfordert, dass Entwicklungs-, Test- und Betriebsteams zusammenarbeiten und Codes in einem viel höheren Tempo als bisher produzieren.
Das Agile- und DevSecOps-Manifest verkürzt die Entwicklungszeiten, unterteilt den Entwicklungszyklus in effiziente Abschnitte, ermöglicht eine schnellere Markteinführung und beschleunigt die Standortzuverlässigkeit durch Automatisierung. Die agile Methodik ist bekannt für die Geschwindigkeit, mit der neue Funktionen entwickelt werden können. Facebook und Google veröffentlichen fast jeden Tag neue Funktionen, manchmal sogar mehrmals am Tag, je nachdem, wie wichtig die Funktionen sind, die sie anbieten.
Ihre Konzepte sind mehr als nur kurze Sprints und sind der Inbegriff für schnelle Markteinführung. Diese deutlich kürzere Zeitspanne zwischen Code und Bereitstellung ist das Ergebnis der Automatisierung in verschiedenen Phasen des Entwicklungs- und Testlebenszyklus.
Wertstrom-Mapping für DevSecOps
Es gibt zahlreiche Möglichkeiten, Abläufe in der Entwicklungs- und Betriebsphase zu automatisieren. Die Herausforderung besteht darin, die geeignetste Lösung zu finden. Projekt- und Betriebsleiter müssen die richtigen Stellschrauben finden, um den ROI zu verbessern, ohne die Aspekte Qualität, Sicherheit und Standortzuverlässigkeit zu vernachlässigen. Sie müssen die Bereiche identifizieren, die für das angestrebte Ergebnis – schnellere Veröffentlichungen und beschleunigte Markteinführung – einen Mehrwert bieten, ohne andere Faktoren zu beeinträchtigen. Diese Bereiche werden als Wertströme bezeichnet, und ihre Optimierung führt zu einer effizienteren Automatisierung des Produktlebenszyklus.
Die ausführliche Befragung der Beteiligten und die Untersuchung der Daten in vier großen Kategorien, nämlich Technik, Prozesse, Messung und Kultur, die auf dem Umfang der Verbesserungen basieren, wird als Wertstromanalyse (Value Stream Mapping, VSM) bezeichnet. VSM in DevSecOps gibt den Teams ein visuelles Tool an die Hand, mit dem sie die wichtigste Aktivität (Stream) für das gewünschte Ergebnis (Wert) messen und verfolgen können.
Vorteile von Value Stream Mapping:
- Engpässe und Problembereiche identifizieren
- Fehler und Mängel überwachen und verwalten
- Verbesserte Sichtbarkeit des gesamten Prozesses
- Verbesserte Zusammenarbeit zwischen Teams
- Schnellere und integrierte Feedback-Zyklen
- Mehr Kontext und Klarheit bei den KPIs
Wenn Unternehmen Agile und DevSecOps gegenüber dem Wasserfall-Ansatz bevorzugen, muss die gesamte Journey als Change-Management-Initiative durchgeführt werden. Dabei ist es wichtig, die richtigen Wertströme auf den drei Ebenen des Wandels – Team, Produkt, Portfolio – zu identifizieren.
Die meisten Projekte gehen bei der Bewertung der Wertströme schief, weil sie unstrukturiert und nach dem Bauchgefühl der Mitarbeiter ausgeführt werden. Wertstromanalysen sind auf der Grundlage des Wertes abzuleiten, den sie zum gewünschten (oder beabsichtigten) Geschäftsergebnis beitragen. Der korrekte Weg zur Maximierung des Ergebnisses ist eine strukturierte Vorgehensweise bei der Wertstromanalyse. Eine intensive Aufgabe, bei der datengestützte Erkenntnisse gewonnen und mit qualitativen Inputs kombiniert werden.
Einige zentrale Fragen, die einem Team bei der Erstellung genauer Wertstrombewertungen helfen können, sind:
- Wie wird Agile in den Praxisbereichen umgesetzt? Wie steht die Entwicklung im Einklang mit der testgestützten Entwicklung? Wie ausgereift ist die Anwendung von technischen Verfahren wie Low Code/No Code?
- Werden die Grundsätze des Quality Engineering eingehalten? Halten sich die Entwickler an Standards? Erfüllen sie die Qualitätsstandards? Werden die Designstandards eingehalten?
- Wie werden die Release-Zyklen aus Sicht von DevSecOps durchgeführt? Wie weit ist dieser Prozess automatisiert, um eine durchgängige Bearbeitung zu ermöglichen?
- Ist der Prozess des Störfallmanagements aus Sicht der Standortzuverlässigkeit automatisiert und werden Rückmeldungen für technische Verbesserungen herangezogen?
- Die Unzufriedenheit der Kunden ist nicht unbedingt auf die Qualität der Funktionen zurückzuführen, sondern auch auf die Qualität der Infrastruktur. Wie werden in diesem Fall die Funktionen nach ihrer Freigabe in der Produktion verwaltet?
- Wie wird die App-Architektur aufgebaut? Ist das System skalierbar und lose gekoppelt, um Plug-and-Play zu ermöglichen? Gibt es in einem solchen Szenario eine Verschiebung in Richtung Microservices, Kubernetes?
Die Antworten auf diese wichtigen Fragen bilden die Grundlage für die Bewertung des Ist-Zustandes. Der nächste Schritt besteht in der Analyse der Wertströme unter Berücksichtigung dieser Inputs. Qualitativ sollte sich die Analyse auf die aktuellen Projektartefakte, das Prozessdesign, SOPs, SLAs, Tools usw. konzentrieren, sowie auf die kulturelle Eignung und die Fähigkeit, Veränderungen zu akzeptieren.
Bei der quantitativen Analyse werden Kennzahlen auf der Grundlage von Prozessdaten verwendet. Für Teams, die sich bezüglich der zu analysierenden Daten unsicher sind, empfiehlt DevOps Research and Assessment (DORA) die Messung der Bereitstellungshäufigkeit (Deployment Frequency, DF), der mittleren Vorlaufzeit für Änderungen (Mean Lead Time for Changes, MLT), der mittleren Wiederherstellungszeit (Mean Time To Recover, MTTR) und der Änderungsausfallrate (Change Failure Rate, CFR). Jede Kennzahl hat einen Wert und kann dazu verwendet werden, zu bestimmen, wie erfolgreich ein Unternehmen in Sachen DevOps ist - das Spektrum reicht von Elite-Performern bis zu Low-Performern.