Zum Hauptinhalt springen
Was sind Digitale Fabriken?
  1. Blogs/

Was sind Digitale Fabriken?

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

Ein Gespräch mit Romano Roth, DevOps Thought Leader, und Dr. Milan Milanović, Architecture Thought Leader. Quelle: https://newsletter.techworld-with-milan.com/p/what-are-digital-factories

1. Romanos Kurzbiografie
#

Ich bin Romano Roth, Chief of DevOps und Partner bei Zühlke. Meine Reise mit Zühlke begann vor 21 Jahren. Im Laufe der Jahre habe ich mich vom Software Engineer und Softwarearchitekten zum Berater entwickelt. Während dieser gesamten Reise hat mich eine Frage immer angetrieben: Wie können wir kontinuierlich Wert liefern und gleichzeitig Qualität und Automatisierung sicherstellen?

Als die DevOps-Bewegung an Fahrt gewann, war ich sofort begeistert. Heute bin ich einer der Organisatoren des monatlichen DevOps Meetup in Zürich und Präsident der DevOps Days Zürich, einer jährlichen Konferenz als Teil der globalen DevOps-Bewegung. DevOps ist nicht nur ein berufliches Interesse, sondern meine Leidenschaft. Deshalb habe ich meinen eigenen YouTube-Kanal, auf dem ich über 100 Videos zu DevOps, Architektur und Führung kuratiert habe.

2. Was bedeutet DevOps für dich?
#

DevOps ist ein Mindset, eine Kultur und eine Reihe technischer Praktiken. Es sorgt für Kommunikation, Integration, Automatisierung und enge Zusammenarbeit zwischen allen Personen, die nötig sind, um ein Produkt zu planen, zu entwickeln, zu testen, bereitzustellen, auszuliefern und zu warten.

Kurz gesagt: Menschen, Prozesse und Technologie zusammenbringen, um kontinuierlich Wert zu liefern!

3. Was sind die größten Herausforderungen bei DevOps?
#

Es gibt mehrere Herausforderungen:

Kultureller Widerstand: Eine der größten Herausforderungen ist der Wandel der Organisationskultur. DevOps erfordert den Übergang von traditionellen Silorollen zu einem kollaborativen Ansatz mit geteilter Verantwortung. Dies kann auf Widerstand von Teams stoßen, die an die Arbeit in Siloorganisationen gewöhnt sind.

Kognitive Belastung: Es gibt zahlreiche technische Praktiken und Tools für die verschiedenen Phasen des DevOps-Lebenszyklus, von der Ideenfindung über Continuous Integration und Continuous Deployment bis hin zu Release on Demand. All diese technischen Praktiken und Tools zu integrieren und zu pflegen, um großartige Produkte zu entwickeln, kann herausfordernd sein.

DevOps skalieren: Was für ein kleines Team oder ein einzelnes Projekt funktioniert, funktioniert möglicherweise nicht für eine gesamte Organisation. DevOps-Praktiken zu skalieren und dabei Geschwindigkeit und Zuverlässigkeit beizubehalten, ist eine erhebliche Herausforderung.

4. Ist Continuous Deployment ein wesentlicher Teil des DevOps-Prozesses?
#

Continuous Deployment ist ein bedeutender Aspekt von DevOps, aber ob es «wesentlich» ist, hängt von den Zielen und der Reife der Organisation ab. In der DevOps-Philosophie liegt der Schwerpunkt auf der Automatisierung und Rationalisierung des Softwarelieferprozesses. Continuous Deployment unterstützt dies, indem jede Änderung, die die Pipeline durchläuft, automatisch in die Produktion überführt wird.

Einige Organisationen entscheiden sich jedoch für Continuous Delivery, bei dem Änderungen automatisch für ein Release in der Staging-Umgebung vorbereitet werden, aber eine manuelle Freigabe für das Deployment erfordern. Die Wahl hängt oft von den geschäftlichen Anforderungen, der Risikobereitschaft und der Kritikalität der Anwendung ab. Im Wesentlichen gilt: Obwohl Continuous Deployment die Ideale von DevOps verkörpert, ist es nicht für alle Organisationen zwingend, diese DevOps-Praxis einzuführen.

