Muss meine Organisation Agile Soft übernehmen? Dev. vor der Übernahme von DevOps?

13

Agile Softwareentwicklung ist heutzutage die Methode der Wahl für Software-Shops. Es gibt aber immer noch Organisationen, die Agile in ihrer Softwareentwicklung nicht praktizieren und möglicherweise an der Einführung von DevOps interessiert sind.

Wenn ich Agile Software Development sage, meine ich alle Nachkommen, die aus dem Manifest für Agile Software Development hervorgegangen sind . Wie Extreme Programming , Scrum , Lean Software Development und andere.

Ist die agile Softwareentwicklung eine zwingende Voraussetzung für die Einführung von DevOps auf Organisationsebene?

Evgeny
quelle
1
Diese Frage wurde erstellt, als devops.stackexchange.com/questions/73/… als zu allgemein eingestuft wurde.
Evgeny
1
Dies ist eine sehr gute und sehr gültige Frage
Alexandre
Ein sehr relevanter Artikel darüber, warum Agile nicht funktioniert und wie DevOps in das Bild passt, wurde unter hackernoon.com/why-isnt-agile-working-d7127af1c552
Evgeny

Antworten:

8

Agile Software-Entwicklung ist für DevOps nicht erforderlich , aber ich glaube, man kann argumentieren, dass das Wertversprechen für DevOps ohne Agile oft viel niedriger ist.

DevOps ist eine Menge Dinge, aber Automatisierung ist ein zentrales Thema. Der Wert der Automatisierung steigt direkt proportional zu der Häufigkeit, mit der die Entwicklung neue Releases erstellt. Häufige Bereitstellung wirkt sich positiv auf bestimmte Produkttypen aus, insbesondere auf Verbraucheranwendungen. Hohe Geschwindigkeit während des gesamten Lebenszyklus der Softwarebereitstellung liefert Wert für jede Iteration (hat jemand die CA-Anzeige gesehen, in der die Zombies neue Funktionen in ihren Apps wünschen?)

Ohne Agile sind Hochfrequenz-Releases äußerst schwierig, wenn nicht sogar unmöglich. Wenn das Entwicklungsteam einmal im Quartal oder zweimal im Jahr Software veröffentlicht, kann DevOps den Prozess trotzdem automatisieren. Aber worum geht es dann? Die Investition in Zeit, Schulung und Ressourcen für die Einführung von DevOps kann sich teilweise in der Qualität niederschlagen. Der beste Wert liegt jedoch in der Aufrechterhaltung einer hohen Geschwindigkeit über den gesamten Lebenszyklus der Lieferung.

Man könnte auch argumentieren, dass Sie, wenn Sie DevOps einführen wollen, warum nicht auch Agile einführen würden ? Die Prinzipien, die sie beide arbeiten lassen, arbeiten gut zusammen. Das Üben von DevOps ohne Agile kann zu einem Ungleichgewicht zwischen Ops und Dev führen, bei dem Ops die Leistung von Dev bei der Servicebereitstellung übertrifft.

Dave Swersky
quelle
4

NEIN

Ich würde argumentieren, dass die Mature DevOps-Operation einen Mature Agile-Prozess erfordert . Es ist unwahrscheinlich, dass Sie in der Lage sind, das volle Vertrauen für eine kontinuierliche Bereitstellung zu gewinnen oder Ihren Entwicklern zu ermöglichen, den Bereitstellungsprozess zu initiieren, ohne dass ein ausgereifter Agile-Prozess vorhanden ist.

Ich halte es jedoch für sehr wichtig, klar zu stellen, dass eine Organisation ihren agilen Prozess NICHT übernehmen muss, bevor sie ihre DevOps-Kultur und -Infrastruktur aufbaut. In der Tat würde ich argumentieren, dass es tatsächlich einfacher ist, Agile zu übernehmen, wenn Sie einige grundlegende DevOps in Ihrem Unternehmen haben. Anstatt Agile eine Voraussetzung für DevOps zu sein, würde ich empfehlen, DevOps zu verwenden, um Ihre agile Implementierung voranzutreiben.

avi
quelle
2

Auf der Agile 2008-Konferenz diskutierten Andrew Clay Shafer und Patrick Debois über "Agile Infrastructure". Dies war der Beginn der DevOps-Bewegung.

Obwohl DevOps seine Wurzeln im Agile Manifest hat, ist es nicht unbedingt erforderlich, dass die Entwicklungsteams agil sind. Es ist in der Tat wichtig, dass die meisten agilen Prinzipien befolgt werden. Es ist jedoch keine spezifische agile Methodik vorgeschrieben. Wenn das Entwicklungsteam eine eigene Arbeitsweise entwickelt und dabei mehr oder weniger die agilen Prinzipien einhält, können Sie die Vorteile erkennen.

Jiri Klouda
quelle
2

Nicht unbedingt; Wie die anderen Antworten bereits sagten, können sich agile Methoden und DevOps-Mentalität gegenseitig ausbauen. Für mich ist DevOps jedoch umfassender als agile oder schlanke Entwicklungsanstrengungen. Unternehmen, die DevOps einsetzen, betrachten den gesamten Wertstrom, einschließlich Betrieb, Entwicklung, Produktdesign, Marketing, Sicherheit usw. Die Bewegung kann in jedem Silo mit der Absicht entstehen, Barrieren abzubauen.

Stuart Ainsworth
quelle
1

IMHO es nicht brauchen zu.

Von DevOps (Schwerpunkt meiner):

DevOps (eine gekürzte Verbindung aus "Softwareentwicklung" und "Informationstechnologie-OPeration") ist ein Begriff, der sich auf eine Reihe von Vorgehensweisen bezieht, bei denen die Zusammenarbeit und Kommunikation von Softwareentwicklern und IT-Experten bei der Automatisierung des Prozesses im Vordergrund steht Softwarebereitstellung und Infrastrukturänderungen. 1 [2] Ziel ist es , eine Kultur und Umwelt zur Gründung wo das Erstellen, Testen und Software - Freigabe passieren kann , schnell, häufig und zuverlässiger.

Ich habe hervorgehoben, can happenwie es nicht ist must happen.

Nichts in der obigen Beschreibung erfordert tatsächlich eine agile Entwicklungsmethodik.

Ich vermute jedoch, dass bei Übergängen zu DevOps häufig agile Methoden in den Entwicklungsprozess einbezogen werden, da sie wirklich gut zusammenpassen.

Dan Cornilescu
quelle
1

Das Konzept der Devops ist gerade wegen der Verbreitung von Agile entstanden, daher ist es angebracht, die Devops-Ansätze in einem Agile zu verwenden. Beispielsweise wird bei agiler, kontinuierlicher Integration (die Teil des Devops-Ansatzes ist) die Orchestrierung von Diensten und Containern zum Testen und Ausrollen neuer Releases für Test- und Produktumgebungen verwendet.

Quarind
quelle