Physische Produkte agil entwickeln?

In meinem letzten Blog-Beitrag ging es um Teams, die erst durch Erfahrung wirklich agil werden. Heute stehen die Herausforderungen im Mittelpunkt, die die Agilität gerade im Engineering mit sich bringt.

Agile Softwareentwicklung hat sich fast 20 Jahre nach dem Agilen Manifest weitgehend durchgesetzt. Es geht nicht mehr um das Ob, sondern nur noch um die Best Practices im Detail sowie agile Skalierbarkeit. Der Erfolg und die einfache Anwendbarkeit etwa von Task Boards haben dazu geführt, dass agiles Vorgehen auch außerhalb der Software-Entwicklung begeisterte Nutzer findet, wo Aufgaben im Team bearbeitet werden.

Dies mündete schließlich in die zunehmend intensiv diskutierte Frage, ob auch physische Produkte effizienter mit agilem Vorgehen entwickelt werden könnten.

Warum eigentlich?

Es gibt seit vielen Jahren etablierte Produktentstehungsprozesse, die eine große Reife erlangt haben und eine erfolgreiche Entwicklung unterstützen. Warum davon abgehen und die Risiken eines komplett neuen Ansatzes auf sich nehmen?

Je unklarer die Anforderungen an das Produkt sind und je unbekannter die zu verwendende Technologie ist, desto weniger sind klassische Projektmanagement-Methoden geeignet, weil sie sehr stark vorausplanend sind. Genau diese Tendenz, Projekte trotz zunächst unvollständiger Anforderungen zu starten, beobachten wir aber zunehmend. Digitalisierung und neue Technologien erfordern neue Geschäftsmodelle oder neue technologische Fähigkeiten. Dies spricht für ein agiles Vorgehen, da es für den Umgang mit Unklarheit und Noch-Nicht-Wissen erfunden wurde.

Geht das überhaupt?

Die entscheidende Frage lautet dabei: Sind agile Methoden aus der Softwareentwicklung überhaupt geeignet, die Herausforderungen in der „klassischen“ Produktentwicklung zu bewältigen? Physische Produkte werden im Unterschied zu Software deutlich arbeitsteiliger entwickelt. Die Produktion von fehlerhaften Komponenten verursacht hohe Folgekosten und die Absicherung ist auf physische Prototypen angewiesen. Es ist nicht möglich, alle zwei Wochen einen neuen, funktionierenden und potenziell auslieferbaren Stand zu präsentieren. Lösungen für solche Probleme erfordern eine kreative Weiterentwicklung der bekannten agilen Vorgehensmodelle. Ein sehr einfaches Beispiel dafür: Die Teams verschiedener Domänen benutzen unterschiedliche Sprintdauern. Während das Software-Team alle 2 Wochen liefert, gilt für das Mechanik-Team ein 6-Wochen-Rhythmus. Wichtig ist, die Sprints so zu synchronisieren, dass alle 6 Wochen ein gemeinsames Inkrement erreicht wird.

Die Herausforderung

Die Herausforderung bei der Einführung agiler Methoden ist damit eine doppelte: Einerseits ist es erforderlich, die agilen Methoden aus der Software-Entwicklung an die Bedingungen in der Produktentwicklung anzupassen. Andererseits benötigt man – damit komme ich wieder zu meinem vorigen Beitrag zurück – viel agiles Erfahrungswissen, um solche Anpassungen erfolgreich hinzubekommen. Um diesen Widerspruch aufzulösen, sollte man die Pioniere, die sich auf das neue Terrain wagen, zusammenbringen mit erfahrenen „Agilikern“, die ihr Handwerk aus der Software-Entwicklung beherrschen. Das wechselseitige voneinander Lernen und Teilen von Wissen führt zu einer besseren Beherrschung der Produktentwicklung unter den sich rasant ändernden Randbedingungen.

Black Box IoT?

Wer kauft schon gerne die Katze im Sack? Zumal wenn damit komplettes Neuland betreten wird… Der erste Kinderwagen zum Beispiel: Man ist sich zwar schon darüber im Klaren, dass man ihn braucht, aber die Entscheidung, ob es ein kleines Packformat oder doch lieber die Fahrradanhänger-Kombi sein soll, ist da schon schwieriger.

Der letzte Kinderwagenkauf ist jetzt schon einige Zeit her (mittlerweile bin ich Experte im Kauf von Skateboards). Falls Sie aber gerade vor der Wahl stehen, empfehle ich Ihnen ein dunkles Modell, da sieht man den Dreck nicht so deutlich.

Ein IoT-System ist zwar in der Regel nicht so dreckempfindlich, seine Auswahl ist dafür aber umso komplexer. Zumal viele Unternehmen damit Neuland betreten und schon an der Auswahl der richtigen Kriterien schier verzweifeln können. 

