1. A
Brave
New
World
of
Delivering
IT
Andrew Phillips, VP Products | 28 Oct 2014
2. 2 Copyright
2014.
About
Me
▪ 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
▪ Regular meetup, conference etc. presenter
3. 3 Copyright
2014.
About
XebiaLabs
▪ Leading provider of delivery automation software focused
on helping companies deliver higher quality software
faster.
▪ Reduce development applications costs
▪ Accelerate application time to market
▪ Bridge the gap between Development and Operations
Global
Customers,
Global
Success
and
more…
4. 4 Copyright
2014.
Agenda
▪ The Big Picture
▪ What is Continuous Delivery?
▪ Metrics, Metrics, Metrics
▪ Getting Started
▪ Discussion
6. 6 Copyright
2014.
The
Big
Picture
We are all IT companies now…
…delivering financial services to our
customers
7. 7 Copyright
2014.
The
Big
Picture
How do we deliver IT-based
financial services
faster and better?
8. 8 Copyright
2014.
What
Is
Continuous
Delivery?
“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.”
9. 9 Copyright
2014.
What
Is
Continuous
Delivery?
Core concept: delivery pipeline
▪ (Largely) automated representation of your release process
▪ Set up to allow for fast releases and fast feedback of small changes
to your systems
10. 10 Copyright
2014.
What
Is
Continuous
Delivery?
Typical technical and process components:
▪ Agile/iterative software development methodology
▪ “Everything is code”
▪ Continuous Integration
▪ Automated deployments
▪ Automated environment provisioning
▪ Automated testing
▪ Automated pipeline orchestration
11. 11 Copyright
2014.
What
Is
Continuous
Delivery?
Typical benefits:
▪ More ability to “course correct” in development
▪ Avoid frequent “merge hell”
▪ Avoid failed deployments and troubleshooting
▪ Avoid environment contention and misconfigured environments
▪ Speed up testing and increase test coverage and insight
▪ Improve visibility and automation of end-to-end process
15. 15 Copyright
2014.
Continuous
Delivery
Take
2
Continuous Delivery is a means, not a goal!
16. 16 Copyright
2014.
Continuous
Delivery
Take
2
What are your goals for Continuous Delivery?
17. 17 Copyright
2014.
Continuous
Delivery
Take
2
▪ Accelerated features
▪ Customer insight and interaction
▪ Improved quality and resilience
18. 18 Copyright
2014.
Continuous
Delivery
Take
2
An FSI take (CIO EA & Infra, GE Capital):
▪ “Whiteboard-to-production” time
▪ Failed customer interactions
▪ Audit response speed
19. 19 Copyright
2014.
Metrics,
Metrics,
Metrics
Hypothesis-driven development:
▪ Why am I building this feature? What am I expecting to happen as a
result of implementing this?
▪ Where is this feature in the current delivery process? When will it be
ready? What is the current “confidence level” in this feature?
▪ Now that the feature is live, what is it doing?
20. 20 Copyright
2014.
Metrics,
Metrics,
Metrics
Hypothesis-driven development:
▪ Why am I building this feature? What am I expecting to happen as a
result of implementing this?
▪ Where is this feature in the current delivery process? When will it be
ready? What is the current “confidence level” in this feature?
▪ Now that the feature is live, what is it doing?
Rinse and repeat.
21. 21 Copyright
2014.
Metrics,
Metrics,
Metrics
(2)
Is this actually working for me?
▪ Agile is only one possible (pretty proven) approach to software
development
▪ CD is only one possible (very promising) approach to software
delivery
▪ Metrics will help you identify what works best for you
22. 22 Copyright
2014.
Metrics,
Metrics,
Metrics
(2)
▪ How long did it take to get the feature live?
▪ Which percentage of releases for this app succeeded/failed?
▪ What was the MTTR for failures?
▪ How much did it cost to develop this feature?
▪ Did the feature deliver on its hypothesis?
▪ …
23. 23 Copyright
2014.
Getting
Started
▪ Open mind: we can do things differently
▪ Get a baseline: Value Stream Analysis
▪ Define incremental goals: don’t boil the ocean
▪ Start with tooling: low-hanging fruit