Über unsMediaKontaktImpressum
Dierk Söllner 03. Juli 2018

Von den DASA DevOps-Prinzipien zu Ausbildungsinhalten

Das DASA-Kompetenzframework identifiziert 8 Wissensbereiche sowie 4 Kompetenz- und Verhaltensbereiche, die in DevOps und somit modernen IT-Organisationen relevant sind. Dieses Kompetenzframework baut auf den sechs DASA DevOps-Prinzipien auf, die in den letzten Beiträgen dieser Artikelserie erläutert wurden. Jeder Experte in einem DevOps-Team benötigt alle 12 Kompetenzen in unterschiedlichem Umfang. Das gesamte Ausbildungsschema der DevOps Agile Skills Association (DASA) überführt die einzelnen Bereiche des Kompetenzframeworks in detaillierte Schulungsinhalte (s. Abb. 1).

Die Schulung DASA DevOps Fundamentals legt für alle 12 Wissens- und Kompetenzbereiche eine einheitliche Basis. In diesem abschließenden Beitrag werden daher die 12 Bereiche ausführlich dargestellt und erläutert sowie ein Bezug zu den Schulungsinhalten in der Basisschulung geschaffen.

DASA DevOps-Kompetenzframework im Überblick

Das DASA DevOps-Kompetenzframework sieht in den einzelnen Bereichen verschiedene Stufen vor. Das Ziel der Eingangsschulung DevOps Fundamentals ist es, alle Teilnehmer auf den gleichen Wissensstand (Stufe 2) zu heben. Die Bereiche reichen von Soft Skills wie Mut und Leadership über eher technische Aspekte wie Infrastruktur-Engineering und Continuous Delivery zu eher klassischen Themen wie Business-Analyse und Testspezifikation.

DASA DevOps-Kompetenzframework: Die 4 Kompetenz- und Verhaltensbereiche

Kompetenz- und Verhaltensbereich Mut (Courage)

Mut beschreibt im Zusammenhang von DevOps einerseits die Fähigkeit, im beruflichen Umfeld zu agieren, Dinge auszuprobieren und einfach voranzugehen sowie andererseits die Risiken zu kennen, sie in die Betrachtung einzubeziehen und zu minimieren. Innovative Unternehmen und Mitarbeiter sind auf dem Gebiet schon aktiv und haben ihre Erfahrungen gesammelt bzw. sammeln sie noch. Für die "early adaptors" ist das jedoch an vielen Stellen noch unerforschtes Gebiet, so dass es mutige Mitarbeiter und Führungskräfte braucht, den Schritt in Richtung DevOps und damit einer radikalen Veränderung zu gehen. Konkret zeigt sich der Mut darin, die innere Überzeugung aktiv und überzeugend nach außen zu vertreten ("Evangelisten"). Es gilt, zu den vielen Themen im Rahmen von DevOps offene Diskussionen zu führen, den Mut zur Veränderung in das Unternehmen und die Köpfe der IT-Professionals zu bringen, proaktiv Inhalte von DevOps aufzunehmen, u. a. durch eine moderne Experimentierkultur, sowie viel Gruppen- und Individualreflexion und Coaching.

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Bedeutung von DevOps für die IT-Professionals und die Organisation und
  • Kern der DevOps-Kultur und deren wichtige Elemente.

Kompetenz- und Verhaltensbereich Team-Bildung (Team Building)

Die Teamentwicklung (Team-Bildung) ist ein kritischer Erfolgsfaktor für den Erfolg von DevOps. In den Teams arbeiten die Experten mit den unterschiedlichen Hintergründen, Zielsetzungen und Ausbildungen. Diese müssen bei der Gestaltung ihrer gemeinsamen Arbeit unterstützt werden, um eine effektive und effiziente Zusammenarbeit gestalten zu können.

In vielen deutschen IT-Organisationen arbeiten die Experten seit langer Zeit ohne eine wirkliche Notwendigkeit, Teams zu bilden und mit diesen Teams dauerhaft Erfolge zu gestalten. (Die Arbeit in Projektteams ist sicher eine Ausnahme, wobei aus Sicht von DevOps Projektteams differenziert betrachtet werden. DevOps hat das Ziel, nachhaltig wirkende Teams zu formen, die neben der Entwicklung (in Projektform) auch langfristig für Kunden und die "eigenen" Projekte zusammen arbeiten).

