Das DevOps-Dilemma
Konzentrieren wir uns auf Ressourceneffizienz zu Lasten des Flusses?
Wie viele DevOps- und Agile-Teams nur allzu gut wissen, macht Teamwork den Traum in Bezug auf die Flow-Effizienz wahr. Es gibt wenige Dinge, die befriedigender sind als ein effizienter DevOps-Betrieb und das Abhaken von Punkten auf der To-do-Liste. Aber mit den heutigen DevOps-Teams, die oft überfordert sind, ist es leicht, sich auf die falschen Dinge zu konzentrieren und das Gesamtbild zu vernachlässigen. Wir sprechen von Ressourceneffizienz versus Flusseffizienz.
Die Priorisierung der Ressourceneffizienz über der Flusseffizienz könnte Teams zurückhalten und zu erheblichen Diskrepanzen in Bezug auf den Gesamtfortschritt führen. In diesem Artikel erörtern wir, warum die Untersuchung und Messung, wie Artikel durch das System fließen, genauso wichtig ist wie die Bewertung der individuellen Effizienz.
Eine bessere Möglichkeit, Teamarbeit zu verfolgen
Die Konzentration auf die Leistung eines einzelnen Beitragenden in einem Wertstrom könnte der Gesamtleistung des Systems tatsächlich schaden. Es mag kontraintuitiv erscheinen, aber im Wesentlichen müssen DevOps-Teams damit beginnen, das Gesamtbild zu betrachten – mit anderen Worten, die gesamte organisatorische Effizienz – bevor sie Ressourcenineffizienzen hervorheben und abbauen.
Um dies zu erreichen, muss DevOps damit beginnen, die richtigen Dinge zu überwachen. Zum Beispiel ist es großartig, die Zeit zu verfolgen, die für Programmierprojekte aufgewendet wird, aber es misst nur den individuellen Output, was bedeutet, dass Sie die volle Wirkung der kollektiven Gruppe weniger wahrscheinlich anerkennen.
Anstatt den individuellen Ressourceneinsatz zu messen, könnten Manager die Zykluszeit überwachen. Die Untersuchung der Dauer vom Start- bis zum Endpunkt jedes Projekts könnte eine bessere Vorstellung von der Flusseffizienz geben, bevor man sich auf die einzelnen Ergebnisse konzentriert. Das Altern ist eine weitere Metrik, die untersucht werden könnte. Wenn man sich ansieht, wie lange etwas in einer bestimmten Phase zurückgehalten wird, könnten Manager in Zukunft bessere Entscheidungen treffen und die Allokationen entsprechend verschieben.
Ebenso könnte es sich lohnen, die WIP-Levels (Work-in-Progress) in jedem Modus zu überwachen und darauf abzuzielen, diese zu minimieren. Das Reduzieren der Batch-Größen sowohl bei der Story-Größe als auch bei der Bewegung von Elementen zwischen den Modi im Wertstrom könnte bedeuten, dass Sie eine gleichmäßigere Fortschrittsrate haben. Es hat sich auch bewährt, sicherzustellen, dass Elemente den Wertstrom bis zur Fertigstellung durchlaufen, bevor demselben Teammitglied neue Aufgaben zugewiesen werden.
Milderung des Arbeitshungers
Eine zentrale Herausforderung für DevOps-Teams entsteht, wenn sich Entwickler ausschließlich darauf konzentrieren, ihre Arbeit vollständig abzuschließen, was bedeutet, dass sie mit der Freigabe von Aufgaben in die nächste Phase warten, bis alle Aufgaben auf ihrer Liste abgeschlossen sind. Dies führt dann zu Engpässen, die wiederum zu Ineffizienzen in Bezug auf verschwendete Ressourcen, Zeit und Geld führen.
Der Wechsel zu kleineren Batchgrößen könnte helfen, dieses Problem zu mindern. Große Losgrößen führen oft zu einem „Aushungern“ der Arbeit in den Test- oder Implementierungsbereichen des Wertstroms und erhöhen tendenziell die Zykluszeit. Dies liegt daran, dass die Menge an Arbeit, die zu einem bestimmten Zeitpunkt auf jemandes Teller liegt, sein Gefühl für Effizienz verzerren kann. Kleinere Batches ermöglichen ein schnelleres Feedback zu kleineren Iterationen neuer Funktionen und Updates, wodurch das Projekt insgesamt schneller voranschreiten kann.
Sichtbarkeit zur Priorität machen
Um den Mangel an Arbeit wirklich zu beseitigen (oder zumindest zu reduzieren) und ein reibungsloseres Maß an Gemeinschaftsarbeit zu erreichen, muss das gesamte Team einen besseren Überblick über den gesamten Prozess erhalten. Ein Gesamtüberblick über den Fortschritt und den Status des gesamten Wertstroms ist unerlässlich, um den Aufgabenfluss im gesamten Produktteam zu optimieren.
Die Implementierung einer Wertstrommanagement-Plattform kann zu viel größerer Klarheit führen und eine bessere Sichtbarkeit und Kontrolle über jedes Team, Tool und jede Pipeline im gesamten Unternehmen ermöglichen.
Mit den richtigen Softwarebereitstellungs-Dashboards können Manager die Wertschöpfungsrate im Vergleich zu den gewünschten Geschäftsergebnissen besser untersuchen. Genauer gesagt bedeutet die Möglichkeit, Wertstromflussmetriken zu analysieren, dass Unternehmen ihre Gesamtproduktion aus einem breiteren Blickwinkel betrachten können, was zu einem besseren Wissen und einer fundierteren Entscheidungsfindung führt.
Diese wertvollen Durchflussmetriken können auch einen besseren Einblick in die Arbeitsabläufe der Organisation im Allgemeinen bieten. Das Erreichen einer besseren Konsistenz ist natürlich das ultimative Ziel. Mit Elementen wie Cumulative Flow Diagrams (CFD) können Manager sehen, wie effizient eine bestimmte Aufgabe im gesamten Workflow voranschreitet.
Dank der klaren Art und Weise, wie ein CFD die Daten eines Projekts darstellt, kann jedes Team und jedes einzelne Mitglied visualisieren, wie alles gut läuft, ohne Störungen, Engpässe oder Arbeitsunterbrechungen. Ebenso signalisiert die Möglichkeit, die Ausbuchtungen, Inkonsistenzen und Diskrepanzen in Diagrammform zu sehen, Managern, dass Aufgaben aufgehalten, nicht abgeschlossen oder nicht an die nächste Phase weitergegeben werden.
Gelegentlich bemerken Manager vielleicht, dass Linien in einem CFD ganz verschwinden können. Das bedeutet, dass jemand keine Arbeit von anderen weitergibt oder eines der Teammitglieder seine Arbeitsstapel behält. Obwohl es immer Fortschritte geben wird – angezeigt durch den nie rückläufigen Trend des Diagramms – werden Manager klar erkennen, in welchen Bereichen sie sich auf eine bessere Durchflusseffizienz konzentrieren müssen. Durch diese Betrachtung des gesamten Wertstroms können Projektmanager die Aufgaben ihres Teams effektiv synchronisieren und Aufgaben so verteilen, dass alle an einem Strang ziehen.
Im Wesentlichen schaden viele Entwicklerteams unwissentlich der Gesamteffizienz des Unternehmens, indem sie einfach das Gesamtbild nicht sehen und sich auf die Ressourceneffizienz konzentrieren, was oft zu einem Fluss führt Ineffizienz.
In einer Zeit, in der die Softwareentwicklung immer wettbewerbsintensiver wird, müssen sich agile und DevOps-Experten vom individuellen Ansatz zur Wertschöpfung verabschieden und zu einer stärker systemzentrierten Art des Managements übergehen, um die langfristige Flow-Effizienz besser zu optimieren.