5. Wie können wir DevOps skalieren?
#

Die Skalierung von DevOps, insbesondere in größeren Organisationen, erfordert einen strategischen Ansatz, der über Tools und Technologien hinausgeht. Hier sind einige Überlegungen zur effektiven Skalierung von DevOps:

  • Kulturelle Transformation: Eine kollaborative Umgebung fördern, die das Lernen aus Fehlern wertschätzt.
  • Standardisierung: Einheitliche Tools und Prozesse über Teams hinweg einführen, um Konsistenz zu gewährleisten.
  • Automatisierung: Abläufe rationalisieren durch Automatisierung von Aufgaben, von der Ideenfindung über Continuous Integration und Continuous Deployment bis hin zu Release on Demand.
  • Modulare Architektur: Architekturstile wie Microservices nutzen, um Abhängigkeiten zu reduzieren.
  • Metriken: Kennzahlen verwenden, um die Leistung zu messen, Engpässe zu identifizieren und kontinuierliche Verbesserung voranzutreiben.
  • Kontinuierliche Weiterbildung: In die fortlaufende Kompetenzentwicklung investieren, damit Teammitglieder die nötigen Fähigkeiten für die Arbeit in einer DevOps-Umgebung haben.
  • Feedback-Schleifen: Effiziente Kanäle für Feedback einrichten, um Probleme schnell zu identifizieren und zu beheben.
  • Dezentrale Entscheidungsfindung: Teams befähigen, Entscheidungen lokal zu treffen, um den Bedarf an Top-down-Genehmigungen zu reduzieren und den Entwicklungsprozess zu beschleunigen.
  • Pilotprogramme: DevOps-Praktiken in spezifischen Pilotprojekten testen und verfeinern.
  • Kollaborationsplattformen: Tools nutzen, die die Teamkommunikation verbessern, wie GitLab, GitHub und Azure DevOps.
  • Regelmäßige Reviews: DevOps-Praktiken kontinuierlich bewerten und anpassen, wenn die Organisation wächst und sich verändert.

6. Ist Platform Engineering dasselbe wie DevOps?
#

Platform Engineering und DevOps sind nicht dasselbe, aber sie sind eng verwandt und überschneiden sich in vielen Organisationen.

DevOps ist ein Mindset, eine Kultur und eine Reihe technischer Praktiken. Es sorgt für Kommunikation, Integration, Automatisierung und enge Zusammenarbeit zwischen allen Personen, die nötig sind, um ein Produkt zu planen, zu entwickeln, zu testen, bereitzustellen, auszuliefern und zu warten und kontinuierlich Wert an den Kunden zu liefern.

Platform Engineering ist das Entwerfen und Bauen von Toolchains und Workflows, die Self-Service-Fähigkeiten für Produktteams ermöglichen, die kontinuierlich Wert an den Kunden liefern.

Platform Engineering nutzt DevOps-Praktiken, was es Produktteams ermöglicht, DevOps zu betreiben.

7. Was ist eine Digitale Fabrik?
#

Durch meine Arbeit an verschiedenen Projekten in unterschiedlichen Branchen und bei verschiedenen Kunden habe ich beobachtet, dass viele Unternehmen gemeinsame Herausforderungen und Ziele haben. Ich denke, sie alle wollen großartige Produkte bauen, eine schnellere Markteinführung erreichen und effizienter sein. Und was sie aufbauen wollen, ist eine Digitale Fabrik.

An der Spitze eines Unternehmens stehen der Verwaltungsrat und die Geschäftsleitung. Sie prägen die Vision, Mission und Strategie des Unternehmens. Alle großen Ideen werden in einem Portfolio Kanban priorisiert. Der Verwaltungsrat priorisiert diese Ideen und gibt dem Produktmanagement die wichtigsten und vielversprechendsten Ideen. Zum Beispiel: Der Bau von Drohnen, die schwere Lasten tragen können, erhöht den Marktanteil. Das Produktmanagement nimmt diese Idee und definiert, welche Features für eine solche Drohne benötigt werden. Eine solche Drohne benötigt beispielsweise modifizierte Software, größere Batterien und bessere Motoren. Diese Features werden an die Teams weitergegeben. Die bestehenden Teams beginnen an diesen Features zu arbeiten. Für den neuen Motor muss ein neues Team aufgebaut werden. Dafür stellt das Platform Engineering Team eine standardisierte Continuous-Delivery-Umgebung bereit, damit dieses Team sofort loslegen kann. Alle Teile werden zusammengefügt, und die Drohnen können nun kontinuierlich an die Kunden ausgeliefert werden.

