DevSecOps einfach erklärt

gepostet am 9. April 2019
aktualisiert am 19. Juni 2024

Im Rahmen des Führungskreis Softwareentwicklung durfte ich Technologietage zu DevOps, später DevSecOps, organisieren. Thomas Schissler von AgileMax und Marc Müller von 4tecture sind mit uns als Experten auf den Weg gegangen. In diesem Fritz Tipp zeichne ich den Weg für dich nach.

Inhalt

Was ist DevOps?

DevOps Definition

Der Begriff DevOps wurde ursprünglich von Patrick Debois geprägt und meint die bessere Zusammenarbeit von Entwicklung und Betrieb: „When you build teams around people who can be developers, testers, and sysadmins, you build remarkable teams.“

Quelle: Patrick Debois – What Is This Devops Thing, Anyway

DevSecOps ist nach Müller eine Erweiterung von DevOps, um Sicherheits-Praktiken im DevOps-Ansatz zu integrieren. In diesem Zusammenhang wird auch vom shift left Ansatz gesprochen. Testing findet nicht nach der Entwicklung statt, sondern während der Entwicklung.

DevSecOps Definition. Quelle: Marc Müller.
DevSecOps Definition. Quelle: Marc Müller.

Weiterentwicklungen wie DevSecOps oder BizDevOps zeigen, dass es dabei auch um die Ausweitung agiler Prinzipien auf den Unternehmenskontext geht. Diese Erweiterung spielt sich sowohl auf der organisatorischen als auch auf der technischen Seite ab.

DevSecOps – Die organisatorische Seite

Fast jede Organisation besteht aus horizontal geschnittenen Teams, Abteilungen oder Bereichen: Entwicklung, Einkauf, Produktion, Vertrieb. Wir packen alle Fachleute mit derselben Expertise in einen Raum und lassen sie miteinander arbeiten.

Der große Nachteil daran, wir bilden Schnittstellen zwischen den Abteilungen, auf dem Weg zur Befriedigung der Kundenbedürfnisse. Kein Wunder das Konzepte wie Prozessmanagement rund um die 2000er Jahre einen großen Hype erlebt haben, um Schnittstellen sauber zu klären.

„Die Plattform von Patrick ist einmalig, da er es immer wieder schafft, uns als Teilnehmer herauszufordern und zum Nachdenken anzuregen. Die Themen und Diskussion im Führungskreis Softwareentwicklung helfen mir bei der täglichen Arbeit. Die Impulsvorträge ermöglichen mir in kürzester Zeit in ein neues Thema ausserhalb des normalen Alltags einzusteigen. “

Urs Stäheli
Director Software Engineering
L.Kellenberger & Co AG

Um diesen systembedingten Nachteil zu umgehen, werden bei Projekten vertikal geschnittene Teams eingesetzt. Alle Disziplinen, die zur Befriedigung des Kundenbedürfnisses erforderlich sind, werden in ein Team entsendet.

Bei SCRUM sind dies z.B. Entwickler, Kunde (Product Owner) und Moderator (SCRUM Master). Bei DevSecOps kommen Experten aus dem Bereich Infrastruktur und Sicherheit dazu. Ähnlich dem Grundgedanken von Obeya bei Toyota, dem War Room zur Produkt- und Prozessentwicklung.

DevSecOps Organisation. Quelle: Marc Müller.
DevSecOps Organisation. Quelle: Marc Müller.

Die Vorteile vertikal geschnittener Teams sind klar, schnelle Kommunikation, kurze Entscheidungswege und Fokus auf das Kundenbedürfnis. Die Nachteile dürfen allerdings auch nicht verschwiegen werden. Standards, und damit effiziente Prozesse, sind in vertikalen Teams schwer aufrecht zu erhalten.

Alle Organisationsformen schaffen eben ihre eigenen Silos, so Kühl. Nach Parsons erreichen Organisationen ihre Leistungsfähigkeit sogar nur dadurch, dass sie ihren Mitarbeitern verbieten, sich an den übergeordneten Zielen der Organisation zu orientieren. Mehr dazu im verlinkten Podcast und im Fritz Tipp Agile Transformation in Organisationen.

