Es gibt viele verschiedene Gründe für verschiedene Organisationen, zu DevOps zu wechseln.
Ich werde versuchen, diejenigen aufzulisten, die oft auftauchen.
Verkürzung der Zeit für den Änderungszyklus
Zwischen der Anforderung einer Änderung und der tatsächlichen Bereitstellung und Verwendung in der Organisation liegt häufig viel Zeit. Zunächst wird es von den Entwicklern in einem der Entwicklungszyklen geplant und nach der Auslieferung in einem der Release-Zyklen des Betriebs. Beide Zyklen beinhalten Tests und bei festgestellten Problemen werden beide Zyklen zurückgesetzt. Durch die Integration der Entwicklungs- und Betriebsabteilungen können wir beide Prozesse rationalisieren.
Probleme mit Software oder Hardware
Erinnern Sie sich an den Bugs Bunny-Cartoon, in dem sich Bugs und Daffy streiten, ob es Entenzeit oder Hasenzeit ist? Stellen Sie sich vor, wir haben es stattdessen mit Entwicklern und Vorgängen gemacht, bei denen Entwickler argumentieren, dass es sich um ein Hardwareproblem handelt, und bei Vorgängen, dass es sich um ein Softwareproblem handelt. Für den Endverbraucher ist dies eine Unterscheidung ohne Unterschied. Sie wollen nur, dass es repariert wird.
Indem sie Entwickler und Betriebe zusammenbringen, müssen sie die Probleme beheben. Und es könnte sich herausstellen, dass es sich um ein Software- und Hardwareproblem handelte.
Wir gegen sie
In vielen Unternehmen wuchs die Distanz zwischen Testern und Entwicklern, da es sich um separate Abteilungen handelte und der Entwicklungszyklus immer formalisierter und standardisierter wurde.
Mit dem Erscheinen von Agile haben Entwickler und Tester enger zusammengearbeitet und wir haben begonnen, die Sichtweise des anderen im Entwicklungszyklus zu sehen und vielleicht sogar zu respektieren.
Ähnliches muss zwischen Entwicklern und Betrieben geschehen, da mit der weiteren Formalisierung und Standardisierung der beiden Bereiche und Prozesse die Distanz zwischen diesen Abteilungen zunimmt. Eines der Probleme mit dem traditionellen Modell ist, dass es für Entwickler und Betriebe gleichermaßen wie "wir" gegen "sie" aussieht. Beide verstehen die Schwierigkeit der Verantwortlichkeiten des anderen nicht ganz.
Erwartungen / Vorteile
Mit DevOps lernen beide Fachbereiche einige der Fähigkeiten, die traditionell von den anderen ausgeübt werden. Niemand wird erwarten, dass ein Systemadministrator ein Softwareentwickler oder ein Entwickler ein Netzwerktechniker wird, aber von beiden wird erwartet, dass sie einen Teil der Verantwortung des anderen übernehmen. Das heißt, wenn Sie wirklich zusätzliche Hände brauchen, sind sie da.
Und es gibt einige Vorteile für Entwickler: Sie haben jetzt mehr Kontrolle über Ihre Testumgebungen, es ist einfacher, Software für die Benutzer bereitzustellen und mehr Mitarbeiter in Ihrem Unternehmen zu haben, mit denen Sie Ihre Vorliebe für das Handwerk teilen können.