Slideshare mountains hardware by Jez Stevens of Ellis Brigham
Adopting Continuous Delivery by Jez Humble
-
Upload
institut-lean-france -
Category
Technology
-
view
351 -
download
0
Transcript of Adopting Continuous Delivery by Jez Humble
@jezhumble #LeanIT2017 paris, 14 march 2017
adopting continuous delivery
© 2017 Jez Humble
@jezhumble
start with continuous integration
understand why you want to change
get measurable change fast, even if reaching your goal takes years
create culture of continuous improvement
focus on organization and architecture
takeaways
“adopting”
it’s about culture and architecture
NOT
tools, methodologies, org structure
@jezhumble
increase software quality and stability
make releases painless, low risk events
reduce time to market
increase customer and employee satisfaction
reduce cost of ongoing software development
why continuous delivery?
@jezhumble
what is continuous delivery?
The ability to get changes—features, configuration changes, bug fixes, experiments—into production or into the hands of users safely and quickly in a sustainable way.
scrum-
fall
water-
@jezhumbleJon Jenkins, “Velocity Culture, The Unmet Challenge in Ops” 2011 | http://bit.ly/1vJo1Ya
“Evaluating well-designed and executed experiments that were designed to improve a key metric, only about 1/3 were successful at improving the key metric!”
do less
“Online Experimentation at Microsoft”, Kohavi et al | http://stanford.io/130uW6X
the alignment trap
“Avoiding the Alignment Trap in IT,“ David Shpilberg, Steve Berez, Rudy Puryear and Sachin Shah MIT Sloan Management Review Magazine, Fall 2007.
time to restore service
lead time for changes
release frequency
change fail rate
it performance
http://bit.ly/2014-devops-report
@jezhumble
computers do repetitive tasks, people solve problems
build quality in
work in small batches
everyone is responsible
relentlessly pursue continuous improvement
key principles
@jezhumble
architecture
patterns and practices
culture
continuous delivery
@jezhumble
configuration management
continuous integration
automated testing
ingredients
@jezhumble
build quality in
“Cease dependence on mass inspection to achieve quality. Improve the process and build quality into the product in the first place”
W. Edwards Deming
Mainline Server
Develop
Build
Build
pull
Local Workstation
Buildpush
✔Done!
Mainline Server
Develop
Build
Build
pull
Local Workstation
Buildpush
✔Done!
Everyone Commits
To the Mainline
Every Day
@jezhumble
continuous integration at scale
Jason Leyba | http://queue.acm.org/blogposting.cfm?id=78323
John Penix | “Large Scale Continuous Testing in the Cloud” | http://bit.ly/1BYMf70
@jezhumble
Different Kinds of Testing
Diagram invented by Brian Marick
@jezhumble
deployment pipeline
hp laserjet firmware
2008
~5% - innovation capacity
15% - manual testing
25% - product support
25% - porting code
20% - detailed planning
10% - code integration
Costs
Full manual regression: 6 wks
Builds / day: 1-2
Commit to trunk: 1 week
Cycle times
implement continuous integration
reduce hardware variation
create a single package
create a simulator
implement comprehensive test automation
futuresmart rearchitecture
deployment pipeline
hp laserjet firmware
~5% - innovation
15% - manual testing
25% - current product support
25% - porting code
20% - detailed planning
10% - code integration
2008
~40% - innovation
5% - most testing automated
10% - current product support
15% - one main branch
5% - agile planning
2% - continuous integration
2011
The remaining 23% on RHS is spent on managing automated tests.
the economics
2008 to 2011
• overall development costs reduced by ~40%
• programs under development increased by ~140%
• development costs per program down 78%
• resources now driving innovation increased by 8X
A Practical Approach to Large-Scale Agile Development (Addison-Wesley) Gruver, Young, Fulghum
changing culture
http://www.thisamericanlife.org/radio-archives/episode/403/nummi
http://sloanreview.mit.edu/article/how-to-change-a-culture-lessons-from-nummi/
the production line
http://www.flickr.com/photos/toyotauk/4711057997/
TOYODA AUTOMATIC LOOM TYPE G
28
“Since the loom stopped when a problem arose, no defective products were produced. This meant that a single operator could be put in charge of numerous looms, resulting in a tremendous improvement in productivity.”
http://www.toyota-global.com/company/vision_philosophy/toyota_production_system/jidoka.html
“I think building this culture is the key to innovation. Creativity must flow from everywhere. Whether you are a summer intern or the CTO, any good idea must be able to seek an objective test, preferably a test that exposes the idea to real customers. Everyone must be able to experiment, learn, and iterate.”
innovation culture
http://glinden.blogspot.com/2006/04/early-amazon-shopping-cart.html
thank you!
© 2017 Jez Humble
To receive the following: • A copy of this presentation • A 100 page excerpt from Lean Enterprise • An excerpt from the DevOps Handbook • A 20m preview of my Continuous Delivery video workshop • Discount code for CD video + interviews with Eric Ries & more
Just pick up your phone and send an email
To: [email protected] Subject: devops
continuous delivery sounds great