Continuous Delivery versetzt Unternehmen in die Lage, schneller bessere Produkte anzubieten, indem es ihnen erlaubt, Software zu jedem Zeitpunkt an die Produktion weitergeben zu können. Die Methodik schafft eine Entwicklungs-Pipeline, in der die Releasezyklen von Produkten und Applikationen durch frühzeitiges Feedback, automatisierte Build- und Testprozesse sowie inkrementelle Deployments deutlich beschleunigt werden. Viele Unternehmen bauen bereits auf diesen Wettbewerbsvorteil, der es ihnen ermöglicht, die Zeit bis zur Marktreife und -einführung ihrer Produkte zu verkürzen, ohne dabei Qualitätseinbußen in Kauf nehmen zu müssen.
"Unternehmen können es sich nicht länger leisten, erst am Ende eines langen Entwicklungs- und Releasezyklus herauszufinden, ob sie den Anforderungen des Marktes überhaupt noch entsprechen", betont Christopher Seiwald, Gründer und CEO bei Perforce Software. "Viele unserer Kunden haben diese grundlegende Veränderung im Markt frühzeitig erkannt und für die Versionierung und Sicherstellung eines einheitlichen Referenzbestands all ihrer Assets auf Perforce gesetzt - denn diese beiden Komponenten sind die Grundvoraussetzung für die Anwendung von Continuous Delivery in der Praxis."
Die Best Practices für Continuous Delivery in Kürze:
1. Jede Änderung protokollieren: Die Aufzeichnung einer jeden Änderung, eines jeden Ereignisses und Vorgangs ist in Situationen von großer Wichtigkeit, in denen ein Rollback auf eine Vorversion erforderlich. Änderungen an der Versionshistorie sollten verhindert werden, besonders wenn Compliance und Branchenvorgaben strenge Dokumentationspflichten auferlegen.
2. Über den Quellcode hinausdenken: Continuous Delivery konzertiert sich nicht nur auf Softwarecode. Jedes Element eines Produkts muss von der Entwicklung hin bis zur Bereitstellung konsistent versioniert werden. Dazu gehören auch Artwork und andere Binärdateien, Chip-Architekturen, CAD-Designs, Dokumentationen, Konfigurationsskripte etc.
3. Alles an einem Ort aufbewahren: Anstelle von abgeschotteten Silos mit Code und Assets sowie projektspezifischen Speicherorten sollte ein einziger, konsistenter Referenzbestand an Informationen für die gesamte Produktionsumgebung sichergestellt sein. Denn wenn Assets und Entwicklungsprodukte über mehrere Speicherorte verteilt sind, besteht das Risiko, dass sich dadurch neue Fehler einschleichen und Auslieferungstermine nicht eingehalten werden können. Ein konsolidiertes Repository kann alle Assets eines Unternehmens beinhalten und dabei praktisch beliebig skaliert werden.
4. Automatisieren, automatisieren, automatisieren: In einer hochgradig automatisierten Umgebung können Codeänderungen fast augenblicklich auf ihre Integrationsfähigkeit in das Delivery Package hin überprüft werden. Änderungen, die Fehler produzieren, können dann sofort vom Entwicklungsteam korrigiert werden, sodass ein hohes Niveau an Effizienz, Vorhersehbarkeit und Wiederholbarkeit sichergestellt ist - Schlüsseleigenschaften eines erfolgreichen Continuous-Delivery-Ansatzes.
5. Proaktive Zusammenarbeit über den gesamten Lebenszyklus hinweg: Alle Prozessbeteiligten benötigen Transparenz sowie Informationen darüber, was entwickelt und veröffentlicht wird. Kollegen sollten an Codeprüfungen teilhaben und gemeinsam die Messlatte für Qualität höher zu legen. Eine unabhängige Studie vom Januar 2014 zeigt, dass 96 Prozent des IT-Fachpersonals ihre Kollaborationsplattform als wichtig für Continuous Delivery ansehen.
Der vollständige Bericht zu den Best Practices, "Continuous Delivery: Five Habits of Highly Successful Practitioners", lässt sich auf http://info.perforce.com/... herunterladen.
Der Bericht "Continuous Delivery in Practice" steht unter http://info.perforce.com/... zum Download zur Verfügung.