Fordern Ihre Nutzer*innen rascher neue Funktionen? Werden Entwicklung und Betrieb in Ihrem Unternehmen noch immer als eigene Silos betrachtet? Die Antwort heisst DevOps, welches ein bestimmtes Mindset, Kultur und technische Praktiken vereint. DevOps ermöglicht ganzheitliche Kommunikation, Integration, Automatisierung und eine enge Zusammenarbeit für Teams, welche Software planen, entwickeln, testen, bereitstellen und warten.
DevOps die konsequente Umsetzung von Agilität. Durch das Zusammenbringen der beiden Welten (Development und Operations) mit der Unterstützung von Automatisierung, kann innerhalb kürzester Zeit auf Fehler, neue Bedürfnisse und Anforderungen reagiert werden. Voraussetzung dafür ist die Container-Technologie, mit welcher durch eine moderne Microservice-Architektur, sämtliche Applikationen in stabilen, skalierbaren und «selbst-heilenden» Umgebungen aufgebaut werden können.
Vorteile und Nutzen von DevOps
DevOps verspricht grosses Potenzial, vor allem für Softwareunternehmen, auf dem Weg in Richtung Kontinuität, Sicherheit, Automatisierung und Geschwindigkeit. Kürzere Entwicklungszyklen von Releases und Funktionen, Reduzierung der Kosten für die Bereitstellung und Wartung, verbesserte Qualität durch schnellere Identifizierung von Bugs und schliesslich weniger Ausfälle und kürzere Durchlaufzeiten, um es auf den Punkt zu bringen. Der Kern der DevOps-Philosophie ist das «Wir». Weg von Schuldzuweisungen und klar abgegrenzten Silos, hin zu einem besseren Verständnis zwischen Entwicklung und Betrieb und somit zu einer transparenten und ganzheitlichen Teamarbeit.
Effizienz und Qualität durch Automatisierung
Bei DevOps stehen nicht nur Tools oder die Automatisierung im Vordergrund. Trotzdem ist die Automatisierung ein zentraler Bestandteil, der bei der Anwendung von agiler Entwicklung sowie Continuous Integration und Continuous Integration und Deployment (CI/CD) unerlässlich ist. Um diese Kontinuität zu ermöglichen, wird mit dem DevOps-Ansatz die Bereitstellung von Releases, das Durchführen von Software-Tests und die Bereitstellung auf der produktiven Umgebung bestmöglich automatisiert. Der Gedanke, dass bei den manuellen Tätigkeiten im Deployment-Prozess etwas schiefgehen kann und das Bewusstsein der Instabilität komplexer Systeme, sind Zweck dieser Automatisierung und der Antrieb einer schnellen Einführung von DevOps in Ihrem Unternehmen.
Mehrwert für Ihre Kund*innen
Durch zahlreich durchgeführte DevOps-Projekte, bei welchen von Beginn weg die Zusammenarbeit zwischen Entwicklung und Betrieb aktiv praktiziert wurde, stand jederzeit die Lösung und die Kund*innen im Mittelpunkt. Dadurch konnte die Software optimal auf den Betrieb in der Cloud vorbereitet und die entsprechenden Software- und Systemarchitekturen konzipiert werden. Das Resultat ist einfach: eine sichere, leistungsfähige und einfach skalierbare digitale Lösung. Diese überwacht und „heilt“ sich bei Problemen selbst und ermöglicht Kund*innen und dessen Nutzer*innen Zugriff zu jederzeit. Durch die Abstimmung des Teams und eine gemeinsame und optimal definierte Architektur, können wertvolle Systemressourcen und somit auch Kosten eingespart werden.
Agilität als Antreiber
DevOps basiert auf den Prinzipien der agilen Softwareentwicklung und ist ein wesentlicher Bestandteil solcher Projekte. DevOps geht jedoch über die Bereitstellung einer digitalen Lösung (Softwarecode) hinaus. Damit ist der IT-Betrieb gemeint, welcher nach der Bereitstellung einer digitalen Lösung zum Tragen kommt. Einfach gesagt macht DevOps dort weiter, wo die Agilität aufhört. Der Fokus liegt dabei auf dem gesamten Lifecycle, bei welchem Themen wie Verfügbarkeit, Sicherheit, Monitoring, Backup im Vordergrund stehen. In der Praxis werden dementsprechend Entwicklung und Betrieb von den Design- und Entwicklungsphasen des agilen Software Development Lifecycle bis hin zur Integration in den produktiven Betrieb vereint.
Weiterführende Links zum Thema
- Continuous Integration und Continuous Deployment (Deutsch)
- Agile und DevOps (Deutsch)
- 2020 State of DevOps Report (Englisch)
- Was ist Kubernetes? (Deutsch)
- DevOps einfach erklärt? (Englisch)