devops requires agility

Post on 04-Jul-2015

244 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

DevOps emphasizes communication, collaboration and integration between the developers and the operations folks. Some teams figure out DevOps on their own, but most struggle in their effort to implement DevOps practices, such as, automated builds, automated tests, automated deployments, continuous integration, and continuous delivery. Many consider these practices essential for the success of any software development project, but they require a new way of thinking. In other words: DevOps requires agility.

TRANSCRIPT

Stephen D. Ritchie – Managing Consultant – Excella Consulting, Inc., 2300 Wilson Blvd, Suite 630, Arlington, VA 22201 – 703.840.8600 – http://excella.com

DevOps Requires Agility

Stephen D. Ritchie@RuthlessHelp

Oct 21, 2014

Agile Professionals MeetupOctober 2014

Stephen D. Ritchie

Live Tweet, Slides and Examples

• Twitter: @RuthlessHelp

• Slides:

http://www.slideshare.net/ruthlesshelp

• Code Samples:

http://github.com/ruthlesshelp

2

Stephen D. Ritchie 3

DevOps is the practice of operations and development engineers

participating together in the entire service lifecycle, from design

through the development process to production support.

http://theagileadmin.com/what-is-devops/

Stephen D. Ritchie

DevOps Defined

• Operations and Development Folks

– Working together

– Entire lifecycle

• Change in Mindset

– Values

– Principles

– Methods

– Practices

– Tools

4

Stephen D. Ritchie

Example: Etsy

• Overview, June 2012

– Launched June 18, 2005

– 875,000 active sellers

– 33.5 million items for sale

– $65.9 million in sales, May 2012

– 1.4 billion page views, May 2012

– 102 engineers

• How often do they release to Production?

5

Stephen D. Ritchie

Etsy Deployments

• Reported February 2011“In January (a month in which we did over a billion page views), code committed by 76 unique individuals was deployed to production by 63 different folks a total of 517 times.”

• Reported June 2012– 32 times per day

• Reported March 2014– 50 times per day

– http://www.infoq.com/news/2014/03/etsy-deploy-50-times-a-day

6

Stephen D. Ritchie

Let’s Step Back

• Dan Pink

– Drive: The surprising truth about what

motivates us

• RSA Animate video

– https://www.youtube.com/watch?v=u6XAPnuF

jJc

7

Stephen D. Ritchie 8

AutonomyMasteryPurpose

Stephen D. Ritchie

The Problem

SourceCode

1 23

9

Scott’sComputer

Susan’sComputer

You

1

2

3

Scott makes changes

Susan makes changes

You can’t build

Stephen D. Ritchie

What Went Wrong?

10

Conflicts

Missing Files

Breaking Changes

Stephen D. Ritchie 11

How do youfind

integrationissues?

Stephen D. Ritchie

Manual Integration

12

Build

Run Some Unit Tests

Perform Static Analysis

Clean + Rebuild All

Stephen D. Ritchie

Continuous Integration Blueprint

13

Stephen D. Ritchie

CI Server

SourceCode

14

Scott’sComputer

Susan’sComputer

You

CIServer

Stephen D. Ritchie

CI Server

15

Triggered by SCMand

Stephen D. Ritchie

CI – Per Commit Steps

16

1. Clean + Rebuild All

2. Run All Unit Tests

Coding Standards

3. AnalysisStatic Code Analysis

Stephen D. Ritchie

Continuous Integration Toolbox

17

Stephen D. Ritchie

CI Server – Jenkins

18

http://jenkins-ci.org/

Free

Open Source

Stephen D. Ritchie

CI Server – Cruise Control

19

http://cruisecontrol.sourceforge.net/

Free

Open Source

http://www.cruisecontrolnet.org/

Stephen D. Ritchie

CI Server – TeamCity

20

Commercial

Easy to Use

http://www.jetbrains.com/teamcity/

Stephen D. Ritchie 21

Perhaps an example would

be helpful

Stephen D. Ritchie

Continuous Integration Master Craft

22

Stephen D. Ritchie

The Master Craft

23

Unit TestingPlus

Code Coverage

Stephen D. Ritchie

The Master Craft

24

Integration Testing

System Testing

Acceptance Testing

Stephen D. Ritchie

The Master Craft

25

Code Quality

Metrics

Visualizations

Detections

Checks

Analysis

Stephen D. Ritchie

The Master Craft

26

ReportingAnd

Visibility

Stephen D. Ritchie

The Master Craft

27

PackagingAnd

Deployment

Stephen D. Ritchie

Closing Thought: CAMS

• Culture

– People and process first

– Virtuous discipline

• Automation

– Dev: building, testing, analyzing, packaging, deploying

– Ops: release management, provisioning, configuration management,

systems integration, monitoring and control, and orchestration

• Measurement

– Measure everything you can as often as you can

– Visibility and transparency

• Sharing

– Openness, share ideas and problems

– Confront problems, not each other

– Fail your way to success

28

Stephen D. Ritchie

Stephen’s Contact Info

• Email:

stephen.ritchie@excella.com

• LinkedIn:

http://www.linkedin.com/in/sritchie

29

top related