Experten und Spezialisten waren das Ziel und diese werden häufig ungeachtet einer "menschlichen Kompatibilität" zur Zusammenarbeit gebracht. Das Ziel bei DevOps ist der Aufbau einer hochperformanten IT-Organisation. Dazu werden Teams benötigt, die die Vielfältigkeit und Unterschiedlichkeit der beteiligten Experten zu einer gemeinsamen Art der Zusammenarbeit vereint. Konkret heißt das bspw. ein gemeinsames Ziel zu schaffen, gegenseitige Rechenschaftspflichten zu definieren und Verständnis für unterschiedliche Standpunkte zu entwickeln.

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Erforderliche Kenntnisse und Fähigkeiten für DevOps-Experten und
  • Inhalte von Scrum (insbesondere agile Werte) und Lean-Management (bspw. Gemba-Prinzipien [1]).

Kompetenz- und Verhaltensbereich DevOps-Leadership

In einer DevOps orientierten Organisation bedeutet Führung nicht die Festlegung von Regeln und detaillierten Anweisungen, sondern die Vermittlung einer Vision. Damit werden Ziele und Nutzen einer Aufgabe beschrieben. Führung zu übernehmen ist dabei nicht nur Aufgabe von Führungskräften oder des Managements sondern auch bzw. vielmehr von Mitgliedern der DevOps-Teams.

Führung mit formeller und informeller Macht muss in einem passenden Gleichgewicht erfolgen. Dabei ist zu beachten, dass die Zusammenarbeit im Team ausgeglichen ist und das Team sich weiterentwickelt. Das übergeordnete Ziel (Erfüllung der Kundenanforderungen und Unterstützung der Geschäftsprozesse) darf nicht aus den Augen verloren werden. Deshalb wird das Thema Führung mit einer weiteren Kompetenz ergänzt: Feedback. Feedback sorgt für Transparenz, Fokussierung der Teams auf hochperformantes Agieren, Stakeholder-Management und Bewusstsein des Service-Lebenszyklus.

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Ziel und Geschäftsnutzen von DevOps,
  • Inhalte und Umsetzung fachlicher Führung und
  • Wichtige Aspekte und konkrete Tipps zur Schaffung einer DevOps-Kultur.

Kompetenz- und Verhaltensbereich Continuous Improvement

Die heutige Geschäftswelt ist geprägt von kurzfristigen Veränderungszyklen. Damit wächst auch der Druck auf die IT, sich kontinuierlich anzupassen bzw. zu verbessern. Für DevOps-Mitarbeiter bedeutet dies, eine permanente Sensibilität für Verbesserungen zu entwickeln. Einerseits in der Fähigkeit, Probleme zu sehen, andererseits diese auch anzugehen und zu beseitigen. Insbesondere für den zweiten Anspruch wird spezielles Wissen zur strukturierten Problemlösung benötigt.

DevOps greift dabei auf bekannte und im Markt etablierte Methoden zurück, wie z. B. Kaizen Mindset (Root Cause Analysis), DMAIC Zyklus (Lean Six Sigma) etc [2].

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Wann und warum in der IT traditionelle Arbeitsansätze scheitern und
  • Ansätze der kontinuierlichen Verbesserung in Scrum, Lean-Management und verwandten Methoden.

DASA DevOps-Kompetenzframework: Die 8 Wissensbereiche

Wissensbereich Geschäftswertoptimierung (Business Value Optimization)

Geschäftswertoptimierung bedeutet die Verbesserung der Geschäftsprozesse durch Einsatz von IT unter Berücksichtigung betriebswirtschaftlicher Anforderungen. Für eine IT-Organisation setzt dies sehr gute Kenntnisse über das Geschäftsmodell, dessen Ziele und Kennzahlen voraus, um so innovative und preiswerte IT-Lösungen zur bestmöglichen Unterstützung anzubieten. 

Die Steuerung dieser Lösungen erfolgt über vereinbarte Abnahmekriterien, abgestimmte Business Cases, regelmäßige Feedback Loops, sowie die Anwendung von Service-Level-Management-Praktiken. 

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Aufbau eines DevOps-Teams (u. a. Unterschied zwischen Produkt-Teams und Plattform-Teams) und
  • Organisatorische Rahmenbedingungen (u. a. autonome Teams und Conways Law [3]).

Wissensbereich Business Analysis

Business Analysis bedeutet, dass das DevOps-Team ein klares Verständnis über die Geschäftsprozesse und die dazu gehörenden IT-Systeme erlangt. Nur so können Verbesserungsmaßnahmen vollständig im Hinblick auf Nutzen und Risiken bewertet werden. Das Team muss in der Lage sein, eine detaillierte Geschäftsanalyse durchzuführen, so dass die zu entwickelnde IT-Lösung hinsichtlich Funktionalität, Kosten und Vorlaufzeit optimal gestaltet werden kann. 

