# Ein Leitfaden: das CALMS-DevOps-Framework

> Mit dem CALMS-Framework bewertest du, wie gut du DevOps-Prozesse einführen kannst, und misst den Erfolg während einer Transformation.

Source: https://www.xalt.de/blog/calms/

Mario 15.02.2024

## Was ist das CALMS-DevOps-Framework?

CALMS ist ein Framework, mit dem du bewerten kannst, wie gut dein Unternehmen DevOps-Prozesse einführen kann, und mit dem du den Erfolg während einer DevOps-Transformation misst. CALMS steht für Culture, Automation, Lean, Measurement und Sharing. Doch was genau bedeuten diese Schlagwörter?

### CALMS auf einen Blick

- **Culture:** Organisatorische Silos führen in deinem Unternehmen zu Blockaden. Bevor sich diese Silos aufbrechen lassen, muss eine Kultur der gemeinsamen Verantwortung und Zusammenarbeit entstehen. Erst wenn alle Beteiligten am Produkt zusammenarbeiten, lassen sich weitere Schritte angehen.
- **Automation:** Hier sollten sich Teams, die DevOps einführen wollen, darauf konzentrieren, so viele manuelle Aufgaben wie möglich zu automatisieren, besonders bei Continuous Integration und Testautomatisierung.
- **Lean:** Entwicklungsteams nutzen Lean-Prinzipien, um unnötigen Ressourcenverbrauch zu vermeiden und den Wertschöpfungsprozess zu optimieren, etwa indem sie WIP minimieren, die Sichtbarkeit von Ergebnissen verbessern und die Komplexität von Übergaben sowie Wartezeiten reduzieren.
- **Measurement:** Die Organisation sammelt gezielt Daten über ihre Prozesse, Deployments usw., um ihre aktuellen Fähigkeiten zu verstehen und zu erkennen, wo sich Verbesserungen erzielen lassen.
- **Sharing:** Eine Gewohnheit der Offenheit und des Teilens innerhalb von Teams und zwischen ihnen (unterstützt durch die richtigen Tools) sorgt dafür, dass alle auf dieselben Ziele hinarbeiten, und verringert Reibung bei Übergaben, wenn Probleme auftreten.

## CALMS – Culture

DevOps lässt sich nicht einfach schnell einführen. Es ist eine Kultur, die deine gesamte IT betrifft: jedes Team, vom Produktmanagement über Entwicklung und Betrieb bis hin zur Art, wie du deine IT-Infrastruktur verwaltest.

Das Wesen von DevOps besteht darin, verschiedene Abteilungen miteinander zu verbinden, um Austausch und Zusammenarbeit zu fördern. Automatisierung und Tools sind „nice to have“, doch ab einem gewissen Punkt nützen sie nichts, wenn nicht alle Beteiligten aus IT und Betrieb eng zusammenarbeiten.

Hier löst DevOps Kommunikationsprobleme, und das geschieht nicht mit Tools.

Deshalb solltest du DevOps vielmehr als Weiterentwicklung deiner agilen Arbeitsweise sehen. Das heißt: Alle Teams ziehen an einem Strang und verfolgen ein gemeinsames Ziel.

Das bedeutet, dass jede Person, die am Produkt beteiligt ist, mit ins Boot geholt werden muss: Produktmanagement, Entwicklung, Betrieb, Qualitätsmanagement, Customer Success und alle weiteren Beteiligten.

**Profi-Tipp:**

Überlege, deine Teams neu zu organisieren. Geh weg von funktionalen Teams (Entwicklung, Betrieb, Infrastruktur usw.) hin zu Produktteams. Stell sicher, dass alle Teammitglieder, die am Produkt beteiligt sind, reibungslos zusammenarbeiten können. So baust du blockierende Silos ab.

Wichtig ist, gemeinsam auf ein Ziel hinzuarbeiten und einen klaren Plan zu haben, wie ihr es erreicht.

Ein so drastischer Schritt hin zu reinen Produktteams ist nicht immer der richtige Ansatz und kann schnell zu weiteren Problemen führen, denn du kannst nicht immer alle von Anfang an mit ins Boot holen.

