Preparing	
  for	
  Enterprise	
  Con0nuous	
  Delivery	
  
Andrew	
  Phillips,	
  XebiaLabs	
  
•  VP Products for XebiaLabs
•  Lots of enterprise software development on high-
performance systems
•  Been on both sides...
Our flagship product, Deployit, is a market-leading
Application Release Automation platform.
o  Headquartered in Boston, M...
•  Everybody’s Going CD
•  Lightning CD Recap
•  Enterprise Challenges
•  5 Steps on the Way to CD
•  A CD Maturity Model
...
Using GoToWebinar
Questions?
Submit via the control panel at any time
during the presentation.
“Continuous delivery is a set of patterns and best
practices that can help software teams
dramatically improve the pace an...
Everybody’s Going CD
o  Why?
Everybody’s Going CD
o  Why?
o  It’s fun
Everybody’s Going CD
o  Why?
o  It’s fun
o  It’s cool
Everybody’s Going CD
o  Why?
o  It’s fun
o  It’s cool
o  All the cool kids do it
Everybody’s Going CD
o  Why?
o  It’s fun
o  It’s cool
o  All the cool kids do it
o  It accelerates time to market
Everybody’s Going CD
o  Why?
o  It’s fun
o  It’s cool
o  All the cool kids do it
o  It accelerates time to market
o  All of the above
Everybody...
o  Why?
o  It’s fun
o  It’s cool
o  All the cool kids do it
o  It accelerates time to market
o  All of the above
Everybody...
o  Why?
o  It’s fun
o  It’s cool
o  All the cool kids do it
o  It accelerates time to market
o  All of the above
Everybody...
“Our highest priority is to satisfy the customer through
early and continuous delivery of valuable
software.”
Lightning Re...
“Our highest priority is to satisfy the customer through
early and continuous delivery of valuable
software.”
Lightning Re...
“Our highest priority is to satisfy the customer through
early and continuous delivery of valuable
software.”
Principle #1...
Value of code in repo vs.
Value of code in use by customer
Lightning Recap
Value of code in repo vs.
Value of code in use by customer
Lightning Recap
Value of code in repo vs.
Value of code in use by customer
Lightning Recap
Value of code in repo vs.
Value of code in use by customer
Lightning Recap
Value of code in repo vs.
Value of code in use by customer
Lightning Recap
Enterprise Challenges
o  Large, monolithic applications
o  Low levels of automation
o  Contended environments
o  Release Management requirements...
5 Steps on the Way
5 Steps on the Way
+ =
5 Steps on the Way
o  We move one uniquely identified deliverable
through the pipeline
o  Needs to contain all the items considered part
of t...
o  This might sound self-evident, but…
o  …it’s harder to do than it appears
o  Environment-specific builds?
o  Configurat...
o  Break down your pipeline into tasks
o  For each task, define
o  Owner
o  Input
o  Output
o  Triggers
o  Prerequisites/g...
o  Checklists determine sequence and
parallelization of stages
o  Knowledge/confidence level/quality
measurements are also...
o  In general, smaller tasks = faster runtime
o  Basic upper limit:
throughput ≤ 1 / (duration of longest task)
o  Are you...
o  To run pipeline jobs (= “workers”)
o  To run applications (= “environments”)
4. Scalable Capacity
o  To run pipeline jobs (= “workers”)
o  To run applications (= “environments”)
o  Would like on-demand capacity quickly
o...
o  Automation isn’t a prerequisite for CD…
o  …but it’s pretty much essential
o  Can you reliably execute your manual task...
o  Automation isn’t a prerequisite for CD…
o  …but it’s pretty much essential
o  Can you reliably execute your manual task...
o  Think about
o  Build automation
o  Unit Test automation
o  Deployment automation
o  Integration/Performance/UA Test aut...
o  Pipeline tasks and stages don’t just run and
produce log output…
o  …they also have “side effects”
o  Creating and dest...
o  Don’t want to have to “re-engineer” the state
of your IT landscape based on the progress of
pipeline jobs
o  More commo...
o  Later pipeline stages affect tightly-controlled
environments
o  Release Management requirements must be met
o  Can link...
o  How to automate gates to avoid a manual
bottleneck?
o  How to ensure (automated) quality/security
etc. measurements ful...
o  You (or your boss) don’t just want to feel things
are getting better…
o  …you need to know they are!
8. Improvement Met...
o  Sample metrics:
o  Throughput?
o  Failure rate?
o  Standardization coefficient
o  Mean & stddev of duration per task/st...
Summary
1.  Complete Delivery Artifact
Summary
1.  Complete Delivery Artifact
2.  Pipeline Stage Checklist
Summary
1.  Complete Delivery Artifact
2.  Pipeline Stage Checklist
3.  Manageable Units of Work
Summary
1.  Complete Delivery Artifact
2.  Pipeline Stage Checklist
3.  Manageable Units of Work
4.  Scalable Capacity
Summary
1.  Complete Delivery Artifact
2.  Pipeline Stage Checklist
3.  Manageable Units of Work
4.  Scalable Capacity
5.  Automat...
1.  Complete Delivery Artifact
2.  Pipeline Stage Checklist
3.  Manageable Units of Work
4.  Scalable Capacity
5.  Automat...
1.  Complete Delivery Artifact
2.  Pipeline Stage Checklist
3.  Manageable Units of Work
4.  Scalable Capacity
5.  Automat...
1.  Complete Delivery Artifact
2.  Pipeline Stage Checklist
3.  Manageable Units of Work
4.  Scalable Capacity
5.  Automat...
o  Metrics give indication of progress
o  Define a maturity model based on your business
goals
o  Will often spans more th...
Common Automation Stack
Private / Public Cloud
Environment Provisioning & Configuration
App
1.0
Dev Test 1 Test 2 QA1 QA2 ...
Bonus: Lightning Demo!
Using GoToWebinar
Questions?
Submit via the control panel at any time
during the presentation.
o  Application Release Trends 2013 Survey
o  go.xebialabs.com/Survey2013.htm
o  Dzone Refcard: “Preparing for Continuous D...
Questions?
Submit your questions now. If we don’t get
to yours, we’ll personally respond.
Thank You!
CONTACT DETAILS
o  Andrew Phillips: aphillips at xebialabs dot com
NEXT STEPS
o  More information: www.xebialab...
Upcoming SlideShare
Loading in …5
×

