Our continuous delivery journey
-
Upload
suzie-prince -
Category
Technology
-
view
225 -
download
1
Transcript of Our continuous delivery journey
OUR CONTINUOUS DELIVERY JOURNEY
Suzie Prince ThoughtWorks
Define Continuous Delivery (CD)
Tell some stories about our journey to CD
Review learnings and share tips
WHAT I WILL COVER
Suzie Prince
Head of Product for ThoughtWorks products group
Product Manager for Snap CI
10 + years experience in software development including agile and CD practices
Tweeting @pm_suzie
WHAT IS CD?
“Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands of users, safely and
quickly in a sustainable way.”
- Jez Humble, continuousdelivery.com
“Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands of users, safely and
quickly in a sustainable way.”
- Jez Humble, continuousdelivery.com
CONTINUOUS DELIVERY
RELEASE
RELEASE
RELEASE
RELEASE
YEAR
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
💁🍩
💁🍩
💁🍩
💁🍩
RELEASE
YEAR
RELEASE
RELEASE
RELEASE
RELEASE
RELEASE
RELEASE
RELEASE25% RELEASE TIME WAS
INSTALLER TESTING
YEAR
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer TestsStaging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer Tests Staging DeliverUser
Acceptance
Commit Build and Test Automated Tests Staging DeliverUser
AcceptanceCommit Build and Test Automated Tests Installer Tests Staging DeliverUser
Acceptance
Commit Build and Test Automated Tests Staging DeliverUser
AcceptanceCommit Build and Test Automated Tests Installer Tests Staging DeliverUser
Acceptance
Commit Build and Test Automated Tests Staging DeliverUser
AcceptanceCommit Build and Test Automated Tests Installer Tests Staging DeliverUser
Acceptance
Commit Build and Test Automated Tests Staging DeliverUser
AcceptanceCommit Build and Test Automated Tests Installer Tests Staging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer Tests Staging DeliverUser
Acceptance
RELEASE
RELEASE
RELEASE
RELEASE
YEAR
RELEASE
RELEASE
RELEASE
RELEASE<5% RELEASE TIME WAS
INSTALLER TESTING
YEAR
HIDDEN SILOS
Commit Build and Test Automated Tests Installer Tests Staging DeliverUser
Acceptance
Commit Build and Test Automated Tests Installer Tests Staging DeliverUser
Acceptance
OUR LEARNINGSAutomate, automate, automate
Look for hidden silos
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelinesContainers!
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelines
✔
Containers!
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelines
✔✔
Containers!
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelines
✔✔
✔
Containers!
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelines
✔✔
✔
✔
Containers!
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelines
✔✔
✔
✔✔
Containers!
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelines
✔✔
✔
✔✔
Containers!✔
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelines
GOOD JOB!
✔✔
✔
✔✔
Containers!✔
“Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands of users, safely and
quickly in a sustainable way.”
- Jez Humble, continuousdelivery.com
“Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands of users, safely and
quickly in a sustainable way.”
- Jez Humble, continuousdelivery.com
“Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands of users, safely and
quickly in a sustainable way.”
- Jez Humble, continuousdelivery.com
“Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands of users, safely and
quickly in a sustainable way.”
- Jez Humble, continuousdelivery.com
“Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands of users, safely and
quickly in a sustainable way.”
- Jez Humble, continuousdelivery.com
“Continuous Delivery is the ability to get changes of all types—including new features, configuration changes, bug
fixes and experiments—into production, or into the hands of users, safely and
quickly in a sustainable way.”
- Jez Humble, continuousdelivery.com
Microservices
RabbitMQ
NagiosAutomated infrastructureDeployment pipelines
GOOD JOB!
✔✔
✔
✔✔
Containers!✔
Microservices
OUR LEARNINGSDelivering value, not doing CD is your job
CD is a journey
TAKE AWAYS
🍩 🍩🍩🍩 🍩
🍩
🍩🍩🍩
🍩
PRACTICE CONTINUOUS INTEGRATION
🍩
FREQUENCY REDUCES DIFFICULTY
🍩
DOING CONTINUOUS DELIVERY IS NOT YOUR JOB
GOOD JOB!
🍩
INVOLVE THE WHOLE TEAM
🍓
AUTOMATE EVERYTHING
CONTINUOUS DELIVERY IS A JOURNEY…
Keep your goals in mind
Look back and retrospect
Focus on what is not good now and improve that
Don’t be too critical
Don’t fear redesign, don’t fear rework
🍩 🍓
CONTINUOUS DELIVERY IS A JOURNEY…
Keep your goals in mind
Look back and retrospect
Focus on what is not good now and improve that
Don’t be too critical
Don’t fear redesign, don’t fear rework