DevOps Kultur: Wenn Teams die Prinzipien der agilen Softwareentwicklung ernst nehmen

kommentiert 0
gelesen 51

Wie können Entwicklung und Betrieb im Rahmen von moderner Softwareentwicklung erfolgreich miteinander verbunden werden? Das war Thema auf einer Veranstaltung des Agile Table in Kooperation mit der deutschen Gesellschaft für Projektmanagement (GPM) bei doubleSlash. Die beiden Referenten Alexander Birk und Christoph Lukas, beide seit 18 Jahren als Freiberufler unter dem Namen pingworks tätig, brachten ihre langjährige Erfahrung in der Softwareentwicklung mit ein und stellten die Prinzipien und Herausforderungen einer DevOps Kultur vor.

 

Mit DevOps fallen Mauern zwischen den Bereichen

DevOps ist ein Ansatz, der agiles Vorgehen konsequent weiterführt. Beim agilen Vorgehen wachsen als erstes die Mitarbeiter innerhalb der Softwareentwicklung eng zusammen, wenn Konzepter, Entwickler und Tester interdisziplinär in einem Scrum Team zusammenarbeiten. Durch die intensive Einbindung des Auftraggebers über den Product Owner fallen auch die Grenzen zwischen Fachbereich und IT. Mit DevOps werden nun auch die Mauern zwischen Softwareentwicklung und Betrieb eingerissen. Die Vorteile liegen klar auf der Hand: Wird der Betrieb der Software bereits während der Entwicklung vom Scrum Team übernommen, ist die Qualität einer Continuous Delivery Pipeline deutlich besser. Das „it works on my machine“-Syndrom fällt weg, da jeder Entwickler nicht nur für seinen Code, sondern auch für dessen Lauffähigkeit auf der Produktionsumgebung verantwortlich ist. Hohe Qualität und Continuous Delivery ermöglichen kürzere Releasezyklen, die wiederum den Auftraggeber glücklich machen.

Den kulturellen Wandel gestalten

Die Zusammenlegung von Entwicklung und Betrieb bedeutet aber auch, ganz verschiedene Kulturen in einer Person zusammenzubringen. Den kreativen und agilen Softwareentwickler und den auf Bewahrung von Stabilität hin orientierten Betriebsmitarbeiter. Das Herbeiführen dieses kulturellen Wandels verlangt viel Fingerspitzengefühl beim Management und eine konsequente Automatisierung von Software Deployment und Tests. Das gilt für die großen Internetkonzerne genauso wie für den Mittelstand, der sich den Herausforderungen der digitalen Transformation stellt.

DevOps erfordert Selbstorganisation und die richtige Architektur

 
Bevor eine Organisation also mit der Einführung von DevOps anfängt, sollten die Teams die agile Softwareentwicklung ernst nehmen. Wenn Releasezyklen in Wochen und nicht in Monaten gezählt werden, dann ist das Team schon auf einem guten Weg. Um das zu schaffen, hat sich das selbstorganisierte Team zwangsläufig schon intensiv mit der Automatisierung und der Qualität des Softwareentwicklungsprozesses beschäftigt, wissen die Referenten. Durch eine geeignete Architektur der Software mit Microservices lässt sich der Automatisierungsgrad soweit erhöhen, dass die Betriebsfähigkeit permanent gewährleistet ist. Der Übergang in den Betrieb ist dann kein Kraftakt mehr wie in vielen Projekten mit Jahres- oder Sechsmonats-Releases, sondern nur noch ein kleiner Schritt.

Sind DevOps immer der richtige Ansatz?

So wie agile Methoden immer stärker in die Unternehmen drängen, wird auch der Ruf nach DevOps gerade in vielen Konzern IT Abteilungen lauter. Dabei ist es nicht immer sinnvoll, diesen Ansatz umzusetzen. Der Nutzen eines solchen Struktur- und Kulturwandels muss im Verhältnis zum Aufwand stehen. So sind Webanwendungen mit hoher Änderungshäufigkeit prädestiniert für den DevOps Ansatz. Auch profitieren lang laufende Projekte stärker von DevOps als Kurzläufer. Weniger interessant sind dagegen Projekte, bei denen von Anfang klar ist, dass die Betriebsvorgaben zu 100 Prozent eingehalten werden können, hier bringt der Gewinn an Flexibilität keinen Vorteil.

Fazit

Die Zusammenführung von Betrieb und Entwicklung in einem DevOps Ansatz hat viele Vorteile für Qualität und Lieferfähigkeit eines Projektes. Die Umsetzung des Ansatzes erfordert aber einen kulturellen Wandel, begleitet von einem hohen Automatisierungsgrad der Softwareentwicklung. Dieser wiederum setzt eine geeignete Softwarearchitektur in unabhängigen Einheiten wie Microservices voraus. Im richtigen Projektumfeld ist das eine lohnenswerte Investition.


Zu den Referenten:
Die Vortragenden Alexander Birk und Christoph Lukas arbeiten seit 18 Jahren als Freiberufler unter dem Namen pingworks. Stand zu Beginn ihrer Tätigkeit die Software Entwicklung im Vordergrund, so war ihr Know-How im Bereich Linux Systeme und ihre Begeisterung für Teams der Wegbereiter für eine Tätigkeit als Scrum Master und Verfechter von Continous Delivery. Aktuell beschäftigen sie sich zunehmend mit Themen wie ‚DevOps-Kultur‘, ‚agilen Organisationen‘ und ‚agile Leadership‘.

Zurück zur Übersicht

Kommentar verfassen

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

*Pflichtfelder

*