Vorhin hat mich Jochen Lillich auf eine andere Inititiative aufmerksam gemacht, die zumindest auf den ersten Blick mit LessCode sehr gut zu harmonisieren scheint:
DevOps
Es geht dabei im wesentlichen darum, die meist getrennten Abteilungen Entwicklung und Operations (Ops), also diejenigen, die die entwickelte Software betreiben, näher zusammenzubringen.
Zur Motivation folgende Faktoren:
- Die Entwicklungsabteilung entwickelt inzwischen nach agilen Methoden, die schnelle Releasezyklen mit sich bringen. Nicht nur die Entwicklung, sondern auch die Product Owner wollen daher ein schnelles Rollout mit hohen Taktzyklen.
- Virtualisierung und Clouds verändern klassiches Operations immer mehr
- Automatisierung greift auch im Operationsbereich immer mehr um sich
DevOps möchte mit dem folgenden typischen Ist-Zustand brechen:
- Die Entwicklung wirft eine Stück Software „über die Mauer“, es gibt aber große Diskrepanzen: keine oder kaum Ops-spezifische Doku, Entwickler ticken sowieso anders, sie nutzen andere Tools, Plattformen, Server (und .properties Files 🙂 ).
- Die Entwicklung will alles ganz schnell haben, denn sie stehen näher beim Product Owner, der natürlich Ergebnisse sehen will.
- Ops sagt immer nein, kein Zugang von außeen, „never change a running system“. Da geht es um uptime und Sicherheit, daher Risikominimierung überall,
- Ops bremst somit die Entwicklung und kennt sich mit der Applikation nicht aus.
- Die Entwicklung kennt sich wiederum nicht mit der darunterliegenden Infrastruktur aus.
Ähnlich wie das Agile Manifesto ist DevOps um eine Gruppe von Operation-Rockstars entstanden, was ihnen wohl etwas den Touch einer elitären Gruppe gibt. Dies hätte man der agilen Bewegung aber auch nachsagen können…
Letztlich handelt sich um eine Bewegung, die agile Techniken unter Einbeziehung der Entwicklung auch im Ops-Umfeld einführen will. Ich bin mal gespannt, wie sich das entwickelt, und was passiert, wenn auch in deutschen Entwicklungs- und Operationsabteilungen als relevant erachtet wird.
Weiteres Lesematerial gibt’s dazu z.B. in http://www.kartar.net/2010/02/what-devops-means-to-me/ oder in den Slides einer Konferenz http://www.devopsdays.org/ghent09/programme/ und unter http://en.wikipedia.org/wiki/DevOps, von wo ich offensichtlich viele Infos hier übernommen habe.