Continuous Delivery @ FriendScout24 | Webinale 2012

767
-1

Published on

Der Vortrag von der Webinale 2012 geht auf Aspekte des Continuous Deliver ein:
1) Business Reasoning: Was ist die Motivation hinter Continuous Delivery? Was bedeutet LEAN Product Development?
2) LEAN applied: Wie bekommt man LEAN in die Organisation? Wer ist dadurch betroffen?
3) Build-Measure-Learn: CD als "Build"-Tool
4) CD @ FRS24
a) Maßnahmen und Impact auf unsere Java-Plattform
b) Maßnahmen und Impact bei unseren RoR-Plattformen
5) Lessons Learned

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
767
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Continuous Delivery @ FriendScout24 | Webinale 2012

  1. 1. Continuous Delivery „Warum und wie etablierte Technology- Stacks immer schneller werden müssen!“ Michael Maretzke Vice President Technology @ FriendScout24
  2. 2. Michael Maretzke FriendScout24 Vice President Technology michael.maretzke@friendscout24.de twitter: @mmaretzke
  3. 3. Lebenspartner InternationalInternational Noi ti innamoriamo! Social DatingCasual Dating Lebenspartner Online Dating Revival 2012Start 2011Start 2011Seit 2000
  4. 4. Product Manager Product Owner UX Designer SCRUM KANBAN AGILE Lead Engineer SW Engineer SW Engineer SW Engineer SW Engineer QA Manager Scrum Master SCRUM KANBAN
  5. 5. Kerngeschäft Bewährtes Businessmodell 8 Jahre erprobte Architektur Wachstumsfelder Neue Businessmodelle Leading Edge-Technolgies
  6. 6. WarumWarum Continuous Delivery?
  7. 7. Jez Humble, David Farley: „Continuous Delivery“ Addison-Wesley ISBN 9780321601919 Seite 17
  8. 8. Jez Humble, David Farley: „Continuous Delivery“ Addison-Wesley ISBN 9780321601919 Seite 17 Automate almost everything!
  9. 9. LEAN Product Development Entrepreneurship is Management Entrepreneurs are Everywhere Validated Learning Build-Measure-Learn Innovation Accounting
  10. 10. Warum LEAN Product Development? Build MeasureLearn
  11. 11. Continuous Delivery @ FriendScout24 == Continuous Live DeploymentContinuous Live Deployment Ziel 2012 Releases mit 2 Stunden Release Delivery Time
  12. 12. Low HangingHanging Fruits
  13. 13. BIG BLOCKS
  14. 14. Challenges Dating Plattform – Releases benötigen Restart – Abhängigkeiten zwischen Backend und– Abhängigkeiten zwischen Backend und Frontend – Viele, viele Artefakte und Abhängigkeiten – Nicht alle relevanten Elemente sind redundant ausgelegt – Sehr großer Aufwand!
  15. 15. Challenges Secret – Junge Plattform mit wenig „Maintenance“-Schulden„Maintenance“-Schulden – Dennoch Umbaumaßnahmen erforderlich
  16. 16. Continuous Delivery – Wie? @FRS24 Brain Storming Assessment mit externen Beratern • SCRUM • 3 Wochen Release Cycle Beratern 1) … 2) … 3) … 4) … 5) … 6) … 7) … 8) … 9) … 10) … • 3 Wochen Release Cycle • Dedizierte 2 Tage QA-Zeit • Kaum Unit-Tests • Downtime pro Release ca. 5 min • 350.000 LOC • Viele Abhängigkeiten zwischen Modulen Oktober 2011
  17. 17. Continuous Delivery – Wie? 1) … 2) … 3) … 4) … 5) … 6) … 7) … 8) … 9) … 10) … • 2 Wochen Release Cycle Setup CLD- Team 10) … 1) Optimierung der UAT-Läufe 2) Überarbeitung der Build- Pipeline 3) Optimierung des Session- Handlings 4) Stärkerer Fokus auf Unit-Tests 5) Code aufräumen November/Dezember 2011
  18. 18. Continuous Delivery – Wie? CLD-Team 1) … 2) … 3) … 4) … 5) … 6) … 7) … 8) … 9) … 10) … • Kanban • 2 Daily Release Cycle • Dedizierte 5 Stunden QA-Zeit Externe 10) … • Dedizierte 5 Stunden QA-Zeit • Downtime pro Release ca. 5 min 1) Überarbeitung der Build- Pipeline 2) Optimierung des Session- Handlings März 2012 Externe Berater
  19. 19. Continuous Delivery – Wie? CLD-Team 1) … 2) … 3) … 4) … 5) … 6) … 7) … 8) … 9) … 10) … • Kanban • Daily Release Cycle • Dedizierte 3 Stunden QA-Zeit Externe 10) … • Dedizierte 3 Stunden QA-Zeit • Downtime pro Release ca. 5 min 1) Aufbrechen der Abhängigkeiten im Back-End 2) Back-End Renovierungskonzept Juni 2012 Externe Berater
  20. 20. Release Delivery Time
  21. 21. Zeitdauer UAT-Läufe
  22. 22. Unit Test Coverage
  23. 23. Build-Pipeline
  24. 24. Next? 1) … 2) … 3) … 4) … 5) … 6) … 7) … 8) … 9) … 10) … • Umbau Architektur • Aufbrechen Monolith • Isolierung von Services im Backend • Virtualisierung• Virtualisierung • Configuration Management • Konfigurationen • Umgebungen • Prozesse optimieren • Definition of Done / Ready • Builds brechen
  25. 25. • CI Jenkins • Build-Pipeline Jenkins • Repository SVN GIT • Build-Tools ANT, MAVEN, rake, scripts • Agile tool JIRA+GreenhopperJIRA+Greenhopper • Monitoring Nagios, Gomez • Code Watch Sonar
  26. 26. Lessons? Learned! • How do we do this?
  27. 27. Q&A Bilder …Bilder … • http://www.flickr.com/photos/rudiriet/109718350/ • http://www.flickr.com/photos/dawnmanser/3532598208/ • http://www.flickr.com/photos/winkelbohrer/5771255419/ • http://www.flickr.com/photos/fischler/6181295838/ • http://www.flickr.com/photos/baklava/5086093546/ • http://www.flickr.com/photos/evilerin/3417479220/ • http://www.flickr.com/photos/intellicaviar/6249849679/ • Selbst ☺

×