continuous delivery & devops in the enterprise

86
Eberhard Wolff - @ewolff DevOps & Continuous Delivery in the Enterprise Eberhard Wolff Freelancer Head Technology Advisory Board adesso AG

Upload: eberhard-wolff

Post on 02-Jul-2015

574 views

Category:

Technology


7 download

DESCRIPTION

Continuous Delivery and DevOps have a different value proposition in the Enterprise and therefore must be implemented differently. This presentation ta

TRANSCRIPT

Page 1: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps & Continuous Delivery

in the Enterprise Eberhard Wolff Freelancer Head Technology Advisory Board adesso AG

Page 2: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Leseprobe: http://bit.ly/CD-Buch

Page 3: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery DevOps

Adoption

Page 4: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery DevOps

Adoption

Page 5: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery: Build Pipeline

Commit Stage

Automated Acceptance

Testing

Automated Capacity Testing

Manual Explorative

Testing

Release

Page 6: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery •  Pipeline executed several times per day

•  Automated provisioning

•  Fast Feedback •  Tests, tests, tests… •  Feedback from production

Page 7: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery

in Startups

Page 8: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Lean Startup Approach for launching businesses and products

Relies on •  validated learning •  scientific experimentation •  iterative product releases

To •  shorten product development cycles •  measure progress •  gain valuable customer feedback.

Page 9: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Traditional Approach •  Let’s create a shop 2.0

•  Features •  Express orders •  Improved search •  Improved recommendations

Page 10: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Traditional Approach •  Have it all implemented •  Roll it out •  See impact

•  Spend a lot of money •  Takes a long time •  Can you measure the success?

Page 11: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Lean Startup: Express Orders •  Interview customers

•  No interest

•  Don’t build it

Page 12: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Lean Startup: Search •  Prototype

•  Well received

•  Build it!

Page 13: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Lean Startup: Benefits •  Less money spent

•  Faster results

•  Can further expand e.g. search •  …instead of wasting money on

express orders

Page 14: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Page 15: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Observe

Orient

Decide

Act OODA Loop

Page 16: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Startups •  No clear market yet •  Need feedback •  …and change plan accordingly •  Success depends on speed in OODA

loop

Page 17: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery and the Market

•  OODA: act quickly, observer better

•  Act: Faster deployment •  = shorter time to market

•  Observe: Better visibility with better monitoring

Page 18: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery

in Enterprises

Page 19: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

IT Faster!

Time to Market!

Page 20: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

We used to do a release a quarter.

Page 21: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

We used to do a release a quarter.

Now we do one every two quarters

Page 22: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

IT Faster!

Time to Market!

Page 23: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Why not? •  Managers think in month •  …or even years

•  Quick feedback and fast deployment hardly usable

Page 24: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

So? •  Adopt Lean Startup in Enterprises •  Lean Startup is not just for Startups •  Quicker innovation •  Gain a competitive edge

•  Business strategy •  Outside IT

Page 25: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Software Becomes the Product! •  Example: Automotive •  Cars: Auto pilot (Tesla, Audi) •  Car sharing instead of buying cars •  DriveNow (BMW), Car2Go (Daimler) •  Uber •  MyTaxi (Daimler) •  Enterprise = Start Up?

Page 26: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery is

faster deployments

Page 27: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Traditional Enterprise Approach

•  Low frequency of releases •  Each release scheduled •  …extensively managed •  …precautions if it fails •  Weekends, nights …

•  Enterprises can only deploy slowly

Page 28: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Enterprises can deploy quickly!

Page 29: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Quick Deployment in Enterprises

Severe production problem •  Hot fix •  Deployed in minutes / hours

How? •  Only limited tests, high risk (?) •  Small batch, small risk

Page 30: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Lessons Learned from Hot Fixes

•  Speed of deployment: no good reason for Continuous Delivery

•  Continuous Delivery = Hot Fix + automated tests

•  Different way to handle risk •  Smaller and faster deployments

Page 31: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery Minimizes Risk

•  Risk depends on size of change

•  More frequent deployments less risk

Page 32: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Traditional Deployments: Risk

Developer Build

1h

Continuous Integration

Development Environment

1d

Staging

30d

>30d

Production

Page 33: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery: Risk

Developer Build

1h

Continuous Integration

Acceptance Tests

Capacity Tests

Production

Page 34: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Traditional Enterprise Approach

Difference to Continuous Delivery? •  No automation •  Not reproducible •  Too infrequent to establish best

practices

Page 35: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Full Continuous Delivery Pipeline?

Commit Stage

Automated Acceptance

Testing

Automated Capacity Testing

Manual Explorative

Testing

Release

Dev Ops

Page 36: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery & Separated Ops

•  Need buy-in from Ops •  Separate organizational unit •  Mistrust •  Used to their ways •  …and tools

•  Solution: DevOps (later)

Page 37: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Dev-only pipeline useful?

Page 38: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Dev-only Pipeline •  Much higher quality •  A lot more tests •  Automated infrastructure •  Pays off for testing systems

•  Sensible alternative

Page 39: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Not just productivity gain

automation vs. manual

Page 40: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery Pipeline

More frequent

tests

Higher quality

