Zum Hauptinhalt springen
Platform Plane: Hochwertige Software in kürzester Zeit
  1. Blogs/

Platform Plane: Hochwertige Software in kürzester Zeit

Autor
Romano Roth
Ich bin überzeugt: Der nächste Wettbewerbsvorteil ist nicht AI selbst, sondern die Organisation drumherum. Als Chief AI Officer bei Zühlke arbeite ich mit C-Level-Führungskräften daran, Unternehmen zu bauen, die wahrnehmen, entscheiden und sich kontinuierlich anpassen. Seit über 20 Jahren mache ich diese Überzeugung zur Praxis.
Frag die KI über diesen Artikel

Dieser Vortrag ist eine Aufzeichnung meines Vortrags vom FI-Forum in Frankfurt am Main im November 2023. Das Thema: die Platform Plane und wie man hochwertige Software innerhalb kürzester Zeit entwickeln kann. Platform Engineering ist das Fundament der digitalen Fabrik und befähigt Teams, DevOps wirklich zu leben.

Die Herausforderungen im Finanzsektor
#

In meiner täglichen Arbeit arbeite ich mit Kunden in verschiedenen Industrien zusammen und führe DevOps-Transformationen durch. Besonders im Finanzsektor sehe ich immer wieder dieselben Top-5-Herausforderungen: die Legacy-Applikationslandschaft und -Prozesse, Budget Constraints (mehr liefern mit weniger Geld), Talent Management (wie bekommt man die topqualifizierten Mitarbeiter), Kultur und Change Management, sowie das Alignment zwischen IT und Business-Zielen.

Was ich bei solchen Firmen normalerweise sehe, ist ein gebrochener Wertstrom. Das Business hat grossartige Pläne und schreibt sie in Jira-Tickets und Word-Dokumente. Diese werden über die Wall of Confusion zum Entwicklungsteam geworfen, dann zum Testing, dann zum Betrieb, und am Ende kommt beim Kunden etwas an, das gar nicht dem entspricht, was bestellt wurde. Der Wertstrom ist unterbrochen durch Silo-Organisationen mit unterschiedlichen Zielen.

DevOps als Antwort
#

DevOps ist ein Mindset, eine Kultur und ein Set von technischen Praktiken, das uns erlaubt, uns entlang des Wertstroms zu organisieren und kontinuierlich Wert zu liefern. Dabei geht es nicht nur um Development und Operations. Der Begriff DevOps ist eigentlich irreführend. Ob DevSecOps, BizDevOps oder sonst eine Variante: es geht darum, alle Menschen, Prozesse und Technologien zusammenzubringen, um kontinuierlich Wert zu liefern.

Was wollen Unternehmen mit DevOps erreichen? Mehr Wert fürs Geld, schnelleren Time-to-Market, höhere Qualität, bessere Kundenzufriedenheit und topqualifizierte Mitarbeiter. Die Forschung bestätigt das: Der State of DevOps Report zeigt, dass Unternehmen mit DevOps bis zu 973-mal häufiger in die Produktion deployen. Die Zahlen sind beeindruckend.

Das Problem der Skalierung
#

Wenn man DevOps macht, kommt der Schlachtruf “You build it, you run it, you own it.” Das klingt einfach, aber die Realität ist komplex. Man braucht Infrastruktur (Cloud oder On-Prem), Runtime, eine CI/CD-Pipeline, Monitoring, Security-Tools, Collaboration-Tools, und man muss die Kosten im Griff haben. All diese Tools müssen gewartet, integriert, aktualisiert und der Zugang gesichert werden. Und ganz oben wollte man ja eigentlich die Applikation entwickeln, die Geschäftswert liefert.

In grossen Unternehmen hat man häufig mehrere solcher Stacks, die parallel aufgebaut werden. Das Rad wird neu erfunden, Inkonsistenzen und Redundanzen entstehen, und die Entwickler haben Probleme, diesen Stack aufrechtzuerhalten. Die Komplexität ist schlichtweg zu gross. Der Cognitive Load auf die Teams ist zu hoch, und sie können sich nicht mehr auf das Liefern von Software konzentrieren.

Die digitale Fabrik
#

Um diese Herausforderung zu lösen, brauchen wir eine klare Struktur. Stellen wir uns eine Firma vor, die Drohnen herstellt (oder in Ihrem Fall: Software). Auf dem Portfolio-Level hat die Geschäftsleitung eine Vision und zieht die vielversprechendsten Ideen heraus. Auf dem Produkt-Level nehmen Produktmanager diese Ideen und extrahieren Features. Auf dem Team-Level arbeiten die Product Owner und Teams an User Stories und nutzen ihre CI/CD-Pipeline.

Hier kommt der Platform-Level ins Spiel: Ein Platform-Team stellt die CI/CD-Pipelines und Tools zur Verfügung, damit die Produkt-Teams nicht das Rad neu erfinden müssen. Sie können direkt auf einer standardisierten Plattform aufbauen und produktiv arbeiten.

