Was ist DevOps nicht?

DevOps ist keine „Paketlösung“.

Sie können es nicht kaufen und installieren.

Was ist DevOps?

„DevOps ist die Verbindung von Menschen, Prozessen und Produkten, um eine kontinuierliche Wertschöpfung für unsere Endverbraucher zu ermöglichen.“ – Donovan Brown, MSFT

DevOps ist eine „Kultur“, in der Entwicklung, Test und Betrieb kollaborativ zusammenarbeiten, um die Bereitstellung hochwertiger Software zu automatisieren und dabei entwickelt die DevOps-Kultur einen „production-first“ Ansatz: Mit dem Einsatz von DevOps ist sichergestellt, dass Ihr Code immer für die Bereitstellung in der Produktion zur Verfügung steht.

Warum DevOps?

Eine der ersten Aufgaben von DevOps besteht darin, die „Wall of Confusion“, also die „Mauer der Verwirrung“, zwischen den Entwicklungs- und Betriebsteams zu durchbrechen. Denn beide Teams haben unterschiedliche Ziele und Erwartungen, wenn es um die Bereitstellung von Software geht.

 

DevOps durchbricht die Mauer der Verwirrung zwischen den Teams und fördert eine bessere Kommunikation und Zusammenarbeit während des gesamten Lebenszyklus der Anwendungsentwicklung und führt zu einer besseren Transparenz und häufigen kleinen Implementierungen zusammen.

Wie wird DevOps angewendet?

Oberstes Ziel von DevOps ist es, schnell die hochwertigste Software an die Endkunden zu liefern.

Um dies zu erreichen, muss DevOps in allen Phasen der Softwareentwicklung und -bereitstellung implementiert werden.

Plan – Das Backlog repräsentiert klar definierte und priorisierte User Stories mit geeigneten Akzeptanzkriterien.

Entwickeln & Testen – Die Entwicklung umfasst qualitativ hochwertigen Code, der geschrieben, debugged, reviewed, eingecheckt und getestet wird. Der Test beinhaltet die Überprüfung der Akzeptanzkriterien der User Story, eventuell gefolgt von Performance- und Integrationstests.

Release – Wann immer eine neue Version fertig ist und ein Sprint endet, wird ein automatisierter Prozess für die Bereitstellung verwendet.

Überwachen und Lernen – Nach dem Release kann das Team Informationen darüber sammeln, wie Kunden die Applikationen nutzen und den Zustand der Anwendungen weiterhin überwachen.

Zusammenarbeit – Das Übersetzen des Codes und die Durchführung von Unit-Tests bei jedem kleinen oder großen Check-in stellt sicher, dass der Code bereit für das Deployment ist. Dann erfolgt die Bereitstellung für eine möglichst produktionsnahe Umgebung.

Die erfolgreiche Durchführung von Tests stellt sicher, dass Entwicklung und Produktion eng zusammenarbeiten.