Agile Software-Entwicklung Erst DevOps macht die IT wirklich agil

Autor / Redakteur: Dr. Dietmar Müller / Florian Karlstetter |

Erinnern Sie sich noch an das Schlagwort der „agilen“ Softwareentwicklung? Vor rund zehn, 15 Jahren war das ein ganz großer Hype – der wegen verschiedener Gründe aber ein wenig aus der Mode gekommen ist. Seine Stelle hat heute DevOps eingenommen. Wie unterscheiden sich die beiden Konzepte und wie definiert sich DevOps eigentlich genau?

Anbieter zum Thema

DevOps steht für Development & Operations und beschreibt ein Entwicklungskonzept, das ganz ohne Werte, Prinzipien und Manifest auskommt. Ein wichtiges Merkmal bei DevOps ist die Kommunikation aller beteiligten Personengruppen.
DevOps steht für Development & Operations und beschreibt ein Entwicklungskonzept, das ganz ohne Werte, Prinzipien und Manifest auskommt. Ein wichtiges Merkmal bei DevOps ist die Kommunikation aller beteiligten Personengruppen.
( © aa_amie - Fotolia.com)

Der Softwareentwicklung in Unternehmen kommt mittlerweile eine sehr zentrale Rolle zu: Für die Wettbewerbsfähigkeit ist es von großer Bedeutung, dass Mitarbeiter oder Kunden schnell neue Anwendungen nutzen können. „Insbesondere IT-Abteilungen stehen heute in großen Unternehmen mit mehr als 2.000 Mitarbeitern unter hohem Druck, kürzere Innovations-, Release- und Markteintrittszyklen zu unterstützen“, so Joachim Hackmann, Principal Consultant bei PAC.

Die agile Softwareentwicklung trat an mit dem Versprechen, genau das liefern zu können. Der Softwareentwicklungsprozess sollte flexibler und schlanker werden, als man von den klassischen Vorgehensmodellen wie beispielsweise beim Wasserfallmodell, beim Rational Unified Process oder dem V-Modell kannte.

Dafür wurden agile Prinzipien – das sind Leitsätze für die agile Arbeit – formuliert, die wiederum auf agilen Werten basierten, die in einem agilen Manifest festgezurrt wurden. Hört sich kompliziert an? War und ist es auch, obwohl eine der Prinzipien forderte, der Einfachheit des Entwicklungsprozesses Priorität einzuräumen. Nichtsdestotrotz sollen Ende 2014 mehr als 90 Prozent aller Unternehmen agile Prozesse für die Softwareentwicklung herangezogen haben, so der 9th Annual State of Agile Survey von VersionOne.

Trotz dieser stattlichen Zahl ist heutzutage kaum mehr von der agilen Softwareentwicklung die Rede. An ihre Stelle ist DevOps getreten, was beispielhaft auch am Produktangebot des auf „Agile Life Cycle Management“ spezialisierten Unternehmens VersionOne abzulesen ist, das den Survey durchgeführt hat: Neben den seit 2002 angebotenen agilen Ressourcen sind mittlerweile praktisch gleichwertig DevOps-Ressourcen getreten. Aber was bedeutet denn nun DevOps eigentlich?

Was bedeutet DevOps genau?

Das aus „Development“ und „Operations“ zusammengesetzte Kunstwort beschreibt ein Entwicklungskonzept, das ganz ohne Werte, Prinzipien und Manifest auskommt. Das Ziel ist aber das gleiche wie bei den agilen Methoden: Die möglichst schnelle Bereitstellung und Inbetriebnahme neuer Anwendungen, von Softwarefunktionen, Produkten und Services. Mancherorts ist daher zu lesen, DevOps sei die Implementierung agiler Prozesse der Softwareentwicklung in den IT-Betrieb.

Das ist aber noch nicht alles: Während sich die agile Softwareentwicklung vorrangig darum kümmert, den Softwareentwicklungsprozess flexibler und schlanker zu machen, bezieht DevOps noch einen weiteren entscheidenden Akteur im Unternehmen mit ein: Den Anwender! Die Zusammenarbeit von Fachexperten und Entwicklern ist mit DevOps vielmehr in den Mittelpunkt gerückt.

An anderer Stelle hat Mark Troester, Vice President, Solutions Marketing bei Progress, DevOps bereits einmal so definiert: „Mit all seinen Plattformen, Tools und Methoden legt der DevOps-Ansatz Wert auf eine enge Abstimmung von IT-Betrieb und Entwicklung. Ziel von DevOps ist die Bereitstellung neuer und fortlaufend getesteter Applikationen, die ständige Weiterentwicklung von Features und eine laufende Wartung, um Applikationen schneller ausliefern zu können.“

Mittler zwischen Programmierern und Nutzern: die IT-Abteilung

DevOps richtet sich somit also nicht alleine an die Entwicklerseite, sondern vielmehr an die IT-Abteilung als Mittler zwischen Programmierern und Nutzern. Während die Softwareentwicklung dem immensen Bedarf an kurzfristig verfügbarer Anwendungssoftware mit besagten agilen Methoden begegnet, hat die IT auch die Usability, Performance, Stabilität, Sicherheit und Verfügbarkeit im Auge.

