Continous Deployment - Schneller entwickeln

  • 1,806 views
Uploaded on

See video: http://youtu.be/6e4HnoSs2J8 - Jetzt anfragen: http://seibert.biz/anfrage - Joachim Seibert und Martin Seibert (beide //SEIBERT/MEDIA) stellen das Continous Deployment (Continous Delivery) …

See video: http://youtu.be/6e4HnoSs2J8 - Jetzt anfragen: http://seibert.biz/anfrage - Joachim Seibert und Martin Seibert (beide //SEIBERT/MEDIA) stellen das Continous Deployment (Continous Delivery) bei TwentyFeet und das Konzept für agile Software-Entwicklung im allgemeinen vor. Mehr Info: http://seibert.biz/continousdeployment

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,806
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
5
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. ContinuousDeploymentAm Bespiel TwentyFeet
  • 2. "Write one line of code.Deploy. (...)Once the deployment isdone, write another lineof code. Deploy."Kent Beck
  • 3. Beispiele• Flickr: ca. 60 Deployments pro Woche• GitHub: bis zu 40 Deployments am Tag• Amazon mit einem Deployment alle 11,6 Sekundensiehe: http://www.gi.de/service/informatiklexikon/detailansicht/article/deployment-continuous.html
  • 4. Agenda• Was ist Continuous Deployment?• Welche Vorteile bringt mir das?• Welche Rahmenbedingungen gibt es?• Welche Herausforderungen müssen beachtet werden?• Wie haben wir es bei TwentyFeet umgesetzt?
  • 5. Grundlegendes• Jede geänderte Code-Zeile führt zur Auslieferung einer vollständigen und QS-geprüften neuen Version der Software• Minimierung der manuellen Schritte vom Test bis zur Auslieferung• Deployment bzw. QA-Pipeline: Qualitätsprüfung in mehreren Phasen
  • 6. Vorteile• Continuous Integration: Frühzeitiges Erkennen und Beheben von Fehlern• Verkürzte Release-Zyklen (Time-to-market)• Schneller Weg, um Ideen am Markt zu Testen (Hypothesen im Rahmen des Lean- Startup)• Keine aufwändigen Deployments
  • 7. Rahmenbedingungen• Continuous Integration Server (z.B. Jenkins, Bamboo)• VCS - Versionskontrolle• Deployment Scripts• Umfangreiche und automatisierte Testumgebung• Partielles Rollout (Feature-Flags, Feature Toggle)
  • 8. Testumgebung• Verschiedene Ebene der technischen Tests • Unit-, Integration, Gui-Tests• Deployment erst, wenn alle Tests grün.• manuelles (exploratives) Testen durchaus Teil der Pipeline
  • 9. Herausforderungen• Robuste und flächendeckende Testsuite notwendig• Vereinbarkeit mit Integrationszyklen (Sprints, Zwischenauslieferungen)• Umgang mit Versionskontrolle muss geklärt werden • Versionen, Branches vs. Head-Depoyment+Tags• Manuelle Schritte führen zu Verzögerungen • Unterschiede zwischen Test- und Live-Version wachsen•
  • 10. Continuous Deployment & Lean Startup! "The biggest waste in software is created from waiting for software as it moves from one state to another: Waiting to code, waiting to test, waiting to deploy. Reducing or eliminating these waits leads to faster iterations which is the key to success."Eric Ries
  • 11. TwentyFeet• Auslöser: Lean Startup Methodik• CI-Server Jenkins bereits eingesetzt • Unit-, Integration-, Gui-Tests• Deployment-Scripts bereits teilautomatisiert• Einfaches Bereitstellen von Testumgebungen durch Cloud Hosting
  • 12. The end.