Dazu gehören die Bewertung von funktionalen und qualitativen Anforderungen, die Beobachtung der langfristigen Entwicklung der Geschäftsprozesse, Veränderungen am Markt, eine detaillierte Datenanalyse und die Flexibilität regelmäßige Anpassungen zu berücksichtigen. 

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Story-Mapping und
  • Wertstromanalyse (Value Stream Mapping) [4].

Wissensbereich Architektur und Design (Architecture and Design)

Architektur und Design sorgen für die Übersetzung der Anforderungen aus geschäftlicher Sicht in eine optimale technische IT-Lösung. Architektur- und Design.Kenntnisse sowie Erfahrungen sind von entscheidender Bedeutung für alle DevOps-Teams. Dabei gilt es, das IT-System ganzheitlich im Kontext mit der kompletten IT-Umgebung zu betrachten, um so den eigenen Verantwortungsbereich (Technologie-Stack) mit seinen Schnittstellen zu anderen IT-Systemen zu bestimmen und zu gestalten.

Letztlich geht es um die Sicherstellung, dass neue Entwicklungen zu den aktuellen Systemen passen und dass die Vorgaben zum Service-Design in vollen Maße Anwendung finden. 

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Auswirkung von DevOps auf die Architektur, u. a. anhand der Microservice-Architektur, und
  • Minimum Viable Product [5].

Wissensbereich Testspezifikation (Test Specification)

Bei der Testspezifikation geht es darum, sicherzustellen, dass die Anforderungen der Benutzer des IT-Service vollständig erfüllt werden. Dazu zählen die Konzeption der Testphasen und das Design der einzelnen Testfälle. 

Methoden, wie Test Driven Development (TDD), sollen dazu beitragen, vor der eigentlichen Softwareentwicklung die Test-Sequenzen und Inhalte zu definieren. Solche Methoden werden zunehmend angewendet, um sicherzustellen, dass die geforderte Funktionalität auch geliefert wird. Ein weiteres Ziel ist die Automatisierung dieser Aktivitäten, um schneller, preiswerter und wirkungsvoller testen zu können.

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Automatisierte Bereitstellung im Kontext von Testszenarien und
  • Verlagerung der Testanforderungen an die Quelle.

Wissensbereich Programming

Programmieren ist die Kernkompetenz des DevOps-Teams, unabhängig davon, ob es ein DevOps-Team ist, das eine Anwendung, eine Plattform oder ein vollständiges IT-System unterstützt. Künftig werden alle IT-Techniker lernen müssen, Software-Komponenten zu pflegen (zu erstellen und zu modifizieren). Dies bedeutet eine wesentliche Änderung für den IT-Betrieb (insbesondere den Infrastrukturbetrieb), bei dem es bisher kaum notwendig war, im Tagesgeschäft Code-Änderungen durchzuführen. Viele Unternehmen, die mit der DevOps-Transformation beginnen, kämpfen mit dem Mangel an Software-Engineering-Fähigkeiten in ihren neu gegründeten Teams. Firmen, denen es nicht gelingt, diese Fähigkeiten auch im Betrieb aufzubauen, werden in einer zunehmend digitalen Zeit kaum überleben können.

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Bedeutung und Inhalte von Cloud-Angeboten und
  • Bedeutung von "Everything as code".

Wissensbereich Continuous Delivery

Eine wichtige Aufgabe für DevOps Teams lautet Continuous Delivery. Dies beschreibt eine automatisierte Vorgehensweise zur kontinuierlichen Softwarelieferung. Dazu zählt eine gut konstruierte "Pipeline", die den Weg von der Entwicklung bis zur Produktion erleichtert, aber was vielleicht noch wichtiger ist: das konzeptuelle Verständnis des gesamten Prozesses und wie dies technisch unterstützt wird. 

Continuous Delivery erfordert eine genaue Kenntnis des Software-Lieferprozesses von der Entwicklung bis zur Produktion. Wichtige Teil-Aufgaben in diesem Zusammenhang sind z. B. automatisiertes Testen, Release- und Deployment-Management, Konfigurationsmanagement, Versionskontrolle, Cloud-Dienste, Container-Lösungen, Feature-Driven Delivery, etc

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Konzepte, Prinzipien und Nutzen der Continuous Delivery und
  • Auswirkungen der Automatisierung auf die Prozesse der Software-Lieferung.