Faster feedback Faster

Time- to-market

Automation

Higher productivity

Reproducible environments

Page 41: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery Pipeline

More frequent

tests

Higher quality

Faster feedback Faster

Time- to-market

Automation

Higher productivity

Reproducible environments

Page 42: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery Pipeline

More frequent

tests

Higher quality

Faster feedback Faster

Time- to-market

Automation

Higher productivity

Reproducible environments

Page 43: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery in Enterprises: Sum Up

Dev+Ops+Business •  Time to market •  Lean Startup / fast OODA loop •  Best Pay Off Dev + Ops •  Avoid deployment problems •  All the weekends spend on releases

Page 44: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery in Enterprises: Sum Up

Dev •  Faster feedback •  More tests •  Easier to set up test environments

Can be introduced with little Buy-In •  Just do it!

Page 45: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery DevOps

Adoption

Page 46: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery DevOps

Adoption

Page 47: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps •  Dev: Development •  Ops: Operations

•  DevOps = close collaboration between Dev and Ops

•  Teams have Ops and Dev people

Page 48: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps in Startups

Page 49: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps in Startups •  You build it – you run it •  Smaller organizational units •  At the beginning: No clear roles •  DevOps teams by feature •  From the start

Page 50: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps in Enterprises

Page 51: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Dev – features Ops – cost

Page 52: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Dev builds it Ops runs it

Page 53: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Why??

Page 54: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Costs

Page 55: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Why Separate Dev and Ops?

•  Adam Smith •  Separation of labor •  Standardization •  Industrialization •  Cost •  Productivity

Page 56: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Lower Costs Differently •  Basic tasks automated by software •  See Continuous Delivery

•  IT = automating tasks

Page 57: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Goals Might Be Different •  Flexible IT to support business •  See Lean Startup etc •  Separate Dev/Ops: not be the best

option for Enterprises?

Page 58: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Let’s introduce DevOps in

Enterprises!

Page 59: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps in Enterprises •  Dev and Ops separated directly

below CIO •  Need to change the organization •  Fundamentally •  Changing the organization is hard

Page 60: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff L

Page 61: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps =

Culture

Page 62: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Do you need to change the

organization?

Page 63: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps = Culture •  Let Ops and Dev sit together •  Direct communication between Ops

and Dev engineers emerges •  Associate Ops with Dev teams

•  Share tools… •  …and knowledge

Page 64: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

What if you change the

organization?

Page 65: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Traditional Organization

CRM Order Inventory

Dev

Ops Hardware, Operating System etc

Page 66: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Problem with Traditional Organization

•  Customer only cares about applications

•  Not infrastructure •  So: Ops not important? •  Different goals •  Dev: Bring out new features quickly •  Ops: Stable platform and applications

Page 67: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Problem with Traditional Organization

•  At the end Ops and Dev both serve the customer

•  Both own stability and new features

•  But not represented in organization •  …or incentives

Page 68: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps Organization

CRM Order Inventory

Dev

Ops Hardware, Operating System etc Hardware etc

Page 69: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Dev Ops = Customer Oriented

•  Team owns feature •  …and stability •  i.e. value of the application to the

customer •  Clearly responsibility •  Competitive edge for in-house IT

Page 70: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery DevOps

Adoption

Page 71: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery DevOps

Adoption

Page 72: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps & Continuous

Delivery will be adopted like

Agile

Page 73: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps & CD vs. Agile •  Similar issues •  Culture •  Values •  Time to market

•  E.g. DevOps & CD are the next step after agile

Page 74: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Step 1: Resistance & Doubt •  Agile about 2000 •  eXtreme Programming

•  Management doesn’t want it

•  Doubts whether it can work at all

Page 75: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps & Continuous

Delivery cannot possibly work for

me!

Page 76: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

My IT is more complex than

Amazon!

Page 77: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Adoption •  Orthodox to leave the old ways •  Bottom up by IT

•  Problem: Buy-In from Management

•  Current state of DevOps / Continuous Delivery

Page 78: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Step 2: Mainstream •  Developers & technical managers

agree •  No need to discuss the need •  Project start implementing it en

masse •  Agile after 2005

Page 79: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Step 2: Mainstream •  Adoption: Just get a coach •  …but hard to make it truly work •  Values & organization – hard to

change

Page 80: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Step 3: Everyone Is Doing It •  …or at least claims so •  Core values often still not

understood •  …or shared by the organization •  Management Buy-In •  Agile now •  Disillusion

Page 81: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

How can DevOps and Continuous

Delivery avoid this?

Page 82: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Customize Continuous Delivery & DevOps for Enterprises

Page 83: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

TL;DR

Page 84: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Continuous Delivery in Enterprises

•  Faster time to market •  Useful if business changes

accordingly

•  Otherwise: Lower risk •  Automation & reproducibility •  Smaller batches for releases

Page 85: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

DevOps in Enterprises •  DevOps = Culture •  Encourage communication •  …and sharing tools

•  Optional: DevOps = Organization •  Customer Oriented IT •  Optimization for flexibility instead of

cost

Page 86: Continuous Delivery & DevOps in the Enterprise

Eberhard Wolff - @ewolff

Thanks!