Die wichtige Frage an dieser Stelle lautet: Welche Kommunikation möchte ich stärken? Die horizontale oder die vertikale Kommunikation? Die Antwort darauf hat direkte Auswirkungen auf die technische Seite.

DevSecOps – Die technische Seite

Das Gesetz von Conway aus dem Jahre 1968 besagt, dass die Strukturen von Systemen durch die Kommunikationsstrukturen der sie umsetzenden Organisationen vorbestimmt sind. Kurzum, wir replizieren uns selbst!

Horizontale Teams werden Systeme bauen, mit Schnittstellen zwischen den Teams. Vertikale Teams werden Systeme bauen, die vermutlich schwerer zu skalieren sind. Wenn ich es nun mit DevSecOps ernst meine, stellt sich die Frage, wie kann ich vertikale Teams technisch unterstützen?

„Seit mehr als 10 Jahren liefern mir die Workshops im Führungskreis Softwareentwicklung Anregungen und Inspirationen für den berufliche Alltag als Führungskraft. Der Mix von technischen und Führungsthemen erzeugt ein abwechslungsreiches Jahresprogramm. Auch die Einblicke in andere Unternehmen sind immer wieder spannend, interessant und lehrreich. “

Harald Möller
Software Development
OMICRON electronics GmbH

An dieser Stelle möchte ich nur einige Schlagworte nennen, hier gibt es viel bessere Experten als mich. Was mir jedoch wichtig ist, alle diese Werkzeuge haben zum Ziel, die Abhängigkeiten zwischen Teams zu verringern und damit vertikale Teams zu unterstützen:

Wenn jedes interdisziplinäre Team unabhängig von anderen arbeiten könnte, wäre eine vollständige agile Transformation der Organisation keine große Hexerei. Als Extrembeispiel sei das chinesisches Unternehmen Haier genannt, welches aus 4000 Microenterprises (+200 customer-facing; +3800 service and support) besteht:

Die Hoffnung dahinter? Firmen mit hoher Marktkomplexität profitieren von kleineren, funktional integrierten, marktfähigen Einheiten mit hoher Autonomie, damit hohe Marktpassung entstehen kann, so Löffler.

DevSecOps Tools

Das eingangs erwähnte shift left Ansatz führt zu immer mehr Aufgaben beim einzelnen Software-Entwickler. Neben Entwicklung kommen Aufgaben rund um Betrieb und Sicherheit mit dazu. Die zunehmende Belastung wird in der Praxis über Automatisierung von Aufgaben durch Tools unterstützt. Müller empfiehlt gerade in Bezug auf Security folgende Tools:

Fazit

Spannend an DevSecOps ist für mich zum einen die aufgezeigte Verbindung von Organisation und Technologie. Zum anderen zeigt DevSecOps einen konkreten Weg zu einer agileren Organisation auf.

Ein Gedanken lässt mich aber nicht ganz los. Bei aller Begeisterung für agile Konzepte, sie scheinen nur eine Lösung für den Sonderfall komplexer Aufgaben (CYNEFIN Framework) zu sein.

Für komplizierte Aufgaben scheint die klassische Hierarchie als zentrales Instrument zur Koordination, die bessere Lösung zu sein. Welche Kommunikation möchtest du stärken?

Dr. Patrick Fritz

Dr. Patrick Fritz

agile devops auf dem weg zur agilen organisation beziehung zwischen agil und devops bizdevops bizdevops definition DevOps devops agile devops agilität devops ansatz devops aufgaben devops definition devops einfach erklärt devops meaning devops nachteile devops oder agile devops organisation devops product owner devops scrum devops teams devops vorteile nachteile DevSecOps devsecops definition devsecops meaning organisation devops prozessmanagement einfach erklärt scrum vs devops shift left ansatz unternehmen/s agile and/und devops was ist devops was ist devops einfach erklärt

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Auf der Suche nach frischen Ideen für Ihre Führungsarbeit? Mit unserem Newsletter bekommen Sie einen Tipp pro Monat. Wohl dosiert, verständlich und übersichtlich.