© Excellent backgrounds/Shutterstock.com
Continuous Delivery und die Datenbank

Unterschätzte Herausforderungen


Bessere Qualität, schnelles Feedback vom Kunden, ständige Innovation und niedrigere Kosten. Dies sind nur einige der Vorteile, die uns die schöne neue Welt von Continuous Delivery verspricht. Welche Auswirkungen ein solches Vorgehen allerdings auf unsere Datenbanken hat, wird nur allzu oft kurz und elegant übersprungen. Dieser Artikel zeigt verschiedene Techniken im Umgang mit unseren Produktivdaten bei mehreren Releases pro Tag und verschweigt (ausnahmsweise) auch nicht deren Nachteile.

Bei Continuous Delivery wird durch die Verkürzung der Zeitspanne zwischen zwei aufeinanderfolgenden Softwarereleases versucht, möglichst schnell Feedback von den Endnutzern zu bekommen. Dies kann bedeuten, dass mehrmals am Tag eine neue Anwendungsversion in die Produktivumgebung eingespielt wird. Durch dieses Vorgehen können mögliche Kommunikationsprobleme zwischen den Entwicklern und den Kunden frühzeitig erkannt werden. Wir alle kennen die Probleme, die aus unzureichender Kommunikation entstehen können: „Das hatten wir doch so besprochen“ oder „Das ist doch selbstverständlich, dass dieser Teil so funktionieren und so schnell wie möglich fertiggestellt werden muss“ sind Sätze, die wahrscheinlich die meisten Entwickler schon einmal gehört haben.

„Nicht-Techies“ können ihre Wünsche meist am besten anhand der laufenden Software in einem produktiven Umfeld kundtun. Indem wir die Zeit zwischen der ersten Idee eines neuen Features und der lauffähigen Software unter anderem durch Automatisierung minimieren, bekommen wir deutlich schnellere Reaktionszeiten und vermindern dadurch gleichzeitig das Projektrisiko. Mit Continuous Delivery werden wir in die Lage versetzt, sehr schnell Änderungen in der Produktionsumgebung durchzuführen. Dadurch werden auch die Auswirkungen eventueller Kommunikationsprobleme minimiert. Der geänderte Code kann jederzeit nachgebessert oder sogar wieder ganz entfernt werden. Wir müssen nicht mehr auf das nächste Release warten, das in klassischen Releaseprozessen vielleicht erst ein Jahr später anstehen würde.

Technische Herausforderungen

Die gerade beschriebenen Vorteile hören sich zunächst sehr verlockend an. Für die praktische Umsetzung von Continuous Delivery benötigen wir eine automatisierte Build Pipeline, die uns ermöglicht, Änderungen per Knopfdruck automatisch in die Produktionsumgebung zu übernehmen. Bevor wir uns allerdings voller Enthusiasmus an die Umsetzung einer solchen Pipeline machen, sollten wir zuvor noch einen Blick auf die technische...

Exklusives Abo-Special

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang