SlideShare uma empresa Scribd logo
1 de 61
Baixar para ler offline
Continuous Delivery in der Praxis
            Sieben Lektionen nach einem Jahr




Juni 2011                                       © 2011 Hypoport AG
Der lange Weg zu      Continuous
                      Delivery
Continuous Delivery




   Start
                             2
Die Reisenden




                3
Die Europace Plattform




                         4
Viel Unbekanntes liegt noch      Continuous
                                 Delivery
vor uns ...




                              We are here

   Start
                                        5
... aber hinter uns liegen schon   Continuous
                                   Delivery
einige Erfahrungen




    Start
                                          6
1   Es ist nur   Continuous
                 Delivery
    Business




We are here




    Start
                        7
Normalerweise
begeistert neue
  Technologie
die Technologen

                  8
Das Business
fragt sich nur
   Warum?


                 9
Continuous Delivery
ist eine Anforderung
     des Business


                       10
Klassische
Versionssprünge




                  11
Time to
Value




          12
Kurze Feedbackloops



                      13
Ursachen von Fehlern
  schneller finden


                       14
Bugfixes schneller
    ausrollen


                    15
2     Ein Produktions System   Continuous
                               Delivery
      ab dem ersten Tag




Business




                 We are here

                                     16
Betrieb kommt oft
  erst am Ende


                    17
Resultat:
 Stress


            18
Deploy am
Tag 1




            19
Aha-Erlebnisse


                        Wartungsseiten
      SSL-Zertifikate


                        Zugriff auf Logs
         Memory Leaks



                                           20
3     Disziplin                  Continuous
                                 Delivery
      ist alles




            We are here


Business




              Produktivssystem
                                       21
Definition of
Done




               22
Automatisches Rollout




                        23
Alles auf
Produktion testen?


                     24
Selenium 2 /
Webdriver


Integration Tests


Unit Tests




               25
Nie die Pipeline
   umgehen!


                   26
Make it Visible!




                   27
Der rote Build
  am Abend


                 28
4     Pipeline bauen             Continuous
                                 Delivery
      ist einfach


              We are here




                Disziplin
Business




      Start   Produktivssystem
                                       29
Continous
Integration
Gestern




              Manuelles Deployment




                                     30
Vorhandene
Systeme
ausreichend




              31
Automatisierung
des Deployments




                  32
Deliverables nur
einmal bauen




                   33
Konfiguration und
Deliverable separat




                      34
35
5     Datenbanken                               Continuous
                                                Delivery
      ändern sich

                                  We are here

                       Pipeline


                Disziplin
Business




      Start   Produktivssystem
                                                      36
Feste Struktur




                 37
Änderungsoptionen



        SQL-Skripte!




                       38
Oder ganz ohne
   Schema


                 39
Dokument statt
   Tabelle


                 40
41
Migration erst
 bei Zugriff


                 42
6     Clients und ihre                         Continuous
                                               Delivery
      Versionen



                       Pipeline
                                  Daten
                Disziplin
Business



                                      We are here
      Start   Produktivssystem
                                                     43
Klassische Web-Applikation




                             44
Rich Internet Application




                            45
Wozu Versionen?



                  46
Der Client merkt
die Änderung nicht


                     47
Polling und sofortiger Reload



        t1

        t2

        t3



                                48
Server ist rückwärtskompatibel



        t1

        t2




                                 49
Mehrere Versionen parallel



        t1

        t2




                             50
Ein Tomcat
mehrere Versionen


                    51
Bookmarkability




                  52
7     Schnittstellen sind                               Continuous
                                                        Delivery
      nicht einfach



                       Pipeline
                                            Daten
                Disziplin
Business                          Clients



                                                    We are here
      Start   Produktivssystem
                                                              53
Komplexe Systeme
können nicht synchron
      releasen


                        54
Optionen
                Schnittstelle nicht
                     ändern



           Client               Service



  Vorwärts-                           Rückwärts-
  kompatibel                          kompatibel

                                                   55
Übergangslösung
Vorabwarnung




                  56
7     Lektionen                                                Continuous
                                                               Delivery
      gelernt



                         Pipeline
                                              Daten
                  Disziplin
Business                            Clients


                                              Schnittstellen

      Start   Produktivssystem
                                                                     57
One more thing



                 58
Nie wieder eine Merge Hell!




                              59
Würden wir es wieder machen?                                Continuous
                                                             Delivery
 JA!

                       Pipeline
                                            Daten
                Disziplin
Business                          Clients
                                                        We are here
                                            Schnittstellen

      Start   Produktivssystem
                                                                   60
http://www.hypoport.de
twitter: @hypoport
http://www.hypoport.de/karriere.html




http://www.joergm.com
twitter: @joergm

                                       61

Mais conteúdo relacionado

Semelhante a Continuous Delivery in der Praxis

