Die Wertstromanalyse (Value Stream Mapping, VSM) ist ein sehr nützliches Instrument, um Einblicke in die Arbeitsabläufe eines Prozesses zu gewinnen. Sie kann verwendet werden, um sowohl wertschöpfende als auch nicht wertschöpfende Aktivitäten in einem Prozessablauf zu identifizieren und gleichzeitig Anhaltspunkte für die Optimierung der Prozesskette zu liefern. Die Ergebnisse eines VSM können für viele Gelegenheiten genutzt werden: von der Erstellung eines Business Case über die Definition einer Prioritätenliste zur Optimierung von Prozessen in Ihrem Unternehmen bis hin zur Identifizierung von Engpässen in Ihren bestehenden Prozessen und zur Gewinnung eines gemeinsamen Verständnisses prozessbezogener Probleme. Wenn Sie ein VSM Ihres aktuellen Softwareentwicklungsprozesses erstellen, werden Sie höchstwahrscheinlich erstaunt sein, wie viel Verschwendung und damit Raum für Verbesserungen Sie finden. Ich fordere Sie auf, dies in Ihrer eigenen Organisation auszuprobieren. Sie erhalten damit ein sehr leistungsfähiges Instrument, mit dem Sie Ihrem Management die Schritte erklären können, die geändert werden müssen, denn Sie erhalten Fakten. Um Ihnen einen schnellen Einstieg zu ermöglichen, habe ich ein paar Handgriffe für die Erstellung einer richtigen Wertstromkarte geschrieben.
In vielen Unternehmen besteht die Tendenz, "nur" lokale Optimierungen an den Prozessschritten vorzunehmen (d.h. pro Geschäftseinheit), während in Wirklichkeit die größten Prozessoptimierungen durch die Optimierung der Bereiche erzielt werden können, die zwischen den Prozessschritten liegen und dem Kunden keinerlei Wert hinzufügen; die nicht wertschöpfenden Aktivitäten. Value Stream Mapping ist ein großartiges Werkzeug zur Optimierung der gesamten Prozesskette, nicht nur der lokalen Schritte.
Das Beispiel - Abbildung eines Softwareentwicklungsprozesses
Viele Beispiele für Wertströme, die Sie im Internet finden, konzentrieren sich auf den Verkauf einer Hypothek, die Verpackung von Gegenständen in einer Fabrik oder einen logistischen Prozess. Das Beispiel, das ich verwenden werde, konzentriert sich auf einen typischen Softwarebereitstellungsprozess, wie wir ihn auch heute noch sehen: den 'traditionellen' Softwarebereitstellungsprozess mit vielen manuellen Schritten.
- zwei 4 Meter lange Bahnen aus braunem Papier.
- Klebeband, um das Papier an der Wand zu befestigen
- Stickies quadratisch mehrere Farben
- Stickies Rechteck mehrere Farben
- kleine Aufkleber in einer oder zwei Farben
- jede Menge Stifte (die Leute müssen die Stifte in die Hand nehmen können)
- farbige 'Punkt'-Stickies.
[caption id="attachment_13933" align="alignnone" width="736"]
Was brauchen Sie? (der hilfreiche Kollege nicht abgebildet)[/caption]
Schritt 1 & 2 Definieren Sie Ziele und Prozessschritte
Arbeiten Sie unbedingt einen Prozess nach dem anderen ab und beginnen Sie mit der Definition der Kundenziele (der Voice Of Customer). Ein gemeinsames Verständnis der VoC ist wichtig, denn in einer späteren Phase werden Sie gemeinsam mit dem Team festlegen, welche Aktivitäten wirklich zu dieser VoC beitragen und welche nicht. Oftmals werden diese Ziele in Zeit, Kosten und Qualität definiert. Nehmen wir für unser Beispiel an, der Kunde möchte jede Stunde eine neue Funktion liefern können, mit maximalen Kosten von 1000 $ pro Funktion und ohne Fehler.
[caption id="attachment_13935" align="alignnone" width="736"]
Definition der Stimme des Kunden und der Prozessschritte[/caption]
Schritt 3 Definieren Sie die Aktivitäten, die in jedem Prozessschritt durchgeführt werden Bestimmen Sie mit der Gruppe die Aktivitäten, die stattfinden. Fügen Sie unter den orangefarbenen Stickies grüne Stickies hinzu, die die Aktivitäten beschreiben, die in einem bestimmten Schritt durchgeführt werden.
[caption id="attachment_13936" align="alignnone" width="736"]
Definition der Aktivitäten, die in jedem Schritt durchgeführt werden[/caption]
Schritt 4 Definieren Sie Work in Progress (WiP)
Fügen Sie nun zwischen den Schritten pinkfarbene Haftnotizen hinzu, die die Anzahl der Features / Anforderungen / Objekte / Aktivitäten beschreiben, die derzeit zwischen den Akteuren in Bearbeitung sind. Dies wird als WiP - Work in Progress - bezeichnet. Wenn eine hohe Anzahl von Objekten auf ihre Bearbeitung wartet, haben Sie wahrscheinlich einen Engpass identifiziert, der den Prozessfluss stoppen oder verlangsamen könnte.
Fügen Sie zu den rosafarbenen WiP-Stickies, die besonders hohe WiP-Werte enthalten, einen kleinen Sticky hinzu, der angibt, was die Gruppe für den hohen WiP-Wert hält. Zum Beispiel muss ein Dokument per interner Post verteilt werden, oder es wird eine Wartezeit für ein zweiwöchentliches Meeting eingeführt oder eine Reise zu einem anderen Ort ist erforderlich. Diese Informationen können später zur Optimierung des Prozesses verwendet werden.
[caption id="attachment_13937" align="alignnone" width="736"]
Definieren Sie Arbeit in Arbeit[/caption]
Schritt 5 Identifizieren Sie Nacharbeit Nacharbeit ist Verschwendung. Dennoch werden Sie oft feststellen, dass eine Lieferung zur Nachbearbeitung an einen früheren Schritt zurückgegeben werden muss. Ermitteln Sie gemeinsam mit der Gruppe, wo dies geschieht und was die Ursache für diese Nacharbeit ist. Ein netter Zusatz ist es, auch First-Time-Right-Levels aufzuschreiben.
[caption id="attachment_13938" align="alignnone" width="736"]
Identifizieren Sie Nacharbeit[/caption]
Schritt 6 Fügen Sie zusätzliche Informationen hinzu Nehmen Sie sich etwas Zeit, um zusätzliche Kommentare zu den Aktivitäten auf den grünen Stickies hinzuzufügen. Einige Aktivitäten könnten z.B. nicht optimiert sein, sind nicht einfach zu handhaben oder werden aus Sicht der Gruppe als überflüssig angesehen. Markieren Sie diese Kommentare mit blauen Stickies neben der jeweiligen Aktivität.
[caption id="attachment_13939" align="alignnone" width="736"]
Zusätzliche Informationen hinzufügen[/caption]
Schritt 7 Fügen Sie Prozesszeit, Wartezeit und Vorlaufzeit hinzu und bestimmen Sie die Effizienz des Prozesszyklus Da wir den Prozess nun mehr oder weniger abgeschlossen haben, können wir damit beginnen, Informationen zur Zeitplanung hinzuzufügen. In diesem Schritt möchten Sie die folgenden Informationen ermitteln:
- Prozesszeit: die tatsächliche Zeit, die benötigt wird, um eine Aufgabe ohne Unterbrechungen auszuführen
- Vorlaufzeit: die tatsächliche Zeit, die für die Erledigung der Aktivität benötigt wird (auch als Elapsis Time bezeichnet)
- Wartezeit: Zeit, in der überhaupt keine Verarbeitung stattfindet, z.B. wenn Sie auf ein 'Ereignis' wie ein zweiwöchentliches Treffen warten.
(Nicht im Bild): Schreiben Sie für jede Aktivität auf dem grünen Klebezettel einen kleinen Klebezettel mit zwei vertikal ausgerichteten Zahlen auf. Die obere Zahl gibt die Prozesszeit an (z.B. 40 Stunden). Die untere Zahl steht für die Vorlaufzeit (z.B. 120 Stunden). (Im Bild): Fügen Sie ein Blockdiagramm unterhalb des Prozesses hinzu, wobei die Zeitangaben im oberen Bereich die Gesamtbearbeitungszeit für alle Aktivitäten und die Zeitangaben im unteren Bereich die Gesamtvorlaufzeit für alle Aktivitäten darstellen. (addieren Sie einfach die Zeitangaben für die einzelnen Aktivitäten, die ich im vorherigen Absatz beschrieben habe). Fügen Sie auch die spürbare Wartezeit zwischen den einzelnen Prozessschritten hinzu. Als letzten Schritt addieren Sie rechts von diesem Blockdiagramm die Summen. Da Sie nun alle Informationen auf dem Papier haben, können Sie Folgendes berechnen:
- Gesamtprozesszeit - Die Gesamtzeit, die benötigt wird, um tatsächlich an Aktivitäten zu arbeiten, wenn man sich auf die jeweilige Aktivität konzentrieren könnte.
- Gesamtvorlaufzeit - Die Gesamtzeit, die dieser Prozess tatsächlich benötigt.
- Projektzykluseffizienz (PCE): -> Gesamtprozesszeit / Gesamtvorlaufzeit *100%.
Fügen Sie diese Informationen in die untere rechte Ecke Ihres braunen Papiers ein. Die Zahlen für dieses Beispiel lauten:
[caption id="attachment_13956" align="alignnone" width="736"]
Prozess-, Warte- und Vorlaufzeiten hinzufügen[/caption]
Schritt 8 Identifizieren Sie Aktivitäten, die einen Mehrwert für den Kunden darstellen und solche, die keinen Mehrwert für den Kunden darstellen (Customer Value Add, CVA) Kategorisieren Sie nun die Aufgaben in 2 Arten: Aufgaben, die einen Mehrwert für den Kunden darstellen (Customer Value Add, CVA) und Aufgaben, die keinen Mehrwert für den Kunden darstellen (Non Value Add, NVA). Die NVA können Sie wiederum in zwei Kategorien unterteilen: Aufgaben, die einen Geschäftswert hinzufügen (Business Value Add, BVA) und 'Verschwendung'. Bei der Optimierung eines Prozesses ist Verschwendung vollständig zu eliminieren, da sie weder für den Kunden noch für das Unternehmen als Ganzes einen Mehrwert darstellt. Aber auch bei den Aktivitäten, die als 'BVA' kategorisiert sind, müssen Sie sich fragen, ob diese Aktivitäten zur Kette beitragen. Markieren Sie CVA-Aufgaben mit einem grünen Punkt, BVA-Aufgaben mit einem blauen Punkt und Verschwendung mit einem roten Punkt. Notieren Sie die Legende auf der Karte, damit Sie später darauf zurückgreifen können. Wenn Sie CVA, NVA und BVA identifizieren ... zwingen Sie sich, auf die Stimme des Kunden zurückzugreifen, die Sie in Schritt 1 notiert haben, und überlegen Sie, wer hier Ihr Kunde ist. In diesem Beispiel ist der Kunde nicht der Endbenutzer, der das System verwendet, sondern das Unternehmen. Und es war das Unternehmen, das Schneller, billiger und besser wollte. Wenn Sie nun beginnen, jede einzelne Aufgabe zu markieren, sollten Sie sich etwas Zeit nehmen, um herauszufinden, welche Aufgaben tatsächlich zu diesen Zielen beitragen.
[caption id="attachment_13958" align="alignnone" width="736"]
Bestimmen Sie den Kundenmehrwert und den Nicht-Mehrwert[/caption]
Um Ihnen einen Leitfaden an die Hand zu geben, wie Sie bei der Markierung der einzelnen Aufgaben vorgehen können, werde ich ein wenig darauf eingehen, wie ich die Aktivitäten markiert habe. Bitte beachten Sie, dass dies nur ein Beispiel ist. Ihr Team könnte innerhalb des Workshops anders verfahren. Elemente, die ich als CVA gekennzeichnet habe: Codierung, Tests (Unit, Static, Acceptance), Ausführung von Tests und Konfiguration der Überwachung bringen dem Kunden (Unternehmen) einen Mehrwert. Und warum? Denn all diese Punkte beziehen sich auf eine schnellere, bessere (hohe Qualität durch Tests + Überwachung) und billigere (weniger Fehler durch höhere Codequalität) Lieferung von Code. Elemente, die ich als BVA gekennzeichnet habe: Dokumentation, Konfiguration von Umgebungen, Bereitstellung von VMs, Installation von MW sind erforderlich, um dem Kunden bei Anwendung dieses (typischen Wasserfall-) Softwareauslieferungsprozesses etwas liefern zu können. (Hinweis: Ich bin nicht unbedingt mit diesem Prozess einverstanden.) :) Dinge, die ich als reine Verschwendung bezeichnet habe, die dem Kunden keinen Mehrwert bringen: Dinge wie das Einholen von Genehmigungen, der Prozess zur Erlangung von Finanzmitteln (obwohl dies wahrscheinlich erforderlich ist), die Diskussion von Details und die Dokumentation von Ergebnissen für spätere Referenzen oder das Warten auf den vierteljährlichen Veröffentlichungszyklus. Keiner dieser Punkte ist erforderlich, um schneller, billiger oder besser zu liefern, so dass diese Punkte in dieser Hinsicht als Verschwendung betrachtet werden können. Das war's (und Schritt 9) - Sie haben Ihren aktuellen Prozess abgebildet So, das war's! Die Wertstromkarte ist nun mehr oder weniger vollständig und enthält alle relevanten Informationen, die zur Optimierung des Prozesses in einem nächsten Schritt benötigt werden. Schritt 9 würde hier lauten: Nehmen Sie sich etwas Zeit, um die wichtigsten oder am leichtesten zu behebenden Punkte/Bottlenecks aufzuschreiben und intern mit Ihrem Team über eine Lösung zu diskutieren. Konzentrieren Sie sich auf die Punkte, die Sie entweder als BVA oder als reine Verschwendung eingestuft haben, und denken Sie über Alternativen zur Beseitigung dieser Schritte nach. Stellen Sie Ihren Kunden in den Mittelpunkt, nicht Ihren Prozess! Eine Aktivität als Ganzes fallen zu lassen, scheint etwas radikal zu sein, aber manchmal sind gute Ideen einfach so! Beachten Sie übrigens, dass bei der Beseitigung eines Engpasses ein weiterer Engpass auftauchen wird. Es wird immer irgendwo im Prozess einen Engpass geben, und daher muss die Prozessoptimierung als kontinuierlicher Prozess betrachtet werden. Ein letzter Tipp: Um einen Wertstromanalyse-Workshop beim Kunden durchführen zu können, ist es vielleicht eine gute Idee, sich zunächst einem erfahreneren Kollegen anzuschließen, um ein Gefühl für die Dynamik eines solchen Workshops zu bekommen. Die Tatsache, dass alle Teilnehmer an einem Tisch sitzen und gemeinsam den Lieferprozess skizzieren und darüber sprechen, wird es Ihnen ermöglichen, einen optimierten Prozess zu entwickeln, den jeder mittragen wird. Dennoch erfordert es einige Mühe, den Workshop in Gang zu bringen. Nehmen Sie sich Zeit und überstürzen Sie nichts. Ich hoffe, dass Sie mit den obigen Schritten die derzeit größten Engpässe in Ihrem Unternehmen identifizieren und loslegen können. Wenn genügend Interesse besteht, werde ich in einem der nächsten Blogs darüber schreiben, welche Lösungen für die Engpässe in meinem Beispiel in Frage kommen. Wenn Sie eine Idee haben, schreiben Sie mir einfach, damit wir darüber diskutieren können! Mein Ziel wäre es, auf eine Lösung hinzuarbeiten, die eine kontinuierliche Bereitstellung von Software ermöglicht. Michiel Sens.
Verfasst von

Michiel Sens
Michiel is Solution Architect at Xebia and specializes in Continuous Delivery and full lifecycle software development programs. He advocates the use of Continuous Delivery at seminars and meetups and technically focuses on implementation of automated Software Delivery pipelines. Michiel is co-author of "The Manager's Guide to Continuous Delivery", published by Xebia early 2014.
Unsere Ideen
Weitere Blogs
Contact




