Three Pillars of Continuous Delivery Culture, Processes ......Three Pillars of Continuous Delivery...

Post on 06-Jul-2020

5 views 0 download

Transcript of Three Pillars of Continuous Delivery Culture, Processes ......Three Pillars of Continuous Delivery...

Three Pillars of Continuous Delivery Culture, Processes and Tools

Andrew Phillips, VP Products | 19 Nov 2014

2 Copyright 2014.

About Me

▪ VP Products for XebiaLabs

▪ Lots of enterprise software development on high-performance

systems

▪ Been on both sides of the “Dev…Ops” fence

▪ Active open source contributor and committer:

jclouds, Akka, Gradle and others

▪ Cloud, PaaS & JVM language fan (mainly Scala, Clojure)

▪ Regular meetup, conference etc. presenter

3 Copyright 2014.

About XebiaLabs

▪ Leading provider of delivery automation software focused

on helping companies deliver higher quality software

faster.

▪ Reduce development applications costs

▪ Accelerate application time to market

▪ Bridge the gap between Development and Operations

Global Customers, Global Success

and more…

4 Copyright 2014.

Agenda

▪ Lightning Continuous Delivery Recap

▪ Tooling, Practices, Culture…how do they relate?

▪ Bootstrapping a CD Culture

▪ Crossing “Quick Win Chasm”

▪ Practical Examples

▪ Getting Started

5 Copyright 2014.

What Is Continuous Delivery?

“Continuous delivery is a set of patterns and best practices that can

help software teams dramatically improve the pace and quality of

their software delivery.”

6 Copyright 2014.

What Is Continuous Delivery?

▪ A delivery pipeline?

7 Copyright 2014.

What Is Continuous Delivery?

▪ A delivery pipeline?

▪ A type of release process?

8 Copyright 2014.

What Is Continuous Delivery?

▪ A delivery pipeline?

▪ A type of release process?

▪ An IT methodology?

9 Copyright 2014.

What Is Continuous Delivery?

▪ A delivery pipeline?

▪ A type of release process?

▪ An IT methodology?

▪ A different way of doing business?

10 Copyright 2014.

Why Continuous Delivery?

▪ Competitive pressure

▪ Hot trend

▪ Clear business values

− Accelerate time to market

− Increase application quality

− Increase customer responsiveness

11 Copyright 2014.

Why Continuous Delivery?

12 Copyright 2014.

Aside 1: Continuous Delivery & Agile

“Our highest priority is to satisfy the customer through early

and continuous delivery of valuable software.”

13 Copyright 2014.

Aside 1: Continuous Delivery & Agile

14 Copyright 2014.

Aside 1: Continuous Delivery & Agile

“Our highest priority is to satisfy the customer through early

and continuous delivery of valuable software.”

Principle #1 from the Agile Manifesto

15 Copyright 2014.

Aside 2: Continuous Delivery & Devops

▪ Flood of overlapping messaging in this space right now

▪ Analysts and new vendors piling on to the bandwagon

▪ Rather difficult to parse it all at present, especially if you’re coming at this now

16 Copyright 2014.

Aside 2: Continuous Delivery & Devops

▪ Flood of overlapping messaging in this space right now

▪ Analysts and new vendors piling on to the bandwagon

▪ Rather difficult to parse it all at present, especially if you’re coming at this now

▪ Key point: Whatever you call it, make sure you have some defined goals that

are intended to provide some measurable business value

▪ Happy to debate and discuss definitions over lunch!

17 Copyright 2014.

Culture: set of values, beliefs and

traditions

Practices: behaviours and actions that

derive from these values and beliefs

Tooling: instruments used to carry out

the behaviours and actions

Three Pillars

18 Copyright 2014.

Three Pillars

Culture

Practices

Tooling

is expressed through

carried out using

19 Copyright 2014.

Three Pillars

20 Copyright 2014.

A Bit About Culture

▪ Once it’s reached a cultural level: extremely resilient to problems

− If the tooling breaks, people will fix it

▪ Internal motivation to carry out the practices and make them work

▪ (Risk of groupthink, so tolerance of open minds is important

− Something for a lunchtime discussion)

21 Copyright 2014.

A Bit About Culture

▪ Problem: culture is hard to impose from the top down

− Look at history!

▪ And most organizations are not at the point where a culture is in place

− They’re just starting out on their CD journey!

▪ So...what can we do about this?

22 Copyright 2014.

Bootstrapping a CD Culture

▪ Let’s look at those three pillars a different way

23 Copyright 2014.

Bootstrapping a CD Culture

Culture

Practices

Tooling

is expressed through

carried out using

24 Copyright 2014.

Bootstrapping a CD Culture

Culture

Practices

Tooling

is expressed through

carried out using

25 Copyright 2014.

Bootstrapping a CD Culture

Culture

Practices

Tooling

whose effects give rise to

enables

26 Copyright 2014.

Bootstrapping a CD Culture

▪ Key point here: inverting the causal relationships!

▪ Why start with tooling & practices?

27 Copyright 2014.

Bootstrapping a CD Culture

▪ Easy to get up and running

− Certainly compared to culture!

▪ Low risk