Migration von Applikationen in die Cloud
Migration von Applikationen in die CloudMigration von Applikationen in die Cloud
Migration von Applikationen in die CloudAarno Aukia
 
Agile Breakfast - If it hurts do it more often
Agile Breakfast - If it hurts do it more oftenAgile Breakfast - If it hurts do it more often
Agile Breakfast - If it hurts do it more oftenpingworks
 
Softwarequalitätssicherung mit Continuous Integration Tools
Softwarequalitätssicherung mit Continuous Integration ToolsSoftwarequalitätssicherung mit Continuous Integration Tools
Softwarequalitätssicherung mit Continuous Integration ToolsGFU Cyrus AG
 
Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?
Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?
Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?Aarno Aukia
 
TDD mit ABAP Units
TDD mit ABAP UnitsTDD mit ABAP Units
TDD mit ABAP UnitsCadaxo GmbH
 
SAP NetWeaver : Chance und Herausforderung
SAP NetWeaver : Chance und HerausforderungSAP NetWeaver : Chance und Herausforderung
SAP NetWeaver : Chance und HerausforderungGFU Cyrus AG
 
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldInfrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldDaniel Steiger
 
Testfallgenerierung fuer interagierende Services
Testfallgenerierung fuer interagierende ServicesTestfallgenerierung fuer interagierende Services
Testfallgenerierung fuer interagierende ServicesUniversität Rostock
 
Gameduell Glassfish Migration
Gameduell Glassfish MigrationGameduell Glassfish Migration
Gameduell Glassfish Migrationdehms
 
Day CQ 5.3 WCM - Was ist neu
Day CQ 5.3 WCM - Was ist neuDay CQ 5.3 WCM - Was ist neu
Day CQ 5.3 WCM - Was ist neuCédric Hüsler
 
Mit Performance-Modellierung Test- und Betriebskosten senken
Mit Performance-Modellierung Test- und Betriebskosten senkenMit Performance-Modellierung Test- und Betriebskosten senken
Mit Performance-Modellierung Test- und Betriebskosten senkenDynatrace
 
BED-Con - Tools für den täglichen Kampf als Entwickler
BED-Con - Tools für den täglichen Kampf als EntwicklerBED-Con - Tools für den täglichen Kampf als Entwickler
BED-Con - Tools für den täglichen Kampf als EntwicklerPatrick Baumgartner
 
Lean Development = Überdrehter Motor in der Entwicklung?
Lean Development = Überdrehter Motor in der Entwicklung?Lean Development = Überdrehter Motor in der Entwicklung?
Lean Development = Überdrehter Motor in der Entwicklung?Matthias Bohlen
 

Semelhante a Continuous Delivery in der Praxis (17)

Migration von Applikationen in die Cloud
Migration von Applikationen in die CloudMigration von Applikationen in die Cloud
Migration von Applikationen in die Cloud
 
Agile Breakfast - If it hurts do it more often
Agile Breakfast - If it hurts do it more oftenAgile Breakfast - If it hurts do it more often
Agile Breakfast - If it hurts do it more often
 
Digicomp sqlday migration
Digicomp sqlday migrationDigicomp sqlday migration
Digicomp sqlday migration
 
Softwarequalitätssicherung mit Continuous Integration Tools
Softwarequalitätssicherung mit Continuous Integration ToolsSoftwarequalitätssicherung mit Continuous Integration Tools
Softwarequalitätssicherung mit Continuous Integration Tools
 
Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?
Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?
Wir arbeiten in der Cloud – eine Herausforderung für das IT Management?
 
Vortrag linux tag
Vortrag linux tagVortrag linux tag
Vortrag linux tag
 
TDD mit ABAP Units
TDD mit ABAP UnitsTDD mit ABAP Units
TDD mit ABAP Units
 
SAP NetWeaver : Chance und Herausforderung
SAP NetWeaver : Chance und HerausforderungSAP NetWeaver : Chance und Herausforderung
SAP NetWeaver : Chance und Herausforderung
 
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-UmfeldInfrastruktur agil bauen - der DBA im SAFe-Umfeld
Infrastruktur agil bauen - der DBA im SAFe-Umfeld
 
Advanced Continuous Integration
Advanced Continuous IntegrationAdvanced Continuous Integration
Advanced Continuous Integration
 
Testfallgenerierung fuer interagierende Services
Testfallgenerierung fuer interagierende ServicesTestfallgenerierung fuer interagierende Services
Testfallgenerierung fuer interagierende Services
 
Gameduell Glassfish Migration
Gameduell Glassfish MigrationGameduell Glassfish Migration
Gameduell Glassfish Migration
 
Day CQ 5.3 WCM - Was ist neu
Day CQ 5.3 WCM - Was ist neuDay CQ 5.3 WCM - Was ist neu
Day CQ 5.3 WCM - Was ist neu
 