Das Ganze wird zur digitalen Fabrik. Man sieht hier die drei Wege von DevOps: schnell Wert liefern zum Kunden, Feedback sammeln (Telemetriedaten zurück zu den Entwicklern) und kontinuierlich lernen (Kundenzufriedenheit und Marktdaten zurück zur Geschäftsleitung). Oben haben wir das Lean Portfolio Management, das Strategie mit Ausführung verbindet. Unten haben wir das Platform-Team als Fundament.

Platform Engineering im Detail
#

Das Platform-Team erstellt ein internes Produkt: die Plattform. Diese Plattform beinhaltet alles, was die Produkt-Teams brauchen: Umgebungen, CI/CD-Pipelines, Zugriffsrechte, Security, Monitoring und mehr. Die Plattform wird als Self-Service zur Verfügung gestellt.

Wichtig: Die Plattform stellt Fähigkeiten bereit, die von den Produkt-Teams genutzt werden. Wenn es zum Beispiel um Monitoring geht, stellt das Platform-Team die Monitoring-Lösung bereit. Aber die Produkt-Teams monitoren ihre eigenen Lösungen. Das Platform-Team übernimmt das nicht für sie.

Die Produkt-Teams generieren Wert für den Kunden. Das Platform-Team generiert Wert für die Teams. Platform Engineering enabled DevOps in den Produkt-Teams.

Die Zühlke Platform Plane
#

Gartner, BCG und McKinsey sagen klar: Platform Engineering ist absolut essenziell für die Zukunft. Bis 2027 werden 75% der Organisationen eine solche Plattform gebaut haben.

Bei Zühlke haben wir zusammen mit LGT, einer Privatbank aus Liechtenstein, die Platform Plane gebaut. Sie umfasst:

  • Application Runtime: Kubernetes as a Service mit grossartiger Developer Experience über ein Portal und Application Tunnels
  • DevSecOps: Automatisches License Scanning, Secret Detection und SAST
  • Zugriffsmanagement: Morgens onboarden, abends offboarden, alle Rechte auf Repositories und Tools werden sofort entzogen
  • Security: Policy Enforcement und Netzwerkzonen
  • Observability: FinOps und der OpenTelemetry Stack
  • GitOps: Für kontinuierliche Wertlieferung

Die Architektur folgt einem klaren Prinzip: Oben arbeiten die Menschen mit den Tools (wir abstrahieren keine Tools weg). Daneben gibt es die Plattform als Self-Service-Portal und CLI. Unten integrieren wir die verschiedenen Tools über Adaptoren, nicht direkt miteinander, sodass kein “Big Ball of Mud” entsteht. Tools können einfach ersetzt oder neue integriert werden.

Was die Platform Plane bietet
#

Das Self-Service-Portal ermöglicht es, Partner zu onboarden, Spaces (Projekte/Produkte) zu erstellen und Rechte zu vergeben. Man hat den gesamten Cluster aufgelistet, kann sich per CLI direkt verbinden und im Cluster arbeiten. Es gibt einen standardisierten Katalog von Softwarekomponenten, die mit automatischem Namensschema, verwalteten Passwörtern und automatischer Integration ins Monitoring-System erstellt werden.

Build-in Security ist direkt eingebaut: Repositories, Container und Images werden vollautomatisch gescannt. Die Integration in die CI/CD-Landschaft ist tief, mit automatischen Pipelines. Der OpenTelemetry Stack mit Logs, Metriken und Dashboards ist direkt implementiert. Jede hinzugefügte Applikation bekommt automatisch Dashboards und wird automatisch integriert.

Die Platform Plane steht in der Open Platform Plane Association jedem zur Verfügung, der Mitglied dieser Association wird.

Kernaussagen
#

  • Platform Engineering bildet das Fundament der digitalen Fabrik. Es enabled die Teams, DevOps zu leben und kontinuierlich Wert zu liefern.
  • Der Cognitive Load muss reduziert werden. Produkt-Teams sollten sich auf die Wertschöpfung konzentrieren können, nicht auf die Wartung von Infrastruktur und Tools.
  • Self-Service ist entscheidend. Die Plattform muss als Produkt mit Self-Service-Portal und CLI bereitgestellt werden, nicht als Ticket-basierter Service.
  • Tools nicht abstrahieren, sondern integrieren. Die Entwickler arbeiten weiterhin mit den Tools, aber die Plattform stellt sie standardisiert und integriert bereit.
  • Produkt-Teams generieren Wert für Kunden, Platform-Teams generieren Wert für die Teams. Diese klare Aufgabenteilung ist der Schlüssel zur Skalierung.
  • Wir befinden uns im Zeitalter der Industrialisierung der Softwareentwicklung. Platform Engineering ist der Schlüssel dazu.