Hier habe ich zwei gute Nachrichten. Erstens: Welche IoT-Lösung passt, lässt sich einfach ausprobieren. Ein Proof of Concept ist eine sehr gute Möglichkeit, eine Lösung ohne große Risiken zu testen, bevor Sie sich für ein System entscheiden. Und zweitens: So sehr IoT auch neue Chancen bietet – so sehr basieren smarte Geschäftsprozesse auf guten alten Tugenden:

  1. Sind Sie sich sicher, wie Ihr IoT-Geschäft aussehen wird und das es auf lange Zeit so bleibt? Wahrscheinlich nicht. IoT ist ein sehr volatiler Markt, in dem gerade eine ganze Menge passiert. Also muss Ihr IoT-System reaktionsstark sein und am besten von der Fachabteilung selbst angepasst werden können. Das Stichwort dahinter heißt “low code“, das heißt keine aufwändige Programmierung, um Ihre Prozesse abzubilden. Und wenn das nicht reicht, sollte das System so modular sein, dass man zusätzliche Komponenten einfach “nachladen” kann.

  2. Entsteht Ihr IoT-Geschäft auf der grünen Wiese oder erweitert es Ihr bestehendes Business? Wenn Letzteres der Fall ist, dann sollte Ihr IoT-System mit der übrigen IT-Welt in Ihrem Unternehmen sprechen können: Ersatzteilbestellungen zum Beispiel sollten ja in aller Regel einmal bei der Finanzbuchhaltung vorbeigekommen sein. Offene oder sogar zertifizierte Schnittstellen sind auch hier das A und O.

  3. Stellen Sie Industriegüter her? Haben Sie auch mal mit Ersatzteilen und Wartung zu tun? Dann wird Ihr neuer bester Freund im IoT-Neuland der “Digitale Zwilling“. Aber nur, wenn er auch industrietauglich ist: Er muss die Komponenten Ihrer Anlage detailliert abbilden können (am besten mit zugehörigem 3D-Modell), die aktuellen Parameter wie Software-Stände kennen und insbesondere Veränderungen nach Wartung oder Umbau dokumentieren können.

Die Anbindung von Geräten ist ehrlich gesagt meist nur eine Frage von Fummelarbeit, in aller Regel aber kein grundsätzliches Problem. Schritt für Schritt setzen sich hier Standardprotokolle für die Machine-to-Machine (M2M)-Kommunikation wie MQTT (Message Queuing Telemetry Transport) oder OPC/UA (Unified Architecture) durch und machen allen Beteiligten das Leben leichter.

Also: Probieren Sie es mit einem Proof of Concept einfach aus! Wenn Sie dabei auch noch auf die drei Prüfsteine achten, sind Sie gut im Rennen. Dann stehen Ihnen die Möglichkeiten von “Analytics”, “Big Data”, “Data Driven Processes” oder “Predictive Maintenance” offen.

Agil scheinen oder agil sein?

Als ich vor Jahren das erste Mal von Agilität hörte, hatte ich zunächst den Eindruck, Prozesse und Regeln sollten über Bord geworfen werden, um volatile Anforderungen auf wundersame Weise im Handumdrehen realisieren zu können. Ich konnte mir nicht vorstellen, wie das funktionieren soll: Agilität klang für mich nach unerfüllbarem Wunschkonzert.

Erst als unser damaliges Software-Entwicklungsteam anfing nach Scrum zu arbeiten – mit mir als Product Owner und begleitet durch einen erfahrenen Scrum Master – habe ich mich mit dem Thema ernsthaft auseinandergesetzt.

Ich lernte, dass Agilität nicht Chaos bedeutet, sondern ganz im Gegenteil lautete die

1. Lektion: Disziplin

Agiles Vorgehen hat Regeln. Die lernten wir in der vorausgehenden Scrum-Schulung. Vor allem aber legte unser Scrum Master uns sehr ans Herz, die Scrum-Regeln strikt einzuhalten, statt sie so auszulegen, wie es für uns am sinnvollsten erschien. Was ich gelernt habe: Agilität ist kein Laissez-faire, sondern bedarf eines sehr disziplinierten Vorgehens, das nur funktioniert, wenn es konsequent gelebt und nicht nach Bedarf verbogen wird.

2. Lektion: Der Sinn

Feste Rollen und Rituale sind nützlich. Wir hatten sie für Scrum zwar gelernt, aber echtes Verständnis wuchs erst nach und nach über das Coaching und die Fragen des Scrum Masters. Beispielweise wenn sich im Lauf eines Sprints herauskristallisierte, dass mehrere der vereinbarten User Storys nicht erreicht werden würden. Alle Teammitglieder versuchten natürlich, ihre eigene Aufgabe bestmöglich zu erledigen. Das hätte dazu geführt, dass die einzelnen User Storys zu nur 70% fertig werden würden. Der Scrum Master stellte zur Diskussion, stattdessen ein oder zwei User Storys für den Sprint zu verwerfen und bei der Fertigstellung der anderen mitzuhelfen. Was wir gelernt haben: Ergebnisorientierung und Fokussierung auf ein gemeinsames Ziel machen das Teamwork produktiver und die Teammitglieder zufriedener.

3. Lektion: Teamgeist

Je mehr wir den Sinn der Regeln, Rollen und Rituale verinnerlichten, desto effizienter wurden die Projekte. Das Team wuchs immer stärker zusammen und es entwickelte sich nicht nur ein gemeinsamer Fokus darauf das Ziel zu erreichen, sondern echter Zusammenhalt. Wo vorher Kollegen Unverständnis über die Arbeit der jeweils anderen geäußert hatten oder sich in Schuldzuweisungen übten, wusste nun jeder im Team, was die anderen machten und warum. Man half sich gegenseitig nach Kräften und vertraute einander immer mehr. Und da nachhaltiges Lernen vor allem über positive Emotionen funktioniert, war dies der Punkt, an dem wir wirkliches Verständnis für Agilität entwickelten.

Am Ende wurde mir klar, dass Agilität erst durch das Zusammenspiel von Regeln, Menschen und Motivation entsteht. Die hinter den Regeln stehenden agilen Werte zu verstehen, ist entscheidend. Sonst besteht die Gefahr – durch das Herausgreifen oder Zurechtbiegen einzelner Regeln auf die eigenen Bedürfnisse – mit dem agilen Ansatz zu scheitern.

Was nicht heißt, dass man die agilen Frameworks nicht anpassen oder selektiv anwenden darf. Aber erst, wenn man sie verstanden hat.