DevOps is about culture and practices, not tools, right? Well, what if the tools we chose are keeping us away from good practices?
Adopting a “DevOps one-stop solution” often means you are trading knowledge of your toolchain (and the adequate tool boundaries for your delivery) for ease of setup. Yes, you’ll go faster at the start. But you will inevitably slow down over time, as technology changes and new practices emerge.
A flexible toolchain standardizes on practices, not tools, so it’s important to understand the trade-offs we’re making when selecting tools, especially if we’re driven only by familiarity and ease of setup, an anti-pattern we’ve seen across several of our clients.
3. Today
1. DevOps integration: two camps
2. Pattern #1: Best tool for the job
3. Pattern #2: Pipeline = value stream
4. Pattern #3: Recover quickly
@manupaisable | manuelpais.net 3
4. About me
Manuel Pais
MS Software Eng
@manupaisable
manuelpais.net
me@manuelpais.net
DevOps and Delivery Consultant
Focused on teams and flow
@manupaisable | manuelpais.net 4
6. Today
1. DevOps integration: two camps
2. Pattern #1: Best tool for the job
3. Pattern #2: Pipeline = value stream
4. Pattern #3: Recover quickly
@manupaisable | manuelpais.net 6
7. “integrating various
tools in software
delivery is very hard”
“a toolchain is a
design pattern
that everybody
can agree on”
https://www.infoq.com/articles/tool-integration-hard-truth
https://www.infoq.com/interviews/interview-damon-edwards-qcon-2014
8. Integrated
DevOps Tool
In the left corner…
@manupaisable | manuelpais.net 8
Integrated
DevOps
Toolchain
In the right corner…
15. “ability to get changes of all types,
into production, or into the hands of
users, safely and quickly in a
sustainable way”
–Dave Farley & Jez Humble
continuousdelivery.com
@manupaisable | manuelpais.net 15
16. CD in the real world
•Focus on individual tools
(Jenkins, VSTS, GoCD, etc)
•Focus on familiarity, cost, ease of
use, security (sometimes…)
•Focus on “scaling”
@manupaisable | manuelpais.net 16
17. CD in the real world
•Focus on individual tools
(Jenkins, VSTS, GoCD, etc)
•Focus on familiarity, cost, ease of
use, security (sometimes…)
•Focus on “scaling”
@manupaisable | manuelpais.net 17
18. CD in the real world
•Focus on individual tools
(Jenkins, VSTS, GoCD, etc)
•Focus on familiarity, cost, ease of
use, security (sometimes…)
•Focus on “scaling”
@manupaisable | manuelpais.net 18
19. CD in the real world
Not enough focus on
expected practices & results
from pipeline / delivery
@manupaisable | manuelpais.net 19
84. More practices for fast feedback
•Dynamic test environments
•Dynamic tests scheduling (fail quickly)
•Measure activity times/deviations
•Focus on flow efficiency (remove
largest bottleneck first)
•Parallelize whenever possible
@manupaisable | manuelpais.net 84
85. Take away
delivery system needs to
support evolution of
practices and tools
@manupaisable | manuelpais.net 85
88. Sources
• Manuel Pais and Matthew Skelton, 2017, ‘Continuous
Delivery Anti-Patterns’, https://dzone.com/articles/continuous-delivery-
anti-patterns
• Betty Zakheim, 2017, ‘How Difficult Can It Be to Inte-
grate Software Development Tools? The Hard Truth’,
https://www.infoq.com/articles/tool-integration-hard-truth
• Damon Edwards, 2014 ‘DevOps is an Enterprise
Concern’,
https://www.infoq.com/interviews/interview-damon-edwards-qcon-2014
• Don G. Reinertsen, 2009, ‘The Principles of Product Development
Flow: Second Generation Lean Product Development’
https://www.youtube.com/watch?v=L6v6W7jkwok
@manupaisable | manuelpais.net 88