Mit Performance-Modellierung Test- und Betriebskosten senken
Mit Performance-Modellierung Test- und Betriebskosten senkenMit Performance-Modellierung Test- und Betriebskosten senken
Mit Performance-Modellierung Test- und Betriebskosten senken
 
Laurent strauss app dna
Laurent strauss app dnaLaurent strauss app dna
Laurent strauss app dna
 
BED-Con - Tools für den täglichen Kampf als Entwickler
BED-Con - Tools für den täglichen Kampf als EntwicklerBED-Con - Tools für den täglichen Kampf als Entwickler
BED-Con - Tools für den täglichen Kampf als Entwickler
 
Lean Development = Überdrehter Motor in der Entwicklung?
Lean Development = Überdrehter Motor in der Entwicklung?Lean Development = Überdrehter Motor in der Entwicklung?
Lean Development = Überdrehter Motor in der Entwicklung?
 

Mais de Java Usergroup Berlin-Brandenburg

Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)Java Usergroup Berlin-Brandenburg
 
Jbossas7alsplattformmodernerenterprise anwendungen-130604114410-phpapp02
Jbossas7alsplattformmodernerenterprise anwendungen-130604114410-phpapp02Jbossas7alsplattformmodernerenterprise anwendungen-130604114410-phpapp02
Jbossas7alsplattformmodernerenterprise anwendungen-130604114410-phpapp02Java Usergroup Berlin-Brandenburg
 

Mais de Java Usergroup Berlin-Brandenburg (19)

Microbenchmarks - Wer nicht weiß, was er misst misst Mist
Microbenchmarks - Wer nicht weiß, was er misst misst MistMicrobenchmarks - Wer nicht weiß, was er misst misst Mist
Microbenchmarks - Wer nicht weiß, was er misst misst Mist
 
Collections.compare(() -> JDK; Apache; Eclipse, Guava...});
Collections.compare(() -> JDK; Apache; Eclipse, Guava...});Collections.compare(() -> JDK; Apache; Eclipse, Guava...});
Collections.compare(() -> JDK; Apache; Eclipse, Guava...});
 
Built To Last - Nachhaltige Software-Entwicklung
Built To Last - Nachhaltige Software-EntwicklungBuilt To Last - Nachhaltige Software-Entwicklung
Built To Last - Nachhaltige Software-Entwicklung
 
Feature Toggles On Steroids
Feature Toggles On SteroidsFeature Toggles On Steroids
Feature Toggles On Steroids
 
Resilience mit Hystrix
Resilience mit HystrixResilience mit Hystrix
Resilience mit Hystrix
 
Analysis of software systems using jQAssistant and Neo4j
Analysis of software systems using jQAssistant and Neo4jAnalysis of software systems using jQAssistant and Neo4j
Analysis of software systems using jQAssistant and Neo4j
 
Get Back in Control of your SQL
Get Back in Control of your SQLGet Back in Control of your SQL
Get Back in Control of your SQL
 
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
Die fabelhafte Welt Java(Script)-getriebener Enterprise-WebApps (mit Ext JS)
 
Selbstvorstellung Steria Mummert Consulting
Selbstvorstellung Steria Mummert ConsultingSelbstvorstellung Steria Mummert Consulting
Selbstvorstellung Steria Mummert Consulting
 
Graphdatenbanken mit Neo4j
Graphdatenbanken mit Neo4jGraphdatenbanken mit Neo4j
Graphdatenbanken mit Neo4j
 
Jbosseapclustering 130605100557-phpapp02
Jbosseapclustering 130605100557-phpapp02Jbosseapclustering 130605100557-phpapp02
Jbosseapclustering 130605100557-phpapp02
 
Jbossas7alsplattformmodernerenterprise anwendungen-130604114410-phpapp02
Jbossas7alsplattformmodernerenterprise anwendungen-130604114410-phpapp02Jbossas7alsplattformmodernerenterprise anwendungen-130604114410-phpapp02
Jbossas7alsplattformmodernerenterprise anwendungen-130604114410-phpapp02
 
How long can you afford to Stop The World?
How long can you afford to Stop The World?How long can you afford to Stop The World?
How long can you afford to Stop The World?
 
JavaOne Update zur Java Plattform
JavaOne Update zur Java PlattformJavaOne Update zur Java Plattform
JavaOne Update zur Java Plattform
 
Java EE 7 - Overview and Status
Java EE 7  - Overview and StatusJava EE 7  - Overview and Status
Java EE 7 - Overview and Status
 
Restructuring
RestructuringRestructuring
Restructuring
 
Fighting Layout Bugs
Fighting Layout BugsFighting Layout Bugs
Fighting Layout Bugs
 
Die Java Plattform Strategie
Die Java Plattform StrategieDie Java Plattform Strategie
Die Java Plattform Strategie
 
Continuous Delivery
Continuous DeliveryContinuous Delivery
Continuous Delivery
 

Continuous Delivery in der Praxis