Viele Menschen denken immer noch, DevOps sei nur für Webanwendungen und Cloud-Services relevant. Die Realität zeigt jedoch klar: Unternehmen, die DevOps-Prinzipien auf Embedded-Systeme anwenden, überholen ihre Konkurrenz. In diesem Vortrag, den ich bei einem DevOps-Meetup in München gehalten habe, zeige ich, warum Embedded-Teams DevOps brauchen und wie man eine Digitale Fabrik aufbaut, die kontinuierliche Wertlieferung ermöglicht, auch für Hardware-Produkte.
Der unterbrochene Wertstrom#
In den meisten Organisationen, die ich berate, sieht das Bild gleich aus. Das Business erstellt Pläne, schreibt Jira-Tickets und wirft sie über die “Wall of Confusion” zur Entwicklung. Die Entwicklung implementiert etwas und wirft es ans Testing. Das Testing findet Abweichungen, gibt aber trotzdem grünes Licht. Der Betrieb erhält das Ergebnis und sagt: “Das wird nie in Produktion funktionieren.” Und wenn der Kunde es schliesslich sieht, sagt er: “Das ist nicht, was wir wollten.”
Die Ursache liegt in der Siloorganisation. Business, Entwicklung, Testing und Betrieb arbeiten auf unterschiedliche Ziele hin. Sie sind nicht aufeinander abgestimmt, und der Wertstrom ist durch diese Walls of Confusion komplett unterbrochen. Das Resultat: unflexible Prozesse, langsame Lieferung und frustrierte Teams.
“DevOps ist ein Mindset, eine Kultur und ein Set von technischen Praktiken, die es uns ermöglichen, uns entlang des Wertstroms zu organisieren und alle Menschen zusammenzubringen, um an einem Produkt zu arbeiten.”
Von Projekten zu Produkten#
Der Unterschied zwischen Projektdenken und Produktdenken ist fundamental für DevOps. Ein Projekt hat einen Start, ein Ende und ein fixes Set von Liefergegenständen. Es geht darum, die Anzahl der gelieferten Features zu maximieren. Viele Unternehmen behaupten, sie seien agil, arbeiten aber immer noch in diesem Projektmodus.
Produktdenken ist fundamental anders. Im Produktmodus steht der Kunde im Zentrum. Man arbeitet an dem einen Feature, das das Problem des Kunden löst, nicht an zehn Features, weil jemand sie in einen Projektplan geschrieben hat. DevOps ermöglicht diesen Wandel, weil es alle Menschen, Prozesse und Technologien zusammenbringt, um kontinuierlich Wert entlang eines einheitlichen Wertstroms zu liefern.
Tesla: DevOps in der realen Welt#
Wer denkt, DevOps sei nicht auf Hardware anwendbar, sollte sich Tesla ansehen. Im Oktober 2021 tweetete Elon Musk über das Rollout von Version 10.2 der Full Self-Driving Beta an 1'000 Besitzer mit einem perfekten Safety Score von 100/100. Was sagt uns das?
Teslas Software ist modularisiert. Sie können einzelne Module über die Luft aktualisieren. Sie machen Canary Releases an bestimmte Nutzergruppen. Sie berechnen Safety Scores durch Observability. Acht Tage später wurde Version 10.3 an eine grössere Gruppe ausgerollt. Als ein Problem auftrat, machte Tesla einen Rollback und kommunizierte, dass dies erwartet war. Weniger als 24 Stunden später deployten sie 10.3.1 als Fix-Forward.
Das sind Canary Releasing, Rollbacks, Fix-Forward und Observability, alles in einer regulierten Umgebung mit Autos auf öffentlichen Strassen. Die Unternehmen, die Lean, Agile und DevOps in Hardware übernehmen, werden bald den Markt dominieren, genau wie Netflix, Google und Facebook es vor zwanzig Jahren in der Software getan haben.
Die 24 Schlüssel-Capabilities aus Accelerate#
Das Buch “Accelerate: The Science Behind DevOps” identifizierte 24 Schlüssel-Capabilities, die leistungsstarke Organisationen auszeichnen. Diese sind in fünf Bereiche gruppiert:
Continuous Delivery: Versionskontrolle für alles (nicht nur Quellcode), automatisierte Deployments, Continuous Integration, Trunk-Based Development, Testautomatisierung, Testdatenmanagement, Shift-Left bei Security und Continuous Delivery auf Staging.
Architektur: Lose gekoppelte Architekturen und befähigte Teams, die eigene Entscheidungen treffen können.
Produkt und Prozess: Kundenfeedback-Schleifen, Wertstromorganisation, kleine Batches und Raum für Experimente.
Lean Management: Eliminierung schädlicher Change Approval Boards, Monitoring, proaktive Benachrichtigungen, WIP-Limits und Visualisierung der Arbeit.
Kultur: Generative Organisationskultur, in der das Finden von Bugs als Lernen gefeiert wird, Unterstützung für kontinuierliches Lernen, teamübergreifende Zusammenarbeit, Arbeitszufriedenheit und transformationale Führung.
Die Forschung zeigt, dass High Performer 973-mal mehr Deployments in Produktion erreichen als Low Performer. Unternehmen, die DevOps praktizieren, haben eine schnellere Time-to-Market, mehr Wert fürs Geld, höhere Qualität, höhere Kundenzufriedenheit und top-qualifizierte Mitarbeitende.
Kontinuierliches Testen und Qualität#
Joe Justice, Agile Coach und ehemaliger Tesla-Mitarbeiter, sagte, dass 50% des Geldes, das ein Musk-Unternehmen in ein neues Produkt investiert, in automatisiertes Testen fliesst. In den meisten Unternehmen, die ich sehe, geht nur ein Bruchteil ins Testen. Das beschleunigt die Entwicklung anfangs, aber irgendwann stagniert der Fortschritt, weil die Qualität abnimmt.
Der Wandel vom traditionellen V-Modell zum modernen Testen ist dramatisch. In der alten Welt konnten Monate zwischen dem Schreiben eines Features und dem Testen vergehen. Mit Behavior Driven Development (BDD) definieren wir Akzeptanzkriterien im “given, when, then”-Format und bauen Qualität von Anfang an ein. Mit Test-Driven Development (TDD) schreiben wir Tests vor dem Code. Die traditionelle Testpyramide wird umgedreht: viele Unit-Tests (schnell und günstig), einige Integrationstests und nur wenige End-to-End-Tests. Der Fokus verschiebt sich von “jeden Bug finden” zu “Bugs verhindern” durch einen risikobasierten Ansatz.
“Im traditionellen Modell liegt der Fokus darauf, jeden Bug zu finden, was es sehr langsam macht. In der agilen Testpyramide wollen wir Bugs verhindern. Es ist ein risikobasierter Ansatz.”
Platform Engineering: DevOps skalieren#
Wenn Teams DevOps praktizieren, braucht jedes einzelne Infrastruktur, CI/CD-Pipelines, Monitoring, Security-Tools und Zugangsmanagement. Bei Skalierung entstehen massive Redundanz, Inkonsistenz und kognitive Überlastung. Jedes Team erfindet das Rad neu.
Platform Engineering löst dieses Problem. Ein dediziertes Platform-Team baut und pflegt eine standardisierte Plattform mit allen Tools, die Teams brauchen: Application Runtime, Developer Experience, automatisierte DevSecOps-Pipelines, Access und Identity Management sowie Observability. Die Produktteams besitzen und betreiben weiterhin ihre Produkte nach dem Prinzip “you build it, you run it.” Das Platform-Team stellt lediglich das Fundament bereit.
Die wichtige Unterscheidung: Kunden zahlen nicht für Ihre Plattform. Sie zahlen für Ihre Produkte. Aber die Plattform generiert Wert für Ihre Teams und ermöglicht es ihnen, bessere Produkte schneller zu bauen.
Die Digitale Fabrik aufbauen#
Die Digitale Fabrik ist das ganzheitliche Framework, das alles zusammenbringt. Auf der Portfolio-Ebene richtet der Verwaltungsrat grosse Ideen an der Unternehmensvision aus. Auf der Produkt-Ebene bricht das Produktmanagement Epics in Features herunter. Auf der Team-Ebene arbeiten befähigte Teams agil an ihren Modulen, unterstützt durch eine standardisierte Plattform.
Dies erzeugt einen kontinuierlichen Kreislauf: schnelle Lieferung von Features an den Kunden, schnelles Feedback vom Kunden und kontinuierliches Lernen. Platform Engineering baut das Fundament. DevOps-Teams praktizieren darauf. Und die Digitale Fabrik orchestriert das gesamte System.
“Platform Engineering baut Ihre Plattform, die das Fundament Ihrer Digitalen Fabrik ist, und ermöglicht es Ihren Teams, DevOps zu praktizieren.”
Kernaussagen#
Produkte statt Projekte. Hören Sie auf, Features zu maximieren, und fangen Sie an, Kundenprobleme zu lösen. DevOps ermöglicht den Wandel vom Projektdenken zum Produktdenken.
Qualität ist nicht optional. Investieren Sie von Anfang an in automatisiertes Testen. Nutzen Sie BDD, TDD und eine risikobasierte Teststrategie. Die Kosten für ausgelassene Tests holen Sie immer ein.
Platform Engineering ermöglicht DevOps im grossen Massstab. Eine standardisierte Plattform eliminiert Redundanz, reduziert die kognitive Last und lässt Produktteams sich auf die Wertlieferung konzentrieren.
Bauen Sie eine Digitale Fabrik. Verbinden Sie Strategie mit Ausführung durch Lean Portfolio Management, Platform Engineering und befähigte DevOps-Teams. So industrialisieren Sie die Embedded-Softwareentwicklung.
Lernen Sie von Tesla. Selbst in regulierten, hardware-lastigen Umgebungen sind DevOps-Praktiken wie Canary Releases, Rollbacks und Observability nicht nur möglich, sie sind ein Wettbewerbsvorteil.