### Kleine Schritte zu einer DevOps-Kultur

Damit DevOps gelingt und in deinen Teams ein Kulturwandel beginnt, kannst du zunächst die folgenden Praktiken einführen:

- Gemeinsames Sprint Planning: Lade als Entwickler auch den Betrieb zu deinen regelmäßigen Sprint-Planning-Sessions ein.
- Führe tägliche Stand-ups mit allen Beteiligten durch
- Betriebsteams können Entwickler zu ihren Meetings einladen
- Produktmanager sitzen an der Schnittstelle zwischen (End-)Kunden und Entwicklung. Reine Top-down-Kommunikation hilft hier jedoch wenig. Führe deshalb ein gemeinsames Meeting oder einen Kickoff ein, um alle möglichen Auswirkungen von Neuerungen, Updates usw. zu ermitteln.

Du siehst also: Kommunikation ist bei DevOps das A und O. Ohne gute Kommunikation lassen sich die einzelnen Ziele der Abteilungen (oder Teams) und die Unternehmensziele nur schwer erreichen.

### Unsere Best Practices für die DevOps-Kultur

Bei uns sind neben Entwicklung und Betrieb alle an der DevOps-Kultur beteiligt: Das gesamte Unternehmen ist Teil dieses Wandels und lebt offene Kommunikation. Alle Teams und Funktionen sind Teil der Strategie.

Neben DevOps und Produktmanagement werden auch Vertrieb, Marketing und Beratung in die Kommunikation eingebunden.

So können wir die unterschiedlichsten Ansätze in Einklang bringen und gemeinsam auf ein Ziel hinarbeiten.

