Textbook continuous delivery sounds great. We commit code, build it, deploy into a test lab, test and then promote to production. Clean, simple and effective. The reality for most applications is that some of their test environments are named things like "system integration". When tests validate integrated systems, releases to production generally involve all the services that were changed and tested together rather than just a single build. We have release managers who specialize in making sure all the moving parts get delivered together. Meanwhile, some parts of systems are not even built and others like database schemas are updated incrementally. The textbook build pipeline may not be good enough.
2. Who are these guys?
Al Wagner - Technical Evangelist, IBM
Al Wagner is an IBM technical evangelist with more than twenty years of practical field experience in
development roles driving thought leadership, strategic initiatives, and tangible solutions around
DevOps and continuous delivery. Focusing mainly on deployment automation and continuous testing,
Al has practical knowledge of the IBM DevOps solution having assisted, mentored, and enabled both
internal IBM and external customer teams to solve their IT challenges. He has spoken at numerous
conferences around the world on software development – principles & techniques - and authored/co-
authored numerous papers and books including Application Release and Deployment For Dummies
and Service Virtualization For Dummies.
Eric Minick
@EricMinick
Chris Nowak - Chief Transformation Officer, Kingsmen Software
Chris has 20+ years in Change Management, SDLC & DevOps. He was Head of DevOps Services at
2 of the top 4 US banks where he designed, led and scaled services from the ground up, including
service strategy, process optimization, organizational change, large-scale engagement / on-boarding,
and operations. At Wells Fargo (First Union, Wachovia), he automated 350 applications for the
Trading, Securities and Investment Banking divisions. At Bank of America he led a combined
organization of Automation Engineering, Systems, Engagement, and Deploy Operations. His teams
automated and supported 800 applications from source to prod. Chris left BAC in 2016 to focus on
large scale DevOps consulting.
3. Software is winning
World’s largest
accommodations
company…
Owns No Real Estate
Became a top 10 e-
commerce site.
Stock
Outperformed
Google 2004-2016
World’s largest
retailer…
Has No Inventory
World’s largest media
company…
Creates No Content
4. We have our bad press days too
www.bloomberg.com/news/articles/2
012-08-02/knight-shows-how-to-lose-
440-million-in-30-minutes
thehill.com/policy/healthcare/245128-
obama-healthcaregov-a-well-
documented-disaster
11. Systems of systems. Pipelines of pipelines.
Development SCM Build
Package
Repo
Test Stage Production
• Test the System
• Deploy the System
• Release the System
Development SCM Build
Package
Repo
Test Stage Production
Development SCM Build
Package
Repo
Test Stage Production
Development SCM Build
Package
Repo
Test Stage Production
Development SCM Build
Package
Repo
Test Stage Production
12. Systems of systems. Pipelines of pipelines
♫
Simpler
than mine?
• Test the System
• Deploy the System
• Release the System
13. One Rule
If you test it together
Then ship it together
Test, Release
Equivalence
15. Cloud native bigger than a microservice?
Bosh
Kubernetes Helm Charts
Docker Compose
16. Your app isn’t perfectly “12 Factor” anyway
Appliance
DB
Public or Private Cloud
Container
Container
Container
Container
application
?
Do I need to do CD for
my database schema
too?
18. 1. Earn build pipelines
✓ Fully decouple microservices
✓ Eliminate external dependencies (APIs help)
✓ Prove you can manage big changes through feature flags
(have a pipeline with monitoring for those too)
19. 2. Release automation tools
Development SCM Build
Package
Repo
Test Stage Production
Development SCM Build
Package
Repo
Development SCM Build
Package
Repo
20. 3. Coordinate pipelines together
Development SCM Build
Package
Repo
Test Stage Production
Development SCM Build
Package
Repo
Test Stage Production
Development SCM Build
Package
Repo
Test Stage Production
Development SCM Build
Package
Repo
Test Stage Production
Development SCM Build
Package
Repo
Test Stage Production
21. Did we kill off base CD?
Development SCM Build
Package
Repo
Test Stage Production
22. The promise is still real
“Two Pizza” teams are still good
Changes are still bigger than what a single squad owns
And that’s OK! Tools can help
23. But… none of this works without feedback
Development SCM Build Package
Repo
Deploy Test Stage Production
accelerate feedback
deliver with speed
24. IBM UrbanCode: Continuous Integration & Delivery
24
Quickly, safely, efficiently deliver change from dev to production
Build integrates with SCM and produces
artifacts
Deploy automates App deployments of many
artifacts
Release governs on top of Deploy for multi-
application releases.
IBM IBM IBM
Build Deploy Release
Tools separation delivers flexibility
to compose
Integrated Toolchain
IBM IBM
Deploy Release
IBM
Deploy
3rd party
IBM
Build
IBM
Deploy
?
IBM
Release
IBM
Release
IBM
Build
Develop SCM Build Package
Repo
Test Stage Production