− Largely free or low-cost tools

− “Skunkworks-able”

▪ Quick, demonstrable effects

− Go after the low hanging fruit!

28 Copyright 2014.

“Quick Win Chasm”

▪ A story…

− ACME Inc. has heard of this amazing tooling that can help automate their software delivery process

− Consultants come in a build a delivery pipeline

− Runs fine for a while

− Not easy to adapt to new projects, as the consultants have moved on

− Then some parts of the pipeline start to fail, and are switched off or bypassed

− …

29 Copyright 2014.

“Quick Win Chasm”

▪ Lesson: Tooling by itself only goes so far

− Even if it’s very reliable!

▪ Resilience comes from making this part of your DNA

▪ This Is Not Easy!

− Especially since the temptation is to see the initial improvements and stop there

30 Copyright 2014.

Crossing Quick Win Chasm

▪ Five key points

− Get management buy in

− Find someone who’s “been there”

− Create champions

− Make things visible

− Communicate, communicate, communicate

31 Copyright 2014.

Let’s Get Practical

▪ Tooling

− Code review

32 Copyright 2014.

Let’s Get Practical

▪ Tooling

− Code review

− Continuous Integration

33 Copyright 2014.

Let’s Get Practical

▪ Tooling

− Code review

− Continuous Integration

− Deployment

34 Copyright 2014.

Let’s Get Practical

▪ Tooling

− Code review

− Continuous Integration

− Deployment

− Testing & quality

35 Copyright 2014.

Let’s Get Practical

▪ Tooling

− Code review

− Continuous Integration

− Deployment

− Testing & quality

− Provisioning

36 Copyright 2014.

Let’s Get Practical

▪ Tooling

− Code review

− Continuous Integration

− Deployment

− Testing & quality

− Provisioning

− Orchestration

37 Copyright 2014.

Let’s Get Practical

▪ Tooling

− Code review

− Continuous Integration

− Deployment

− Testing & quality

− Provisioning

− Orchestration

− Monitoring

38 Copyright 2014.

Let’s Get Practical

▪ Practices

− Keep changes small

39 Copyright 2014.

Let’s Get Practical

▪ Practices

− Keep changes small

− Quality before functionality

40 Copyright 2014.

Let’s Get Practical

▪ Practices

− Keep changes small

− Quality before functionality

− Put the test up front

41 Copyright 2014.

Let’s Get Practical

▪ Practices

− Keep changes small

− Quality before functionality

− Put the test up front

− Everyone involved early

42 Copyright 2014.

Let’s Get Practical

▪ Practices

− Keep changes small

− Quality before functionality

− Put the test up front

− Everyone involved early

− No more (code) than necessary

43 Copyright 2014.

Let’s Get Practical

▪ Practices

− Keep changes small

− Quality before functionality

− Put the test up front

− Everyone involved early

− No more (code) than necessary

− Ongoing user dialog

44 Copyright 2014.

Let’s Get Practical

▪ Practices

− Keep changes small

− Quality before functionality

− Put the test up front

− Everyone involved early

− No more (code) than necessary

− Ongoing user dialog

− Delivery tooling = serious tooling

45 Copyright 2014.

Let’s Get Practical

▪ Culture

− We can always do better

46 Copyright 2014.

Let’s Get Practical

▪ Culture

− We can always do better

− Our service, our features, our users

47 Copyright 2014.

Let’s Get Practical

▪ Culture

− We can always do better

− Our service, our features, our users

− ‘Us’ includes the business

48 Copyright 2014.

Let’s Get Practical

▪ Culture

− We can always do better

− Our service, our features, our users

− ‘Us’ includes the business

− Tools work for the team

49 Copyright 2014.

Let’s Get Practical

▪ Culture

− We can always do better

− Our service, our features, our users

− ‘Us’ includes the business

− Tools work for the team

− Nobody goes home if the build delivery system is broken

50 Copyright 2014.

Getting Started

▪ Get a baseline: Value Stream Analysis

− Open mind: We Can Do Things Differently

▪ Define incremental goals

− No Ocean Boiling!

▪ Start with tooling

− Go after low-hanging fruit

51 Copyright 2014.

Getting Started

▪ Testing and quality

− More investment and backfilling required

− Requires buy-in

▪ Adapt your architecture to allow for smaller changes

− Greenfield? Lucky you!

− Otherwise, will need to tackle this eventually

▪ Full-time business focus

− It’s about putting the business at the wheel!

− Often need some persuasion to actually drive…

52 Copyright 2014.

More Info

▪ Get started today!

www.xebialabs.com

www.xebialabs.com/trial

▪ Stay informed:

blog.xebialabs.com

@XebiaLabs

youtube.com/xebialabs

53 Copyright 2014.

Get In Touch!

▪ Andrew Phillips

aphillips at xebialabs dot com

▪ Talk over lunch or at the XebiaLabs table

▪ Don’t forget to stop by the table for more information (& swag)

54 Copyright 2014.

Get In Touch!

▪ Andrew Phillips

aphillips at xebialabs dot com

▪ Talk over lunch or at the XebiaLabs table

▪ Don’t forget to stop by the table for more information (& swag)

Thank You!