Preparing for Enterprise Continuous Delivery - 5 Critical Steps

1,114 views
1,011 views

Published on

Slides from the July 31st, 2013 webinar "Preparing for Enterprise Continuous Delivery - 5 Critical Steps" by XebiaLabs

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

No Downloads
Views
Total views
1,114
On SlideShare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
0
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Preparing for Enterprise Continuous Delivery - 5 Critical Steps

  1. 1. Preparing  for  Enterprise  Con0nuous  Delivery   Andrew  Phillips,  XebiaLabs  
  2. 2. •  VP Products for XebiaLabs •  Lots of enterprise software development on high- performance systems •  Been on both sides of the “Dev…Ops” fence •  Active open source contributor and committer: jclouds, Akka, Gradle and others •  Cloud, PaaS & JVM language fan (mainly Scala, Clojure) •  Regular meetup, conference etc. presenter A Bit About Me…
  3. 3. Our flagship product, Deployit, is a market-leading Application Release Automation platform. o  Headquartered in Boston, Massachusetts o  Global development and support offices in US, EMEA and APAC Benefits include: o  Reduce development applications costs o  Accelerate application time to market o  Bridge the gap between Development and Operations About XebiaLabs
  4. 4. •  Everybody’s Going CD •  Lightning CD Recap •  Enterprise Challenges •  5 Steps on the Way to CD •  A CD Maturity Model •  Common Automation Stack Agenda
  5. 5. Using GoToWebinar Questions? Submit via the control panel at any time during the presentation.
  6. 6. “Continuous delivery is a set of patterns and best practices that can help software teams dramatically improve the pace and quality of their software delivery.”
  7. 7. Everybody’s Going CD
  8. 8. o  Why? Everybody’s Going CD
  9. 9. o  Why? o  It’s fun Everybody’s Going CD
  10. 10. o  Why? o  It’s fun o  It’s cool Everybody’s Going CD
  11. 11. o  Why? o  It’s fun o  It’s cool o  All the cool kids do it Everybody’s Going CD
  12. 12. o  Why? o  It’s fun o  It’s cool o  All the cool kids do it o  It accelerates time to market Everybody’s Going CD
  13. 13. o  Why? o  It’s fun o  It’s cool o  All the cool kids do it o  It accelerates time to market o  All of the above Everybody’s Going CD
  14. 14. o  Why? o  It’s fun o  It’s cool o  All the cool kids do it o  It accelerates time to market o  All of the above Everybody’s Going CD
  15. 15. o  Why? o  It’s fun o  It’s cool o  All the cool kids do it o  It accelerates time to market o  All of the above Everybody’s Going CD
  16. 16. “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.” Lightning Recap
  17. 17. “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.” Lightning Recap
  18. 18. “Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.” Principle #1 from the Agile Manifesto Lightning Recap
  19. 19. Value of code in repo vs. Value of code in use by customer Lightning Recap
  20. 20. Value of code in repo vs. Value of code in use by customer Lightning Recap
  21. 21. Value of code in repo vs. Value of code in use by customer Lightning Recap
  22. 22. Value of code in repo vs. Value of code in use by customer Lightning Recap
  23. 23. Value of code in repo vs. Value of code in use by customer Lightning Recap
  24. 24. Enterprise Challenges
  25. 25. o  Large, monolithic applications o  Low levels of automation o  Contended environments o  Release Management requirements o  … Enterprise Challenges
  26. 26. 5 Steps on the Way
  27. 27. 5 Steps on the Way
  28. 28. + = 5 Steps on the Way
  29. 29. o  We move one uniquely identified deliverable through the pipeline o  Needs to contain all the items considered part of the delivered version o  Application binaries o  Database changes o  Configuration files o  Server settings o  Dependencies o  … 1. Complete Delivery Artifact
  30. 30. o  This might sound self-evident, but… o  …it’s harder to do than it appears o  Environment-specific builds? o  Configuration settings requested via change tickets? o  Smoke tests present only in the testers’ notes/ heads? 1. Complete Delivery Artifact
  31. 31. o  Break down your pipeline into tasks o  For each task, define o  Owner o  Input o  Output o  Triggers o  Prerequisites/gates o  Success/failure criteria o  Failure handling 2. Pipeline Stage Checklist
  32. 32. o  Checklists determine sequence and parallelization of stages o  Knowledge/confidence level/quality measurements are also output! o  Think about feedback cycles (“if this task fails, how can I learn from that?”) 2. Pipeline Stage Checklist
  33. 33. o  In general, smaller tasks = faster runtime o  Basic upper limit: throughput ≤ 1 / (duration of longest task) o  Are your long-running tasks providing “value for runtime”? 3. Manageable Units of Work
  34. 34. o  To run pipeline jobs (= “workers”) o  To run applications (= “environments”) 4. Scalable Capacity
  35. 35. o  To run pipeline jobs (= “workers”) o  To run applications (= “environments”) o  Would like on-demand capacity quickly o  Investigate cloud-based services 4. Scalable Capacity
  36. 36. o  Automation isn’t a prerequisite for CD… o  …but it’s pretty much essential o  Can you reliably execute your manual task at the required frequency with the desired level of throughput? 5. Automation, Automation, Automation
  37. 37. o  Automation isn’t a prerequisite for CD… o  …but it’s pretty much essential o  Can you reliably execute your manual task at the required frequency with the desired level of throughput? 5. Automation, Automation, Automation
  38. 38. o  Think about o  Build automation o  Unit Test automation o  Deployment automation o  Integration/Performance/UA Test automation o  Automated metrics gathering o  Automated feedback cycles 5. Automation, Automation, Automation
  39. 39. o  Pipeline tasks and stages don’t just run and produce log output… o  …they also have “side effects” o  Creating and destroying on-demand environments o  Updating of versions of applications deployed to (testing, mainly) environments o  Updating the “confidence measure” of the application version being tested o  … 6. “Side Effect” Overview
  40. 40. o  Don’t want to have to “re-engineer” the state of your IT landscape based on the progress of pipeline jobs o  More commonly-used domain model helps present business-relevant information 6. “Side Effect” Overview
  41. 41. o  Later pipeline stages affect tightly-controlled environments o  Release Management requirements must be met o  Can link this to prerequisites/gates for tasks 7. Release Control
  42. 42. o  How to automate gates to avoid a manual bottleneck? o  How to ensure (automated) quality/security etc. measurements fulfill release requirements o  “Fine-tuning the dial between throughput and control” 7. Release Control
  43. 43. o  You (or your boss) don’t just want to feel things are getting better… o  …you need to know they are! 8. Improvement Metrics
  44. 44. o  Sample metrics: o  Throughput? o  Failure rate? o  Standardization coefficient o  Mean & stddev of duration per task/stage? o  Max/min duration per task/stage? o  # of manual tasks? 8. Improvement Metrics
  45. 45. Summary
  46. 46. 1.  Complete Delivery Artifact Summary
  47. 47. 1.  Complete Delivery Artifact 2.  Pipeline Stage Checklist Summary
  48. 48. 1.  Complete Delivery Artifact 2.  Pipeline Stage Checklist 3.  Manageable Units of Work Summary
  49. 49. 1.  Complete Delivery Artifact 2.  Pipeline Stage Checklist 3.  Manageable Units of Work 4.  Scalable Capacity Summary
  50. 50. 1.  Complete Delivery Artifact 2.  Pipeline Stage Checklist 3.  Manageable Units of Work 4.  Scalable Capacity 5.  Automation, Automation, Automation Summary
  51. 51. 1.  Complete Delivery Artifact 2.  Pipeline Stage Checklist 3.  Manageable Units of Work 4.  Scalable Capacity 5.  Automation, Automation, Automation 6.  “Side Effect” Overview Summary
  52. 52. 1.  Complete Delivery Artifact 2.  Pipeline Stage Checklist 3.  Manageable Units of Work 4.  Scalable Capacity 5.  Automation, Automation, Automation 6.  “Side Effect” Overview 7.  Release Control Summary
  53. 53. 1.  Complete Delivery Artifact 2.  Pipeline Stage Checklist 3.  Manageable Units of Work 4.  Scalable Capacity 5.  Automation, Automation, Automation 6.  “Side Effect” Overview 7.  Release Control 8.  Improvement Metrics Summary
  54. 54. o  Metrics give indication of progress o  Define a maturity model based on your business goals o  Will often spans more than “classic” automation: from requirements gathering to runtime application and quality analysis o  Feedback cycles essential to targeted improvements Maturity Model
  55. 55. Common Automation Stack Private / Public Cloud Environment Provisioning & Configuration App 1.0 Dev Test 1 Test 2 QA1 QA2 PROD Build App 2.1 App 2.0 App 1.2 TestDeployit Release
  56. 56. Bonus: Lightning Demo!
  57. 57. Using GoToWebinar Questions? Submit via the control panel at any time during the presentation.
  58. 58. o  Application Release Trends 2013 Survey o  go.xebialabs.com/Survey2013.htm o  Dzone Refcard: “Preparing for Continuous Delivery” o  refcardz.dzone.com/refcardz/preparing-continuous-delivery o  “Best Practice for Continuous Delivery Automation” o  go.xebialabs.com/best-practice-cda.html o  Continuous Delivery Automation o  www.xebialabs.com/continuous-delivery More Info
  59. 59. Questions? Submit your questions now. If we don’t get to yours, we’ll personally respond.
  60. 60. Thank You! CONTACT DETAILS o  Andrew Phillips: aphillips at xebialabs dot com NEXT STEPS o  More information: www.xebialabs.com GET STARTED o  Deployit Trial: www.xebialabs.com/trial Deployit: www.xebialabs.com/products Blog: blog.xebialabs.com Twitter: @xebialabs YouTube: youtube.com/xebialabs STAY INFORMED

×