Definition „Kontinuierliche Auslieferung“

Was ist Continuous Delivery?

| Autor / Redakteur: Ilan_r_r / Stephan Augsten

Continuous Delivery zeichnet sich dadurch aus, dass Updates und andere Software-Änderungen in kleinen Paketen ausgeliefert werden.
Continuous Delivery zeichnet sich dadurch aus, dass Updates und andere Software-Änderungen in kleinen Paketen ausgeliefert werden. (© Cybrain - stock.adobe.com)

Der Begriff der Continuous Delivery beschreibt eine Sammlung von Techniken, Prozessen und Werkzeugen, mit deren Hilfe kurze Entwicklungszyklen und die schnelle Auslieferung von Software-Updates oder produktiven Endsystemen ermöglicht werden.

Die Idee hinter dem Begriff Continuous Delivery lässt sich am besten mit einer auf Knopfdruck abrufbaren Software vergleichen. Wenn der Kunde eine aktuelle Version seiner Software wünscht, muss er diese nur anfordern.

Bei klassischen Entwicklungssystemen bzw. -ansätzen war und ist das nicht möglich. Die Software wurde zunächst programmiert, dann getestet und evaluiert und weiteren Überarbeitungen und Prüfungen unterzogen, ehe sie beim Kunden ankam.

Continuous Delivery verändert dieses System und sorgt durch die kontinuierliche Überprüfung aller Änderungen und durch die automatisierten Tests für eine jederzeit lauffähige Software. Der Kunde kann somit tatsächlich in beinahe jedem Entwicklungsstand der Software die aktuelle lauffähige Version anfordern und erhält ein überprüftes und getestetes System ohne Fehler. Somit lassen sich die Prozesse deutlich beschleunigen und verschlanken, was vor allem wirtschaftliche Vorteile mit sich bringt.

Von der Idee bis zum Kunden mittels Continuous Delivery

Der Prozess der Continuous Delivery wurde erstmals im Jahr 2006 in einem Vortrag von Jez Humble, Chris Read und Dan North erwähnt. Humble und David Farley haben das Thema deutlich vertieft in ihrem Buch „Continuous Delivery“ aus dem Jahr 2010. Ziel war und ist es, von der anfänglichen Idee bis zum Endprodukt eine möglichst kurze und variable Kette zu schaffen, die dank andauernder Überprüfungen enorm belastbar ist.

Die in der ursprünglichen Wahrnehmung aufeinanderfolgenden Prozesse von Entwicklung, Qualitätskontrolle und Auslieferung werden nicht mehr als große Einheiten verstanden, sondern als miteinander verzahnte Kleinsteinheiten mit entsprechend geringem Lastaufwand. Somit ist es möglich, Entwicklungsschritte zu beschleunigen und neue Funktionen schneller zu implementieren.

Radikale Automatisierung für umfassende Software-Standards

Das große Problem bei der Software-Entwicklung liegt vor allem in den umfassenden Tests, welche jede Software vor der Freigabe durchlaufen muss. Diese führen, vor allem bei umfangreichen Tests, häufig zu Stopp-Phasen in der Entwicklung und sind somit mit dem Begriff der Continuous Delivery nicht zu vereinbaren.

Auf der anderen Seite können die Tests aber auch nicht ausgelassen werden, da eine Kompatibilität und Lauffähigkeit der entwickelten Software gewährleistet werden muss. Dieses Problem umgeht die Continuous Delivery durch die Implementierung von automatisierten Testsystemen in kleinsten Schritten.

Bei Änderungen oder Erweiterungen an der Software werden diese Anpassungen sofort und automatisiert getestet und überprüft. Somit entsteht eine Kette der Qualitätssicherung, welche bei Fehlern und Schwierigkeiten sofort die Ursache der Fehler aufzeigen kann. Aufgrund der kleinen Entwicklungsschritte zwischen jedem Testverfahren sind die Änderungen einfach zu identifizieren, was die Fehlersuche minimiert.

Automatische und manuelle Tests und Freigabeschritte

Im Rahmen der Continuous Delivery wird versucht sowohl funktionale als auch nicht funktionale Anforderungen an die entwickelte Software mittels unterschiedlicher Testtypen mit einem sehr hohen Grad an Automatisierung zu validieren. Die Tests werden hierbei in mehreren Stufen organisiert und nacheinander für jeden aktuellen Stand der Software durchgeführt.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Aktuelle Beiträge zu diesem Thema

