The Why And How Of Continuous Deployment

Nigel McNie
shoptime.co.nz

Continuous Deployment is a strategy for releasing software.

Strategies Categorised By Time

More Irregular <------------                   -------------> More regular
Once per iteration    Every Month   Two weeks   1 week   Few days   Nightly

[<========= Waterfall =========>]
                      [<=========== Agile ==========>]
                                             [ BAU/firefighting/noprocess ]

Strategies Categorised By Time

More Irregular <------------                   -------------> More regular
Once per iteration    Every Month   Two weeks   1 week   Few days   Nightly

[<========= Waterfall =========>]
                      [<=========== Agile ==========>]
                                             [ BAU/firefighting/noprocess ]

TOO SLOW

Why Too Slow?

Why Too Slow?

Releases are a point of friction
The larger the friction, the more the project struggles.

Continuous Deployment

Commit, Test, Deploy

Continuous Deployment

Continuous Deployment
Commit Deploy

Commit

Feature Flags (Flippers/Toggles)

Test

Deploy

What Happens If Things Break?

"It Sounds Too Risky!"

Benefits

Core Benefit

CD lets you go fast with confidence

"But what about... ?"

"But what about... ?"

Final Thoughts

EOF


Credits