Gerade hier lag viel im Argen: Erinnern Sie sich noch an die Zeiten, als ein System-Administrator zu Ihnen an den Arbeitsplatz kam, um eine neue Software per CD auf Ihren Rechner zu spielen? Eine Schulung für diese Software gab es eher selten – und beim Entwicklungsprozess hatten Sie in der Regel auch nichts mitzureden. Das sorgte natürlich für Produktivitätsdefizite – mit entsprechenden Wettbewerbsnachteilen.

Heiß begehrt: DevOps bei IT-Managern

DevOps verspricht, solche Produktivitätsdefizite erst gar nicht aufkommen zu lassen. Entsprechend wild sind CIOs und ihr Gefolge auf den Ansatz, der die Qualität der Software, die Geschwindigkeit der Entwicklung und der Auslieferung sowie das Miteinander der beteiligten Teams enorm verbessern soll. So ist es auch in der von Hackmann betreuten PAC-Studie „DevOps – Reality Check in deutschen Unternehmen“ nachzulesen. Demnach stufen die meisten leitenden IT-Manager (70 Prozent) aktuell das Thema DevOps als „unverzichtbar“ ein, wenngleich die aktuelle Umsetzungsrate von DevOps in deutschen Unternehmen noch bescheiden ausfällt: Gerade einmal acht (!) Prozent der befragten Manager erklärten, dass DevOps bereits Bestandteil in allen Entwicklungsprojekten ist. 24 Prozent betreiben DevOps-Konzepte in einzelnen Projekten. In anderen Studien werden weitaus höhere Zahlen genannt, PAC-Analyst Hackmann ist jedoch für seine Seriosität bekannt.

Woran hapert es? Das wollte auch Hackmann von den 82 befragten IT-Verantwortlichen in deutschen Unternehmen ab 500 Mitarbeitern wissen. Klare Antwort: Am meisten scheitert die Einführung am fehlenden Know-how (69 Prozent). Oft mangele es auch einfach an Zeit und Ressourcen (67 Prozent), um das Thema mit der gebotenen Ernsthaftigkeit zu verfolgen. Grundsätzliche Hindernisse wie etwa eine ablehnende Haltung der Mitarbeiter oder Unverträglichkeit mit vorhandenen Abläufen seien dagegen selten.

Hackmann sieht DevOps trotz der aktuell noch niedrigen Einsatzzahlen als Erfolgsmodell: „Angesichts dessen, dass DevOps eine recht junge Methode ist, die zudem von vielen Befragten sehr unterschiedlich interpretiert wird, ist der praktische Einsatz erstaunlich weit verbreitet“, so der Berater. Sein Eindruck ist, dass DevOps heute schon „in fast jedem dritten Unternehmen gelebt" wird.

So führen Sie DevOps ins Unternehmen ein

DevOps funktioniert nicht auf Knopfdruck. Während sich die Softwareentwicklung dank der agilen Methoden schon länger darauf eingestellt hat, schnell und flexibel neue Anwendungen zu generieren, muss die IT umdenken: Die Sicherheit von Daten und Applikationen muss nach wie vor an erster Stelle stehen, dennoch müssen sie schneller den Weg zum Anwender finden – der beim Entwicklungsprozess dann auch noch ein Wörtchen mitreden soll.

Klares Ziel muss es sein, dass sich Anwender Services oder APIs per Mausklick auf den Schirm holen können. Dafür braucht es Virtualisierung, Standardisierung und Automatisierung, eine Container-Schicht kann in puncto Flexibilität und Geschwindigkeit auch nicht schaden.

Ähnlich wie bei den agilen Methoden der Softwareentwicklung steht auch bei DevOps die Kommunikation ganz oben: Die IT sollte sich in ständigem Austausch mit den Entwicklern befinden. Wenn die Programmierer die Abläufe des IT-Betriebs gut kennen, können sie auch ihre Codes dafür auslegen. Die IT ihrerseits sollte alle Hürden zu den Anwendern in den Fachabteilungen abbauen und als deren Fürsprecher auftreten. Das stellt sicher, dass neue Anwendungen nicht nur schnell und reibungslos bereitgestellt, sondern diese dann auch noch gut angenommen werden.

Fazit

Unterm Strich muss DevOps nicht als technisches Regelwerk sondern vielmehr als neue Art des Umgangs miteinander verstanden werden: Es geht vor allem darum, auf organisatorischer Ebene eine Kultur der Offenheit zu pflegen. Denn agile Methoden der Softwareentwicklung fruchten wenig, wenn die schnell entwickelten neuen Anwendungen nicht zur IT eines Unternehmens passen. Das ist besonders dann feststellbar, wenn die Entwicklung ausgelagert wurde und dabei agile Methoden zum Einsatz kommen – während die IT des Auftraggebers ihr Wissen in Silos gefangen hält. Dann knirscht es zwangsläufig bei der Implementierung – und wahrscheinlich auch bei der Nutzung. Das kann durch eine interdisziplinäre Abgleichung möglichst schon im Vorfeld eines Softwareprojektes verhindert werden.

DevOps will also, dass Sie reden. Mit allen an der Einführung einer neuen Anwendung beteiligten Personengruppen. Dann klappt’s auch mit dem Wettbewerbsvorteil.

Nachfolgend haben wir für Sie sieben Tipps für die erfolgreiche Einführung von DevOps in Ihr Unternehmen aufgelistet:

(ID:44405104)