Die Teams überwachen die Drohnen ständig. Telemetrie- und Geschäftsdaten werden gesammelt, wie zum Beispiel wie viele Drohnen verkauft wurden und wie hoch die Kundenzufriedenheit ist. Diese Kennzahlen fließen zurück auf die Portfolio-Ebene, wo diese Informationen die zukünftigen Entscheidungen des Verwaltungsrats beeinflussen.

Damit konzentriert sich das Unternehmen effizient auf die wichtigsten und strategischsten Aufgaben und kann sich schnell an neue Marktbedürfnisse anpassen.

8. Wie können wir eine Digitale Fabrik implementieren?
#

Um eine Digitale Fabrik aufzubauen, braucht man einen ganzheitlichen Ansatz.

Architektur: Architekturen entwerfen, die zur Technologiestrategie passen und Anpassungsfähigkeit, Skalierbarkeit und Flexibilität gewährleisten.

DevOps: Platform Engineering nutzen, um Toolchains und Workflows zu entwerfen und aufzubauen, die Self-Service-Fähigkeiten für Produktteams ermöglichen, damit diese Qualität liefern und DevOps betreiben können.

Daten: Datenpipelines optimieren für zeitnahe, handlungsorientierte Erkenntnisse. Data Science einsetzen, um Wert zu generieren und die Entscheidungsfindung zu unterstützen.

Kundenerlebnis: Nutzerfeedback ins Zentrum der Produktentwicklung stellen. Ein nahtloses End-to-End-Erlebnis anstreben.

Agile Programmlieferung: Eine Multi-Team-Organisation einführen, um Workflows und Leistung zu optimieren. Kontinuierliche Entdeckung, verbunden mit transparentem Reporting, treibt das Wachstum voran.

Produktmanagement für maximalen Wert: Die Strategie mit der Umsetzung verbinden. Produktinitiativen an den Unternehmenszielen ausrichten. Management-Praktiken kontinuierlich verfeinern und Feedback für die Priorisierung nutzen.

9. Was ist mit den Menschen? Welche Herausforderungen gibt es bei der Arbeit mit Kunden und Entwicklern?
#

Im digitalen Zeitalter stehen Unternehmen vor vielen Herausforderungen, insbesondere diejenigen, die noch nach traditionellen Wasserfall-Softwarelieferprozessen arbeiten. Hier sind meiner Meinung nach die wichtigsten:

Kulturelle Hürden: Eine zentrale Herausforderung liegt in der Transformation der Organisationskultur. DevOps erfordert den Übergang von Silorollen zu einem einheitlichen, kollaborativen Modell mit geteilter Verantwortung. Ein solcher Wandel kann auf Widerstand von Teams stoßen, die an Siloorganisationen gewöhnt sind.

Kognitive Belastung der Teams: Die Flut neuer Informationen, Wissen, Prozesse und Tools kann Teams überfordern, ihre mentale Kapazität strapazieren und die Produktivität beeinträchtigen. Die Steuerung dieser kognitiven Belastung ist entscheidend, damit Teams sich effektiv anpassen und optimale Leistung aufrechterhalten können.

Vertrauen und psychologische Sicherheit: Vertrauen innerhalb von Teams aufzubauen, insbesondere zum und vom Management, ist entscheidend für offene Kommunikation und Lernen. Ohne das werden Organisationen sich nicht verändern und wachsen.

Wenn Sie mehr über Digitale Fabriken erfahren möchten, schauen Sie sich Romanos Präsentation von der Conf42 Platform Engineering 2023 an:

Bonus: DevOps Roadmap 2023
#

Schauen Sie sich die DevOps 2023 Roadmap an, die Milan und ich erstellt haben.

Die vollständige Roadmap mit Lernressourcen finden Sie im Repository.