Failing Continuous Delivery

A presentation at Devoxx in June 2015 in Kraków, Poland by Daniel Sawano

Slide 1

Slide 1

#DevoxxPL @DanielDeogun @DanielSawano Failing Continuous Delivery Daniel Sawano, Daniel Deogun Omegapoint Platinum Sponsors:

Slide 2

Slide 2

About Us… Daniel Deogun Daniel Sawano Omegapoint Stockholm - Gothenburg - Malmoe - Umea - New York

Slide 3

Slide 3

Continuous Integration “ Continuous Integration is a software development practice where members of a team integrate their

work frequently , usually each person integrates at least daily - leading to multiple integrations per day. Each integration is verified by an automated build

(including test) to detect integration errors as quickly as possible. “

  • Martin Fowler, ThoughtWorks

Slide 4

Slide 4

Continuous Delivery “… continuous delivery means making sure your software is always production ready throughout its entire lifecycle – that any build could potentially be released to users at the touch of a button using a fully automated process in a matter of seconds or minutes. ”

  • Jez Humble, ThoughtWorks

Slide 5

Slide 5

Continuous Delivery or Continuous Deployment? “I see the difference as a business decision about frequency of deployment into production. Continuous Deployment is actually deploying every

change into production , every day or more frequently. ” “…continuous deployment implies continuous delivery the converse is not true. Continuous delivery is about putting the release schedule in the hands of the business, not in the hands of IT… any build could potentially be released to users at the touch of a button using a fully automated process in a matter of seconds or minutes ”

  • Martin Fowler, ThoughtWorks
  • Jez Humble, ThoughtWorks

Slide 6

Slide 6

[Candle Time] What drives CD in an organization? [Wallstreet] IT Sales CEO

Slide 7

Slide 7

[Candle Time] What drives CD in an organization? [Wallstreet] IT Sales CEO

Slide 8

Slide 8

[Candle Time] What drives CD in an organization? [Wallstreet] IT Sales CEO

Slide 9

Slide 9

Core vs Supportive IT Core Supportive [Atom] [Quad Hall]

Slide 10

Slide 10

IT - Supportive or Core?

Slide 11

Slide 11

IT - Supportive or Core?

Slide 12

Slide 12

IT - Supportive or Core?

Slide 13

Slide 13

IT - Supportive or Core? 

Slide 14

Slide 14

IT - Supportive or Core? Bank of America

Slide 15

Slide 15

The Challenges [Elephant in the Room]

Slide 16

Slide 16

The Challenges structure processes people [Elephant in the Room]

Slide 17

Slide 17

Organization

Current organization is not designed to continuously produce business value

Slide 18

Slide 18

Organization

User Business case Design Development Test Operations

Slide 19

Slide 19

Organization

User Business case Design Development Test Operations

Slide 20

Slide 20

Organization

User Business case Design Development Test Operations

Slide 21

Slide 21

Organization

Security Development Infrastructure Operations

Slide 22

Slide 22

Organization

Security Development Infrastructure Operations We’re heading this way! The future is over here! We just found the holy grail! This is the only way forward!

Slide 23

Slide 23

Conway’s Law

“organizations which design systems … are constrained to produce designs which are copies of the communication structures of these organizations ”

  • M. Conway, 1967

Slide 24

Slide 24

Conway’s Law Applied
to Business Value

“ Organizations which design IT products are constrained to produce business value at a rate limited by the organizational structure ”

Slide 25

Slide 25

Inverse Conway Maneuver

“… evolving your team and organizational structure to promote your desired architecture ”

  • ThoughtWorks Technology Radar

Slide 26

Slide 26

Inverse Conway Maneuver

Be prepared to evolve your organization to enable a continuous delivery process Applied to business value:

Slide 27

Slide 27

Organization

Slide 28

Slide 28

Organization

avoid organizational inertia embrace change adapt

Slide 29

Slide 29

Organization

think different

Slide 30

Slide 30

Process [Waterfall ]

Slide 31

Slide 31

Process Know when to stop polishing the diamond

Slide 32

Slide 32

Process • The only way to know if an idea that looks good on paper will generate revenue is to test it on customers • Release, measure, improve/abort

Slide 33

Slide 33

Business [Business]

Slide 34

Slide 34

Business • Todays market is increasingly competitive and demanding • You need IT management

Slide 35

Slide 35

Business • IT and business is fused together • New breed of managers

Slide 36

Slide 36

IT [Matrix Code]

Slide 37

Slide 37

Cycle Time “…the time it takes from deciding to make a change, whether a bug fix or a feature, to having it available to users.”

  • Jez Humble, David Farley, Continuous Delivery Hmm… what if… Developing Testing Developing Testing Developing Testing Users

Slide 38

Slide 38

Manual Testing

  • Just Automate That Sh*t [Testing]

Slide 39

Slide 39

Implications of
Just Automate That …

Slide 40

Slide 40

Implications of
Just Automate That … Design & Mindset Modularity Complexity Independence Maintainability Good enough?

Slide 41

Slide 41

