DevOps

DevOps ist ein Kunstwort, das aus den Worten Development (Englisch für Entwicklung) und Operations (Englisch für Betrieb) zusammengesetzt ist. Die Zusammenfügung steht dabei sinnbildlich für die enge Zusammenarbeit zwischen den beiden Bereichen.

Bei DevOps handelt es sich nicht um eine Sammlung von Tools, sondern vielmehr um eine Einstellung (Mindset) zu Prozessen und einer dazugehörigen Denkweise. Auf Basis dieser Denkweise und Einstellung werden Tools ausgewählt, um die engere Zusammenarbeit der beiden Bereiche zu verbessern.

Digitalisierung und DevOps

Dienstleistungen und digitale Services haben sich als ein wichtiger Wirtschaftsfaktor etabliert und werden in den nächsten Jahren noch weiter an Relevanz gewinnen. Für viele Unternehmen verschiebt sich daher der Fokus noch stärker hin zu Softwareprodukten.

Diese gesteigerte Priorität bedeutet allerdings nicht, dass für die Softwareentwicklung nun uneingeschränkte Budgets zur Verfügung stehen. Genauso wie alle anderen Produkte, müssen Softwareprodukte kosteneffizient entwickelt werden. Damit geht die Herausforderung einher Anforderungen schnellstmöglich sowie mit der gewünschten Qualität umzusetzen. Um das zu ermöglichen werden effiziente Prozesse benötigt. In den letzten Jahren wurde viele neue Technologien, Tools und Arbeitsweisen entwickelt, die die Softwareentwicklung deutlich effizienter machen können als Arbeitsweisen, die noch auf dem Stand der 90er oder frühen 2000er Jahre sind.

Im Rahmen der fortschreitenden Digitalisierung wird DevOps daher häufig als eine mögliche Lösung zur Umsetzung dieser beschrieben, wobei hierbei die „Digitalisierung“ den Übergang von einer analogen hin zu einer digitalen Welt beschreibt.

Sich bei seiner Modernisierung der Softwareentwicklung nur auf die tatsächliche Entwicklung zu konzentrieren, ist jedoch zu kurz gegriffen und lässt viel Potential zur Verbesserung außen vor. Eine ganzheitliche Betrachtung der Prozesse, die die Entwicklung und auch den Betrieb von Softwareprodukten umfasst, ist daher sinnvoll. DevOps macht genau das!

DevOps ist eine Mentalität oder Denkweise, die Prozesse ganzheitlich betrachtet um die Entwicklung (Dev) und den Betrieb (Ops) eng zusammen zu bringen und so den gesamten Lebenszyklus der Software zu optimieren. Um das zu erreichen ist sowohl ein kultureller Wandel im Unternehmen, als auch eine Anpassung an der verwendeten Toolchain notwendig. Der kulturelle Wandel bildet die Basis, um die oft organisatorisch getrennten Abteilungen für Entwicklung und Betrieb wirklich zusammenarbeiten zu lassen. Die technischen Anpassungen an der Toolchain sind ein Mittel um diese Zusammenarbeit bestmöglich zu unterstützen.

Bei DevOps geht es darum durch kontinuierliches Lernen und iterative Weiterentwicklung von Produkten und Prozessen effizienter zu werden, indem von den eigenen Fehlern gelernt wird und neue Wege durch experimentieren gefunden werden. Dazu ist es notwendig, dass Ressourcen dort verfügbar sind, wo sie am dringendsten benötigt werden; im Idealfall per Self-Service und Automatisierung. Dadurch bieten sich mehrere Vorteile gegenüber der klassischen Softwareentwicklung:

  • schnelleres Feedback vom Betrieb zur Produktentwicklung
  • Änderungen können in kürzeren Zyklen veröffentlicht werden
  • effizientere Übergabe von der Entwicklung an den Betrieb

Zur technischen Verbesserung der Prozesse kann es notwendig sein immer wieder neue Tools auszuprobieren und regelmäßig Major Updates für diese durchzuführen um neue Funktionen nutzen zu können. Je effizienter das gelingt, desto geringer sind die Hürden um Anpassungen an Prozessen vorzunehmen und um das volle Potential ausschöpfen zu können. Genau hierbei kann das Cloudogu EcoSystem helfen.

DevOps und Cloudogu

Mit dem Cloudogu EcoSystem stellen wir eine Plattform zur Verfügung, die bereits alle wesentlichen (technischen) Elemente mitbringt, die für DevOps benötigt werden.

Da DevOps jedoch wesentlich mehr ist, als nur eine Pipeline für die Softwareentwicklung, bieten wir in unseren Schulungen auch darüber hinaus gehende Weiterbildungsmaßnahmen an. Dies macht es möglich die notwendige Denkweise (Mindset) zu vermitteln, um erfolgreich DevOps zu leben. Die entsprechenden Schulungen reichen von technisch orientierten Themen wie Containerisierung mit Docker© und der Verwendung von Kubernetes bis hin zum Aufsetzen und Leben einer Continuous Delivery Pipeline auf Basis von Best Practices.


Zurück zur Glossar-Übersicht