Damit erweitern wir den DevOps-Ansatz um die [Flywheel-Methode von HubSpot](https://www.hubspot.de/flywheel).

Der Begriff DevOps ist für uns daher eigentlich zu eng. Die offene Kommunikationsstruktur ermöglicht es uns, auf jeden äußeren Einfluss zu reagieren und ihn gemeinsam zu lösen. Kundenzufriedenheit betrifft zum Beispiel das ganze Unternehmen und damit weit mehr als Vertrieb oder Customer Success. Und entsprechend reagieren wir.

## CALMS – Automation

Ein Grundkonzept von DevOps ist die Automatisierung wiederkehrender Aufgaben und Prozesse entlang der Produktentwicklung. DevOps einzuführen heißt, alles zu automatisieren, um Ressourcen freizusetzen, die dann an anderen wichtigen Stellen eingesetzt werden können.

### Profi-Tipp:

Du kannst damit beginnen, Build, Test, Deployment und Bereitstellung zu automatisieren. Das sind typische Einstiegspunkte für Teams am Anfang ihrer Automatisierungsreise. Denn überleg mal: Wie ließen sich alle Beteiligten besser freispielen, damit sie gemeinsam an Lösungen arbeiten, von denen alle profitieren?

Doch wie steigst du am besten in die Automatisierung ein? Wo schaffe ich den größten Mehrwert für mein Team und mein Unternehmen?

### Continuous Delivery

Mit dem Continuous-Delivery-Ansatz stellst du sicher, dass nur Code auf dem Produktivsystem live geht, der keine Bugs enthält und nicht zu weiteren Bugs oder Problemen in der Software führt, indem neuer Code automatisch auf Fehler oder Sicherheitslücken getestet wird. Der Großteil dieses Ansatzes wird durch eine dedizierte Cloud-Infrastruktur unterstützt. Automatisierte Tests helfen Entwicklern und Betriebsteams außerdem, mehr Ressourcen zu sparen.

#### Doch warum sind automatisierte Tests so wertvoll?

Computer können neuen Code schneller, effektiver und sicherer analysieren als jeder Mensch. Außerdem lassen sich so mehrere Tests parallel ausführen. Dadurch erkennst du Bugs und auch Sicherheitsrisiken schneller. Und du kannst direkt darauf reagieren und selbst entscheiden, wie du weiter vorgehst.

Ein weiterer großer Vorteil von Tests ist, dass es bei einem Release keine große Überraschung gibt. Automatisierte Deployments machen die IT zudem auf Abweichungen zwischen Umgebungen aufmerksam.

### Configuration und Infrastructure as Code

Eine weitere Möglichkeit, mit Automatisierung zu beginnen, ist „Configuration as Code“. Mit diesem Ansatz automatisierst du sozusagen die Konfiguration deiner Infrastruktur (in der Cloud).

So wie du als Entwickler Software in kleine Teile zerlegst, die alle redundant funktionieren und zusammen deine App bilden, lässt sich auch deine Infrastruktur strukturieren. Je nachdem, was deine Infrastruktur gerade braucht, kannst du sie durch einfache Änderungen am Code (an der Konfiguration) leicht anpassen, hochfahren oder herunterfahren. So kann dein Betriebsteam Infrastruktur nur dann bereitstellen, wenn sie gebraucht wird (und in dem Umfang, in dem sie gebraucht wird).

Diese beiden Beispiele geben dir nur einen kleinen Vorgeschmack darauf, was mit DevOps möglich ist. Das Konzept lässt sich aber noch weiterdenken. Mit Blue-Green-Deployments ist es zum Beispiel möglich, mehrere Instanzen desselben Systems parallel zu betreiben. Während eine davon für die Nutzer erreichbar ist, dient die andere zum Testen neuer Funktionen, Updates oder Hotfixes. So läuft das Produktivsystem immer stabil, und Updates gehen erst live, wenn der neue Code fehlerfrei läuft.

Hier findest du mehr Informationen zu [Blue-Green-Deployments und DevOps](https://www.xalt.de/en/continuous-integration-and-delivery-devops/).

## CALMS – Lean

Da die DevOps-Kultur das Fundament bildet, kommt hier Lean ins Spiel. Lean greift die Prinzipien agiler Auslieferung auf. Es sorgt für schnelle Prozesse und reibungslose Workflows und macht deine Cloud-DevOps-Organisation reaktionsfähig.

Die DevOps-Kultur ermöglicht es dir, überall Möglichkeiten für Continuous Improvement zu erkennen. Manche davon liegen auf der Hand, etwa regelmäßige Retrospektiven, die die Prozesse deines Teams verbessern. Andere sind subtiler, zum Beispiel A/B-Tests verschiedener Onboarding-Ansätze für neue Nutzer deines Produkts.

Man sollte davon ausgehen, dass früher oder später Fehler passieren. Deshalb empfiehlt es sich, darauf hinzuarbeiten, diese Fehler schnell zu erkennen, noch schneller zu beheben und in einer Retrospektive daraus zu lernen.

Das Zauberwort lautet hier: Continuous Improvement. Nur wenn du aus diesen Fehlern lernst, kannst du deine Prozesse und dein Vorgehen verbessern.

## CALMS – Measurement

Nachdem du drei Teile des CALMS-Frameworks verinnerlicht hast und anwendest, ist es Zeit für den nächsten Schritt: Sammle alle relevanten Daten.

Ohne Daten wird es dir kaum möglich sein, mögliche Fehler, Probleme oder Blockaden zu erkennen.

Zum Glück gibt es eine Reihe von Tools und Technologien, mit denen du die Leistung deiner Teams oder Prozesse messen kannst.

Daten wie: Wie oft deine Nutzer dein Produkt verwenden oder wie oft kritische Systemfehler auftreten. Das ist aber noch nicht alles. Du kannst fast jede beliebige Frage stellen und daraus wertvolle Daten gewinnen. Um sicherzustellen, dass sich die Leistung laufend überwachen lässt, bettest du die Datenerhebung am besten vom ersten Tag an in deine Automatisierungspipeline ein.

Damit du eine erste Vorstellung davon bekommst, welche Daten du erheben kannst, hier einige Beispiele.

### Fragen zur Datenerhebung:

1. Wie lange dauert es von der Entwicklung bis zum Deployment?
2. Wie oft treten Bugs oder Fehler in der Software auf?
3. Wie hoch ist die MTTR (Mean Time to Recovery) bei kritischen Systemfehlern?
4. Wie viele aktive Nutzer verwenden das System?
5. Wie viele Nutzer melden Bugs oder Fehler?
6. Wie oft fällt das System aus?
7. Wie oft werden Updates usw. veröffentlicht?

Letztlich gilt: Je mehr belastbare Daten du sammelst, desto leichter fällt es dir und deinem Team, besser zu werden. Neben den Fragen oben kannst du auch die Zufriedenheit deiner Nutzer ermitteln. Dabei helfen dir SLAs (Service Level Agreements).

**Profi-Tipp:**

Geh regelmäßig auf deine Nutzer zu und frag aktiv nach Problemen und Verbesserungswünschen. Sie helfen dir, deine Produkt-Roadmap weiter zu planen und Aufgaben zu priorisieren.

### Beispiel für Produktverbesserung und Datenerhebung:

Immer mehr Nutzer meiden deine Software und kündigen ihr Monatsabo oder ihre Premium-Version. Die Churn Rate steigt und steigt. Dann stellst du dir die Frage: „Aus welchem Grund verlieren wir Nutzer?“ Fehlen Features? Gibt es zu viele Bugs? Zu viele [technische Schulden](https://www.xalt.de/en/technical-debt-in-the-agile-software-development/)? Ermittle also zuerst den genauen Grund. Und leite dann die nötigen Schritte ein.

## CALMS – Sharing

Der Austausch von Informationen ist eng mit dem Culture-Teil des CALMS-Frameworks verknüpft. Im DevOps-Kontext bedeutet Sharing aber auch eine Kultur der Offenheit und des Vertrauens. Vor allem geht es darum, alle Informationen und Best Practices zu teilen und allen Beteiligten zugänglich zu machen. Das führt dann auch zum nachhaltigen Abbau von Silos in deinem Unternehmen.

Mehr über [Wissensmanagement im Unternehmen](https://www.xalt.de/en/webinar-knowledge-management-with-confluence-en/) erfährst du in unserem Webinar.

Der Austausch von Kultur und Informationen ist einer der wichtigsten Teile der gesamten DevOps-Methodik und bildet das Fundament für strukturellen Wandel in deiner Organisation. Silos zwischen Abteilungen und fehlende Informationen für die Beteiligten führen letztlich zu Frust und weiterer Zersplitterung im Unternehmen. Im schlimmsten Fall wirkt sich das sogar negativ auf die Unternehmensziele aus.

### Ein paar harte Fakten zu DevOps und warum moderne IT-Organisationen darauf schwören

- 60 % der Entwickler veröffentlichen ihren Code dank DevOps doppelt so schnell wie zuvor – ein Anstieg um 25 % gegenüber 2021.
- 72 % der Sicherheitsfachleute bewerteten die Sicherheitsmaßnahmen ihres Unternehmens als „gut“ oder „stark“ – ein Anstieg um 13 % gegenüber 2021.
- 56 % der Mitglieder von Ops-Teams gaben an, „vollständig“ oder größtenteils automatisiert zu sein – ein Anstieg um 10 % gegenüber 2021.
- Fast 25 % der Befragten gaben an, ihre Tests vollständig automatisiert zu haben – ein Anstieg um 13 % gegenüber 2021.
- 75 % der Teams nutzen KI/ML oder Bots für Tests und Code-Reviews oder planen dies – ein Anstieg um 41 % gegenüber 2021.

Quelle: [GitLab DevOps Report 2021](https://about.gitlab.com/developer-survey/)

Aktuelle Daten aus dem DevOps-Report 2023 findest du hier: [DORA State of DevOps](https://cloud.google.com/devops/state-of-devops).

Du willst mehr über DevOps erfahren, deine DevOps-Aktivitäten auf das nächste Level heben oder noch mehr automatisieren? Dann melde dich bei uns und erfahre, wie wir dein Unternehmen auf dem Weg zu einer wirklich cloudbasierten DevOps-Kultur unterstützen können.

---

*Diese Fassung ist für KI-Agenten. Jede Seite dieser Website gibt es als Markdown: `index.md` an den Pfad hängen. Übersicht aller Seiten: [llms.txt](https://container8.io/llms.txt)*
