How to get started with DevOps

Preview:

Citation preview

www.devopsguys.com | Phone: 0800 368 7378 | e-mail: team@devopsguys.com | 2017

How to get started in DevOpsPractical advice on your DevOps Transformation

in 82 slides in 45 minutes…

3

Agenda

•DevOps 101 re-cap•Getting started with DevOps

•9 Steps to DevOps•Q&A

DevOps in 4 slides in 2 minutesJust so we’re all on the same page about this DevOps

thing… Start the clock!

5

“A set of patterns, practices and behaviours that are

correlated with high-performing IT teams.”

DevOps – Defined #1

6

DevOps = Continuous Delivery + Operability

Agile Software Development +

Continuous Integration +

Test Automation +Release Automation

= Continuous Delivery

DevOps = Agile ++

OPERABILITYScalability

Deployability

Resilience

Monitoring Alerting

Disaster Recovery

Supportability

Maintainability

+

7

Continuous Delivery

“Our highest priority is to satisfy the customer through early and continuous delivery of valuable

software”

8

The DevOps “CALMS” model

• Culture• Automation• Lean• Measurement• Sharing

How to get started in DevOpsPart 1 – Shift your Mindset to Systems Thinking

10

Gene Kim’s “3 Ways” of DevOps

Client Logo

11

The Busines

sI.T.

12

Dev Ops

13

Systems Thinking

Society

Customer

Business

I.T.

Dev

Ops

14

Business

Department

Team

You

Values

Policies

Procedures

Behaviours

Cultu

re“T

he w

ay th

ings

are

don

e ar

ound

he

re”

15

This isn’t an easy Transformation…

From… Key Success Factor To…

Command & Control Management Style Autonomous

Conservative Attitude to Change Experimental

Silo Organisation Structure Collaborative

Project-focussed Delivery Focus Product-centric

Waterfall Delivery Model Iterative (Agile)

Large (Huge) Batch size Smallest possible

Monolithic Systems Architecture Loosely coupled

Proprietary Technology Open (Source)

Manual Processes Automated

How to get started in DevOpsPart 2 – Build the Foundations

18

3 Foundational Practices

1. #MakeWorkVisible2. #MeasureWhatsImportant

3. #ActOnFeedback

19

#MakeWorkVisible

20https://communitiesinnature.wordpress.com/2012/04/10/our-gantt-chart-is-finished-westonbirt-arboretums-hidden-voices-project/

XA Gannt Chart is NOT visualising

work

21https://leankit.com/learn/kanban/kanban-board-examples-for-development-and-operations/

A KANBAN Board *IS* Visualising

Work

22

To Do

Some Stuff to Do

Ready

Stuff Ready

to Action

In-Progress

This is what I’m

doing right now!

DoneDone and signed off

by everyone.

“Done Done.”

Sticky Label Design "© Copyright Showeet.com"

And it’ll be done when it’s done…

So stop bugging me for status

updates and go check the

board…

23http://www.thebeardly.com/2011/08/measuring-shirt.html

#MeasureWhatsImportant

24

4 Most Commonly Cited DevOps Metrics• Deployment Frequency• MTTR – Mean Time to Recover• Change Failure Rate• Lead Time & Process Time

2016 State of DevOps Report | presented by Puppet + DORA

Wait Time Process Time

Lead Time (Start to Finish)

25

Goodhart’s Law

“When a measure becomes a target, it ceases to be a good

measure.”

“If a measurement can’t be used to improve the system (via feedback) then it’s useless” – Steve’s Corollary

https://en.wikipedia.org/wiki/Goodhart%27s_law

26

3 Levels of Measurement

• Customer Satisfaction – measure what matters to them (and not what you THINK matters to them)

• Capability – internal capability measures aligned to customer demands

• Process – measuring the value stream of processes that create that capability

“The Vanguard Guide to Using Measures for Performance Improvement” (2001)

27

Example of metricsCustomer Need

Customer Measure

Capability Metric

Process Metrics

• Features delivered quickly

• % Feature delivered as agreed

• Average Lead Time

• % availability of Test environments

• % of re-work required• Monthly cloud hosting spend

28

#ActOnFeedback

29

Gene Kim’s “3 Ways” of DevOps

30

Involve everybody in the feedback process

Hint: Invite Ops to the retrospectives, sprint planning and backlog

grooming.

31

32

5 Practical Ways to #ActOnFeedback1. Ensure Operability requirements have equal weight as

Functional requirements2. Use Pull Requests & Code Reviews – they are a quick

and effective feedback loop!3. Have regular retrospectives – create tickets to track

your retro actions4. Track Technical Debt and set a “debt ceiling” – new

work stops when the Tech Debt ceiling is exceeded5. Reserve 20% of effort for process improvement

33

FEED THE WASTE SNAKE

34

35

How many times per day is the Andon Cord pulled in a typical

day at a Toyota manufacturing plant?

HT to @RealGeneKim for this example!

36

3,500 times per day

37

Should Toyota increase or decrease

this number?

How to get started in DevOpsPart 2 – Change how we work

39

3 Working Practices

4. #IdentifyTheGoal5. #BeAgile6. #DeliveryContinuously

40#IdentifyTheGoal

41

42

• Sprint• 2 weeks

6 18

• Month• 2

sprints

Aspirational(60%)

• Quarter• 3