6 Gründe für Spinnaker bei Cloud-Deployments

Continuous Delivery in der Cloud, Teil 2

6 Gründe für Spinnaker bei Cloud-Deployments

Die Open-Source-Software Spinnaker ergänzt gängige CI-, sprich Continuous-Integration-Tools um Komponenten zur Umsetzung von Continuous Delivery (CD) in Multi-Cloud-Umgebungen. Es gibt viele gute Gründe für den Einsatz von Spinnaker, hier die sechs wichtigsten. lesen

Cloud Native Development – grenzenloses Potenzial

Programmieren in der und für die Cloud

Cloud Native Development – grenzenloses Potenzial

Statt die Cloud nur zu nutzen, wird im Zuge des Cloud-native Development direkt für die Nutzung programmiert. Im Endergebnis stehen leistungsstarke und skalierbare Lösungen, die Entwicklern erlauben, sich auf die eigentliche Anwendung zu konzentrieren. lesen

Das Deployment-Tool Spinnaker unter Cloud Foundry

Continuous Delivery in der Cloud, Teil 1

Das Deployment-Tool Spinnaker unter Cloud Foundry

Was nützt es agil zu sein, wenn fertig entwickelte und den Integrationstest erfolgreich absolvierte Code-Änderungen nicht schnell genug ausgeliefert werden können? Das Open-Source-Tool Spinnaker ist dabei eine wertvolle Unterstützung. lesen

Was ist Cloud Native?

Definition „Cloud-native Anwendung“

Was ist Cloud Native?

Cloud Native ist ein agiles und effizientes Konzept, um Software zu entwickeln und Neuerungen möglichst schnell zum Nutzer auszuliefern. Der Betrieb der Anwendung wird direkt über die zugrunde liegende Cloud-Plattform realisiert. lesen

DevQOps – eine Frage der Qualität

Code Quality Testing als DevOps-Stütze

DevQOps – eine Frage der Qualität

DevOps-Strategien etablieren sich immer weiter, haben ihr volle Leistungsfähigkeit jedoch noch nicht zwingend erreicht. Was auf dem Weg zum nächsten Evolutionsschritt fehlt, ist der maximale Qualitätsanspruch. Willkommen im Zeitalter der DevQOps. lesen

CloudBees unterstützt Automotive Grade Linux

Build- und Test-Automatisierung

CloudBees unterstützt Automotive Grade Linux

CloudBees hat sich dem „Automotive Grade Linux“-Projekt der Linux Foundation angeschlossen. Der Software-Delivery-Experte lässt damit seine Build- und Testing-Expertise in die Open-Source-Plattform einfließen. lesen

Projekt Eirini bringt Cloud Foundry Apps in Kubernetes-Cluster

Ankündigungen des Cloud Foundry North American Summit 2019

Projekt Eirini bringt Cloud Foundry Apps in Kubernetes-Cluster

Zum North American Summit 2019 haben zahlreiche Mitglieder der Cloud Foundry Foundation ihre Neuerungen angekündigt, darunter auch Technologievorschauen für das Projekt Eirini. Mit Accenture und HCL wurden zudem erste zertifizierte Systemintegratoren vorgestellt. lesen

Netflix und Google übergeben Spinnaker und Tekton

Continuous Delivery Foundation für Open-Source-Projekte

Netflix und Google übergeben Spinnaker und Tekton

In den Bereich der quelloffenen CI/CD-Projekte, sprich Continuous Integration and Delivery, kommt Bewegung: Projekte wie Spinnaker, Tekton, Jenkins und Jenkins X werden künftig von der neu gegründeten Continuous Delivery Foundation, kurz CDF, vorangetrieben. lesen

Continuous Delivery for Puppet Enterprise 2.3 veröffentlicht

Bessere Docker-Container- und LDAP-Unterstützung

Continuous Delivery for Puppet Enterprise 2.3 veröffentlicht

Schnellere Inbetriebnahme, LDAP-Integration und bessere Docker-Unterstützung: Die neue Version von Continuous Delivery for Puppet Enterprise soll etliche Verbesserungen für den Betrieb in großen Unternehmen bieten. lesen

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 45015879 / Definitionen)