Implications of
Just Automate That … Test Data How to generate? Ownership Sampling Stale data? Sensitive Design & Mindset Modularity Complexity Independence Maintainability Good enough?

Slide 42

Slide 42

Implications of
Just Automate That … Test Data How to generate? Ownership Sampling Stale data? Sensitive Design & Mindset Modularity Complexity Independence Maintainability Good enough? Cost vs Savings Hardware Risk analysis Bug preemption Training

Slide 43

Slide 43

Implications of
Just Automate That … Test Data How to generate? Ownership Sampling Stale data? Sensitive Design & Mindset Modularity Complexity Independence Maintainability Good enough? System Dependencies Legacy Downtime Data flow Cost vs Savings Hardware Risk analysis Bug preemption Training

Slide 44

Slide 44

The Risk Reduction - Release Dilemma Business IT

Slide 45

Slide 45

The Risk Reduction - Release Dilemma Here are the
requirements Business IT

Slide 46

Slide 46

The Risk Reduction - Release Dilemma Business IT Hmm… ok, are
they prioritzed?

Slide 47

Slide 47

The Risk Reduction - Release Dilemma Business IT Ehh… sure.
We want them
all!

Slide 48

Slide 48

The Risk Reduction - Release Dilemma Business IT No really, we
need them to
be prioritzed?

Slide 49

Slide 49

The Risk Reduction - Release Dilemma Business IT It’s only must
haves. Do em’ all!

Slide 50

Slide 50

The Risk Reduction - Release Dilemma Business IT Ok… then we’ll
do a lot of small
releases

Slide 51

Slide 51

The Risk Reduction - Release Dilemma Business IT What?!? No way! Last time you did
that…

Slide 52

Slide 52

The Risk Reduction - Release Dilemma Business IT all systems went
banana and we lost ££$$ €€ kr

Slide 53

Slide 53

The Risk Reduction - Release Dilemma Business IT But…

Slide 54

Slide 54

The Risk Reduction - Release Dilemma Business IT No buts … we
need to REDUCE
risk

Slide 55

Slide 55

The Risk Reduction - Release Dilemma Business IT and release LESS
often with MORE
features!

Slide 56

Slide 56

The Risk Reduction - Release Dilemma Business IT Ehh… wouldn’t
that INCREASE
risk?

Slide 57

Slide 57

The Risk Reduction - Release Dilemma Business IT What? No, of
course not. Let’s get
this project started.
Time is money

Slide 58

Slide 58

Why is Business Acting this way? Big feature sets Less frequent releases System dependencies “Must haves”

Slide 59

Slide 59

Key Take Aways

Slide 60

Slide 60

Key Take Aways Core or Supportive IT

Slide 61

Slide 61

Key Take Aways Cycle Time Core or Supportive IT

Slide 62

Slide 62

Key Take Aways Cycle Time Core or Supportive IT Processes & Organization

Slide 63

Slide 63

Key Take Aways Cycle Time Core or Supportive IT Cultural Shift Processes & Organization

Slide 64

Slide 64

Key Take Aways

Slide 65

Slide 65

Key Take Aways Competence

Slide 66

Slide 66

Key Take Aways Competence IT Management

Slide 67

Slide 67

Key Take Aways Competence IT Management Minimum Viable Product

Slide 68

Slide 68

Key Take Aways Competence Company Vision IT Management Minimum Viable Product

Slide 69

Slide 69

Q & A [Questions]

Slide 70

Slide 70

Awesome images 1. [Wallstreet - https://flic.kr/p/peyuqz] by Micha D. under license http://www.creativecommons.org/licenses/by/2.0/

[Candle Time - https://flic.kr/p/asTDXx] by Henti Smith under license https://creativecommons.org/licenses/by-nc-nd/2.0/

[Quad Hall - https://flic.kr/p/uFrux] by Scott Wang under license https://creativecommons.org/licenses/by-nc-nd/2.0/

[Atom - https://flic.kr/p/b6qS4V] by Brian Westin under license https://creativecommons.org/licenses/by-nc/2.0/

[Think Different - https://flic.kr/p/aUwPzp] by Luigi Torreggiani under license https://creativecommons.org/licenses/by-nc/2.0/

[Elephant in the Room] by Daniel Sawano, @ 2015, all rights reserved 7. [Waterfall - https://flic.kr/p/pjeytJ ] by Vincent Moschetti under license https://creativecommons.org/licenses/by-nc-nd/2.0

[Matrix Code - https://flic.kr/p/2Poor] by David.Asch under license https://creativecommons.org/licenses/by-nc-nd/2.0/

[Business - https://flic.kr/p/4qAhiw] by thinkpanama under license https://creativecommons.org/licenses/by-nc/2.0/

[Questions - https://flic.kr/p/9ksxQa] by Damián Navas under license https://creativecommons.org/licenses/by-nc-nd/2.0/

[Testing - https://flic.kr/p/gEnFDA] by cta web under license https://creativecommons.org/licenses/by-nd/2.0/

Slide 71

Slide 71

Thank you! @DanielSawano @DanielDeogun