Wissensbereich Infrastructure Engineering

Infrastructure Engineering ist eine weitere Disziplin, die DevOps-Teams übernehmen müssen. Dies umfasst standardisierte IT-Umgebungen, so dass diese automatisiert, konsistent und schnell gepflegt werden können. 

Besonders die DevOps-Teams, die Infrastrukturdienste bereitstellen, müssen diese Fähigkeiten haben und anwenden. Für anwendungsorientierte DevOps-Teams ist es wichtig, die zugrundeliegende Infrastrukturtechnologie gut zu verstehen, um sicherzustellen, dass ihre Anwendungen durch die Standard-Infrastrukturmodelle optimal unterstützt werden. 

Infrastructure Engineering wir durch eine Vielzahl von technischen Aufgaben ermöglicht, wie z. B. technische Überwachung, Performance-Management (z. B. Load Balancing etc.), das Management von Kapazitäten, Verfügbarkeit, Zuverlässigkeit, die Nutzung von Cloud- und Container-Services.

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Anwendungen und Plattform-Services und
  • Cloud-Prinzipien.

Wissensbereich Security, Risk & Compliance

Die Themen Sicherheit, Risiken und Compliance treiben IT-Vorhaben von Beginn an. Besondere Aufmerksamkeit gilt der Verwaltung sicheren Software-Codes, dem Verständnis der Risiken bei der Infrastruktur und der Entwicklung neuer oder geänderter Funktionen unter Berücksichtigung regulativer und gesetzeskonformer Anforderungen zur bestmöglichen Unterstützung der Geschäftsprozesse. Sicherheits- und Risiko-Management sind auch bei der Planung der Servicekontinuität ausreichend zu untersuchen. 

In der Schulung DevOps Fundamentals werden dazu u. a. folgende Inhalte erläutert:

  • Integration von Sicherheitsanforderungen und 
  • Governance und Compliance.

Zusammenfassung

In diesem Beitrag wurde der Bogen von den sechs DASA DevOps-Prinzipien zum DASA Kompetenzframework gespannt. Die 12 Bereiche des Frameworks wurden einzeln erläutert und die Umsetzung in der Basisschulung DevOps Fundamentals erläutert.

Nach der Schulung DevOps Fundamentals können die Teilnehmer u. a. die wesentlichen Konzepte und Prinzipien von DevOps beschreiben, die betriebswirtschaftlichen Vorteile von DevOps und Continuous Delivery erklären und haben die Konzepte der Test-, Infrastruktur-, Build- sowie Deployment-Automatisierung verstanden. Sie können die Beziehung von DevOps zum Lean-Management und agilen Methoden beschreiben sowie die kritischen Erfolgsfaktoren in Bezug auf die Einführung von DevOps bewerten.

Interessant und wegweisend ist dabei im Rahmen der Ausbildung die Ausrichtung der Inhalte an den DASA DevOps-Prinzipien und dem Kompetenzframework. Mit dem breit angelegten Spektrum erhalten die Teilnehmer einen umfassenden Überblick, der sie befähigt, die Herausforderungen der IT besser zu bewältigen.

Die DASA hat einen kostenlosen Online-Test entwickelt, der die Inhalte des Kompetenzmodells anschaulich aufbereitet und jedem IT-Professional die Möglichkeit gibt, sein persönliches "DevOps-Mindset" zu überprüfen und Entwicklungspotentiale herauszufinden.

Haben Sie die Einführung in das DASA DevOps-Kompetenzmodell gelesen?

Das DASA DevOps-Kompetenzmodell und die 6 DevOps-Prinzipien

Die DASA DevOps-Prinzipien beschreiben, wie eine IT-Organisation sich und seine Mitarbeiter in Richtung DevOps entwickeln sollte. Wir stellen die sechs Prinzipien vor.
>> Weiterlesen
Quellen
  1. Wikipedia: Gemba
  2. Wikipedia: Fehler-Ursachen-Analyse
    Wikipedia: DMAIC
  3. Wikipedia: Gesetz von Conway
  4. Wikipedia: Wertstromanalyse
  5. Wikipedia: Minimum Viable Product

Autor

Dierk Söllner

Dierk Söllner ist seit 1992 als Berater, Trainer und Coach in verschiedenen Positionen bei IT-Dienstleistern und IT-Beratungsunternehmen aktiv.
>> Weiterlesen
Bücher des Autors:

Das könnte Sie auch interessieren
botMessage_toctoc_comments_9210