months

• Annual• 12

months

1 2 3 12Vision

43

• Sprint• 2 weeks

6 18

• Month• 2

sprints

Aspirational(60%)

• Quarter• 3

months

• Annual• 12

months

1 2 3 12

Positive(70%)

VisionObjectives

44

• Sprint• 2 weeks

6 18

• Month• 2

sprints

Aspirational(60%)

• Quarter• 3

months

• Annual• 12

months

1 2 3 12

Positive(70%)

Considered(80%)

VisionObjectivesPlan

45

• Sprint• 2 weeks

6 18

• Month• 2

sprints

Aspirational(60%)

• Quarter• 3

months

• Annual• 12

months

1 2 3 12

Positive(70%)

Considered(80%)

Confident(95%)

VisionPlanTasks Objectives

46

“Success is not checking a box.

Success is having an impact.

If you complete all tasks and nothing ever gets better,

that's not success.”  Christina Wodtke, OKR Coach

47

#BeAgile

https://s-media-cache-ak0.pinimg.com/originals/a5/1f/30/a51f3037feaab79713a0df591f0988a8.gif

48

#BeAgile

http://cubiclebot.com/wp-content/uploads/2012/10/1.gif

49

Scrum

Lean

Kanban

XP

DSDM

SAFeX

50

Scrum is popular

Image source: State of Agile Survey, 2015

X

51

Daily Stand-Ups

Retrospectives

Burndowns

VelocityIteration Planning

Story Mapping

Planning PokerX

52

The Agile Manifesto

• Individuals and interactions over processes and tools

•Working software over comprehensive documentation

•Customer collaboration over contract negotiation•Responding to change over following a plan

54

Being Agile Delivers Results

Image source: State of Agile Survey, 2015

#DeliverContinuously

56

TIME

57

Continuous DeliveryFrequent Release Events

WaterfallRare Release Events

Smoother EffortLess Risk

Effort PeaksHigh Risk

Time Time

Chan

ge

Chan

ge

Gene Kim’s “3 Ways” of DevOps

Client Logo

59

Automation is important

Comprehensive, fast and reliable test and

deployment automation

Trunk-based development &

continuous integration

Application code and app and system

configuration all in version control

Together, the factors on the left model

Continuous Delivery which leads to…

Lower levels of deployment pain

Higher levels of IT performance (higher

throughput & stability)

Lower change fail rates

Higher levels of org performance

(productivity, market share, profitability)

https://papers.ssrn.com/sol3/papers.cfm?abstract_id=2681909

60

https://xebialabs.com/periodic-table-of-devops-tools/

61

How to get started in DevOpsPart 3 – Change our Organisation

Cultu

re >

St

rate

gy

64

3 Organisational Practices

7. #BuildTrust8. #AlignToValue9. #OptimiseFlow

#BuildTrust

66

Highest predictor of performance

The Study of Information Flow: A Personal Journey; Westrum, Ron

67

How well do you identify with?• On my team, information is actively sought.• On my team, failures are learning opportunities, and messengers

of them are not punished.• On my team, responsibilities are shared.• On my team, cross-functional collaboration is encouraged and

rewarded.• On my team, failure causes enquiry.• On my team, new ideas are welcomed.

68

#AlignToValue

http://www.reactiongifs.com/r/conga-line.gif

www.devopsguys.comPhone: 0800 368 7378 | e-mail: team@devopsguys.com

@TheDevMgr

70

OrganizationRoles TeamsCadenceTaxonomyPlanPractices

Alignment

Autonomy

“Let’s try to give our teams three things…. Autonomy, Mastery,

Purpose”

71

Bugs

AlignmentEvery team and business tracks scenarios and features consistently.

AutonomyEvery team chooses how to manage stories and/or tasks

72#OptimiseFlow

73

James Smith
double logo in the bottom corner!

74

“Any optimisation not made at the constraint is

an illusion”“The Phoenix Project”

75

“Throughput is profitable, efficiency

is not” The Goal

76

Deployment Lead Time Predicts• Ability for Dev and Ops to share a “common source of truth”• Effectiveness of our automated testing in the deployment

pipeline• Ability to quickly deploy into production without causing chaos

and disruption• Ability to detect and correct problems through monitoring• Ability for Dev and Ops to work together in a way that is “win /

win”• How quickly developers can get feedback on their work

• Testing, deploying, production outcomes, customer outcomes

77

Thousands of teams +Micro services Architecture +

Continuous Delivery= 50 MILLION DEPLOYMENTS/YEAR

136K DEPLOYS/DAY

How to get started in DevOpsPart 4 – Summary

79

9 10 Steps To Getting Started in DevOps0. #SystemsThinking1. #MakeWorkVisible2. #MeasureWhatsImportant3. #ActOnFeedback4. #IdentifyTheGoal5. #BeAgile6. #DeliverContinuously7. #BuildTrust8. #AlignToValue9. #OptimiseForFlow

9 Steps To Getting Started in DevOps

Questions?

DevOps Solutions

DevOps Coaching

Workshops & Training

DevOps Engineering

Application Lifecyle Automation

DevOps Consultancy

DevOps, Agile & Cloud Strategy

ccelerateducate ransform

Contacts

Redgate Database DevOps Team databasedevops@red-gate.com

DevOpsGuys team@devopsguys.com

Recommended