Agiliät und Continuous Delivery
()
About this ebook
Namen Continuous Delivery zusammengefasst werden. Continuous Delivery beginnt dort, wo Continuous Integration endet. Das erste Kapitel erläutert zunächst die Parallelen in
der Entstehung von CI und CD und beschreibt, inwieweit CD als mögliche Weiterführung von CI gesehen werden kann. Im zweiten Kapitel folgt die Betrachtung
von Techniken, die es ermöglichen, eine Softwarearchitektur so aufzubauen, dass sie das Versprechen von CD Realität werden lässt. Das dritte Kapitel
beschäftigt sich letztlich mit CD in der Praxis und beleuchtet die Vor- und Nachteile der auf Continuous Delivery beruhenden architektonischen Entscheidungen.
Related to Agiliät und Continuous Delivery
Titles in the series (100)
HTML5 Security Rating: 0 out of 5 stars0 ratingsHTML5 für Mobile Web Rating: 0 out of 5 stars0 ratingsSkalierbare Softwaresysteme: Design, Betrieb und Optimierungspotenziale Rating: 0 out of 5 stars0 ratingsGeolocation mit PHP: Foursquare-API, Google Places & Qype Rating: 0 out of 5 stars0 ratingsSoftwareentwicklungsprozess: Von der ersten Idee bis zur Installation Rating: 0 out of 5 stars0 ratingsSharePoint-Entwicklung für Einsteiger Rating: 0 out of 5 stars0 ratingsNutzeraspekte in Suchmaschinen: Komponenten für eine gelungene Usability-Gestaltung Rating: 0 out of 5 stars0 ratingsEinstieg in Google Go Rating: 0 out of 5 stars0 ratingsIT Wissensmanagement: Theorie und Praxis Rating: 0 out of 5 stars0 ratingsAlgorithmen: Grundlagen und Implementierung Rating: 0 out of 5 stars0 ratingsQualitätssicherung mit JavaScript und PHP Rating: 0 out of 5 stars0 ratingsBig Data: Technologiegrundlagen Rating: 0 out of 5 stars0 ratingsErfolgreiche Spieleentwicklung: OpenGL, OpenAL und KI Rating: 0 out of 5 stars0 ratingsNFC: Near Field Communication für Android-Entwickler Rating: 5 out of 5 stars5/5Java EE Security Rating: 0 out of 5 stars0 ratingsJavaScript für Eclipse-Entwickler: Orion, RAP und GWT Rating: 0 out of 5 stars0 ratingsAmazon Web Services für .NET Entwickler Rating: 0 out of 5 stars0 ratingsServiceorientierte Architektur: Anforderungen, Konzeption und Praxiserfahrungen Rating: 0 out of 5 stars0 ratingsErfolgreiche Spieleentwicklung: OpenCL Rating: 0 out of 5 stars0 ratingsZend Framework 2: Für Einsteiger und Umsteiger Rating: 0 out of 5 stars0 ratingsTFS 2012 Versionskontrolle: Grundlagen, Check-In Policies und Branch-Modelle Rating: 0 out of 5 stars0 ratingsUX Design für Tablet-Websites: Ein Überblick Rating: 0 out of 5 stars0 ratingsTFS 2012 Anforderungsmanagement: Work Items und Prozessvorlagen Rating: 0 out of 5 stars0 ratingsJava 7: Fork-Join-Framework und Phaser Rating: 0 out of 5 stars0 ratingsNintex Workflow: Konzepte und Strategien für leistungsfähige SharePoint-Workflows Rating: 0 out of 5 stars0 ratingsSpring: Vier Perspektiven auf Framework und Ökosystem Rating: 0 out of 5 stars0 ratingsF#: Ein praktischer Einstieg Rating: 0 out of 5 stars0 ratingsBig Data: Executive Briefing Rating: 0 out of 5 stars0 ratingsC++: Kurzportträt einer zeitlosen Sprache Rating: 0 out of 5 stars0 ratingsQualität in IT-Architekturen: Management Rating: 0 out of 5 stars0 ratings
Related ebooks
SharePoint Kompendium - Bd. 13 Rating: 0 out of 5 stars0 ratingsDevOps-Leadership - Schritte zur Einführung und Umsetzung von DevOps: Erfolgreiche Transformation vom Silo zur Wertschöpfungskette Rating: 0 out of 5 stars0 ratingsVon Monolithen und Microservices: Funktionierende Microservices-Architekturen erstellen Rating: 0 out of 5 stars0 ratingsAzure und IoT Rating: 0 out of 5 stars0 ratingsBessere Softwareentwicklung mit DevOps Rating: 0 out of 5 stars0 ratingsAgile Softwareentwicklung: Ein Leitfaden für Manager Rating: 0 out of 5 stars0 ratingsGlossar Agilität: kurz - knapp - klar Rating: 0 out of 5 stars0 ratingsModerne Datenzugriffslösungen mit Entity Framework 6 Rating: 0 out of 5 stars0 ratingsTechnische Schulden: Identifizierung, Dokumentation und Management Rating: 0 out of 5 stars0 ratingsDevOps - Erfolgreich Entwicklung und IT-Betrieb verbinden: Grundlagen und Werkzeuge für eine erfolgreiche DevOps-Implementierung Rating: 0 out of 5 stars0 ratingsMicroservices: Der Hype im Realitätscheck Rating: 0 out of 5 stars0 ratingsBPM in der Praxis Rating: 0 out of 5 stars0 ratingsScrum: Schnelleinstieg Rating: 0 out of 5 stars0 ratingsSharePoint Kompendium - Bd. 16 Rating: 0 out of 5 stars0 ratingsModellbasiertes Requirements Engineering: Von der Anforderung zum ausführbaren Testfall Rating: 0 out of 5 stars0 ratingsBPMS: Einführung in Business Process Management-Systeme Rating: 0 out of 5 stars0 ratingsSQL Server: Performanceprobleme analysieren und beheben Rating: 0 out of 5 stars0 ratingsAgiles Projektmanagement: Scrum für Einsteiger Rating: 0 out of 5 stars0 ratingsKeine Angst vor Industrie 4.0: Digitalisierung als Chance für humane Arbeit Rating: 0 out of 5 stars0 ratingsCloud Computing Grundlagen: Technisch / rechtlich / wirtschaftlich und architekturell Rating: 0 out of 5 stars0 ratingsErfolgreich Lastenhefte schreiben: Eine Schritt-für-Schritt-Anleitung für den Mittelstand Rating: 0 out of 5 stars0 ratingsErfolgreich mit dem agilen Spotify Framework: Squads, Tribes und Chapters - der nächste Schritt nach Scrum und Kanban? Rating: 0 out of 5 stars0 ratingsScrum-Training: Der Praxisleitfaden für Agile Coaches Rating: 0 out of 5 stars0 ratingsFinanzmarkt: 360 Grundbegriffe kurz erklärt Rating: 0 out of 5 stars0 ratingsRollen & Verantwortlichkeiten in der Produktion: Produktionsmanagement für Führungskräfte Rating: 0 out of 5 stars0 ratingsAgile Moderation: Ob und wie sich die Ideen der agilen Produktentwicklung auf die Moderation von Gruppen und Teams übertragen lassen Rating: 0 out of 5 stars0 ratingsWelchen Wert Agile Retrospektiven liefern Rating: 0 out of 5 stars0 ratings
Software Development & Engineering For You
3D-Drucken für Einsteiger: Ohne Frust 3D-Drucker selbst nutzen Rating: 0 out of 5 stars0 ratingsAgiles Coaching als Erfolgsfaktor: Grundlagen des Coachings, um Agile Teams erfolgreich zu managen Rating: 0 out of 5 stars0 ratingsKanban für Anfänger: Grundlegendes über den Einsatz von Kanban in der Industrie und der Softwareentwicklung Rating: 0 out of 5 stars0 ratingsWeniger schlecht Projekte managen: Ohne Krise zum Projekterfolg Rating: 0 out of 5 stars0 ratingsAgiles Projektmanagement: Scrum für Einsteiger Rating: 0 out of 5 stars0 ratingsSketchnotes in der IT: Abstrakte Themen mit Leichtigkeit visualisieren Rating: 0 out of 5 stars0 ratingsPrinzipien des Softwaredesigns: Entwurfsstrategien für komplexe Systeme Rating: 0 out of 5 stars0 ratingsLean Production - Grundlagen: Das Prinzip der schlanken Produktion verstehen und in der Praxis anwenden. Schlank zur Wertschöpfung! Rating: 0 out of 5 stars0 ratingsProgrammieren lernen mit Python 3: Schnelleinstieg für Beginner Rating: 0 out of 5 stars0 ratingsDas große Python3 Workbook: Mit vielen Beispielen und Übungen - Programmieren leicht gemacht! Rating: 4 out of 5 stars4/5Agiles Requirements Engineering und Testen Rating: 0 out of 5 stars0 ratingsProjekt Unicorn: Der Roman. Über Entwickler, Digital Disruption und das Überleben im Datenzeitalter Rating: 0 out of 5 stars0 ratingsProjektmanagement für Anfänger: Grundlagen, -begriffe und Tools Rating: 0 out of 5 stars0 ratingsDesign Thinking für Anfänger: Innovation als Faktor für unternehmerischen Erfolg Rating: 0 out of 5 stars0 ratingsKOMA-Script: Eine Sammlung von Klassen und Paketen für LaTeX 2e Rating: 0 out of 5 stars0 ratingsModellbasiertes Requirements Engineering: Von der Anforderung zum ausführbaren Testfall Rating: 0 out of 5 stars0 ratingsDigital Painting Workbook Rating: 0 out of 5 stars0 ratingsBaukunst für Softwarearchitekten: Was Software mit Architektur zu tun hat Rating: 0 out of 5 stars0 ratingsEinfach Python: Gleich richtig programmieren lernen Rating: 0 out of 5 stars0 ratingsBessere Softwareentwicklung mit DevOps Rating: 0 out of 5 stars0 ratingsLean Management für Einsteiger: Erfolgsfaktoren für Lean Management – Lean Leadership & Co. als langfristige Erfolgsgaranten Rating: 0 out of 5 stars0 ratingsKompaktes Managementwissen: Die Grunstruktur agiler Prozesse Rating: 0 out of 5 stars0 ratingsUML @ Classroom: Eine Einführung in die objektorientierte Modellierung Rating: 0 out of 5 stars0 ratingsGrundlagen und Methoden der Wirtschaftsinformatik: Eine anwendungsorientierte Einführung Rating: 0 out of 5 stars0 ratingsEinfach Java: Gleich richtig programmieren lernen Rating: 0 out of 5 stars0 ratingsKnigge für Softwarearchitekten. Reloaded Rating: 0 out of 5 stars0 ratingsAgiles Produktmanagement mit Scrum: Erfolgreich als Product Owner arbeiten Rating: 3 out of 5 stars3/5Change Management für Anfänger: Veränderungsprozesse Verstehen und Aktiv Gestalten Rating: 1 out of 5 stars1/5
Reviews for Agiliät und Continuous Delivery
0 ratings0 reviews
Book preview
Agiliät und Continuous Delivery - Steffen Schluff
Steffen Schluff, Axel Fontaine,
René Lengwinat, Michael Fait, Marc Hofer
Agilität und Continuous Delivery
ISBN: 978-3-86802-490-6
© 2013 entwickler.press
Ein Imprint der Software & Support Media GmbH
1 Continuous Delivery
Entstehung, aktueller Stand und Ausblick
Das Thema Build Management zusammen mit den etablierten Konzepten rund um Continuous Integration wurde unlängst um neue Ideen ergänzt, die unter dem Namen Continuous Delivery zusammengefasst werden.
Continuous Delivery (CD) wird dabei häufig als Weiterentwicklung von Continuous Integration (CI) bezeichnet, wobei insbesondere die Idee einer Deployment Pipeline dabei helfen soll, den entscheidenden Schritt von CI zu CD zu machen.
Das folgende Kapitel erläutert die Parallelen in der Entstehung von CI und CD, beschreibt, inwieweit CD als mögliche Weiterführung von CI gesehen werden kann und zeigt abschließend, welche Tools zurzeit verfügbar sind, um diese neuen Ideen umsetzbar zu machen.
Ausgangspunkt Continuous Integration
Eines der ältesten Probleme in der Softwareentwicklung ist die Tatsache, dass bei der Zusammenarbeit mehrerer Entwickler unvermeidbar so genannte Integrationsfehler entstehen. Je später diese Fehler entdeckt werden, umso aufwendiger und damit teurer ist deren Beseitigung. Obwohl über dieses Thema schon zuvor ausführlich publiziert worden war [1], ist es hauptsächlich Martin Fowlers Onlineartikel „Continuous Integration" [2] aus dem Jahre 2000, der den bis dato gültigen De-facto-Standard in diesem Bereich darstellt.
Es waren vor allem die folgenden drei Faktoren, die rückblickend für den nachhaltigen Erfolg von Fowlers Ansatz verantwortlich sind:
Continuous Integration ist ein sehr eingängiger Begriff, der nicht nur den technischen Sachverhalt gut zusammenfasst sondern auch als „Buzzword" taugt. Letzteres ist vor allem dann bedeutsam, wenn um Mittel und Ressourcen geworben wird.
Fowler benennt detailliert konkrete „Key Practices", die als Orientierungshilfe beim Einsatz von CI dienen, wie zum Beispiel „Automate the Build oder „Make Your Build Self-Testing
. Somit existiert eine Referenz anhand derer man zeigen kann, dass man tatsächlich CI verwendet und sich nicht nur mit einem Modewort schmückt.
Begleitend zu dem Artikel waren einsetzbare Tools erhältlich, sodass die dargestellten Konzepte auch sofort in der Praxis angewendet werden konnten. Genauer gesagt hatte die Firma ThoughtWorks zu dem damaligen Zeitpunkt den Quellcode von CruiseControl [3], einem frei verfügbaren Open-Source-CI-Server, bereitgestellt.
Abbildung 1.1 zeigt den schematischen Aufbau eines typischen CI-Systems, bestehend aus dem Server selbst sowie weiteren Bestandteilen.
Abbildung 1.1: Schematischer Aufbau eines CI-Systems
Der abgebildete Kreislauf startet, wenn das Entwicklerteam Änderungen an einem Projekt durchführt und diese an das Version Control System (VCS) übergibt. Der CI-Server, der in bestimmten Zeitabständen das VCS prüft, stößt im Falle einer Änderung einen so genannten CI Build an. Hierbei wird mittels eines Build-Tools wie Maven oder Ant der aktuelle Projektstand kompiliert und üblicherweise auch automatisiert getestet. Abschließend wird der Build durch den CI-Server als erfolgreich oder fehlgeschlagen klassifiziert und das Entwicklerteam entsprechend