Failing Continuous Delivery

A presentation at JDays 2015 in March 2015 in Gothenburg, Sweden by Daniel Sawano

Slide 1

Slide 1

Failing
Continuous Delivery jDays,
Gothenburg, 2015-03-17 Twitter: @DanielSawano @DanielDeogun

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

Slide 16

Slide 16

Organization

Current organization is not designed to continuously produce business value

Slide 17

Slide 17

Organization

User Business case Design Development Test Operations

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

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 21

Slide 21

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 22

Slide 22

Inverse Conway Maneuver

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

  • ThoughtWorks Technology Radar

Slide 23

Slide 23

Organization

Slide 24

Slide 24

Organization

avoid organizational inertia embrace change adapt

Slide 25

Slide 25

Organization

think different

Slide 26

Slide 26

Process [Waterfall ]

Slide 27

Slide 27

Process Know when to stop polishing the diamond

Slide 28

Slide 28

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 29

Slide 29

Business [Business]

Slide 30

Slide 30

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

Slide 31

Slide 31

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

Slide 32

Slide 32

IT [Matrix Code]

Slide 33

Slide 33

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 34

Slide 34

Manual Testing

  • Just Automate That Sh*t [Testing]

Slide 35

Slide 35

Implications of
Just Automate That …

Slide 36

Slide 36

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

Slide 37

Slide 37

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

Slide 38

Slide 38

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 39

Slide 39

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 40

Slide 40

The Risk Reduction - Release Dilemma Business IT

Slide 41

Slide 41

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

Slide 42

Slide 42

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

Slide 43

Slide 43

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

Slide 44

Slide 44

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

Slide 45

Slide 45

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

Slide 46

Slide 46

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

Slide 47

Slide 47

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

Slide 48

Slide 48

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

Slide 49

Slide 49

The Risk Reduction - Release Dilemma Business IT But…

Slide 50

Slide 50

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

Slide 51

Slide 51

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

Slide 52

Slide 52

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

Slide 53

Slide 53

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

Slide 54

Slide 54

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

Slide 55

Slide 55

Key Take Aways

Slide 56

Slide 56

Key Take Aways Core or Supportive IT

Slide 57

Slide 57

Key Take Aways Cycle Time Core or Supportive IT

Slide 58

Slide 58

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

Slide 59

Slide 59

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

Slide 60

Slide 60

Key Take Aways

Slide 61

Slide 61

Key Take Aways Competence

Slide 62

Slide 62

Key Take Aways Competence IT Management

Slide 63

Slide 63

Key Take Aways Competence IT Management Minimum Viable Product

Slide 64

Slide 64

Key Take Aways Competence Company Vision IT Management Minimum Viable Product

Slide 65

Slide 65

Q & A [Questions]

Slide 66

Slide 66

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/

[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 67

Slide 67

Thank you! @DanielSawano @DanielDeogun