one weird trick

Download One Weird Trick

If you can't read please download the document

Upload: david-thompson

Post on 08-Jan-2017

21 views

Category:

Leadership & Management


3 download

TRANSCRIPT

One Weird Trick

How DevOps Can Help Your Struggling Project

Dave Thompson, CTO @ RightBrain Networks6 December, 2016

What are we going to talk about?

Failure

How to fail less

Projects Fail

In a recent survey by Innotas[1], 55% of respondants reported they have experienced a failed project in the past 12 months.

1: https://www.innotas.com/wp-content/uploads/2016/05/The-Project-and-Portfolio-Management-Landscape-Report_2016_final.pdf

What is Project Failure?

Proposed definition:A project is a failure when it does not satisfy the business objectives it was intended to achieve.

Why Do Projects Fail?

Common factors include:Poor alignment between projects, teams, and business objectives

Insufficient resources

Incomplete, contradictory, and unrealistic requirements

How To Spot a Project in Danger

High stress between teams

Poor collaboration

Pattern of missed deadlines

Too big to fail

There is a Solution!

These are the problems that Agile set out to address, and that DevOps is continuing to battle.

But What Is DevOps?

DevOps Isnt

A bucket of tools

A nifty new job title for systems engineers

Practices like CI, CD, etc.

How Much Would You Pay For...

Predictable Delivery

Improved Quality

Collaboration Between Software and Systems Engineers

Well Even Throw In

Happier Engineers and Customers

Sounds Great, But How Do I DevOps?

Our Revolutionary, Patent-Pending DevOps Method

Create a combined team of systems and software engineers

Give them one important mission

Buy them a pizza occasionally

Wow, Its That Easy!

Lets See That Again in Slow Motion.

Create a Combined Team

To do DevOps, it is necessary to combine Dev and Ops.

You may be anxious, or even frightened.

This is normal.

Push those feelings deep, deep down.

Fun fact! Both Dev and Ops can smell your fear.

Give Them One Important Mission

Under normal circumstances, Dev and Ops tribes would divide into homogeneous cliques and communicate only via highly-formalized rituals such as the Rite of Ticketing or the Circle of Blame.By tasking the combined group with a single urgent objective, you can temporarily overcome their mutual distrust.If it worked for Churchill, Stalin, and FDR, it can probably work for you!

Buy Them Pizza Occasionally

For group cohesion, the new team should be small enough to feed with two pizzas* (per Bezos rule), so this isnt too expensive.As BF Skinner, Father of Operant Conditioning taught us, itermittant reinforcement is most effective in conditioning a response.

*Beer is also popular.

How It Works

Forming a combined team facilitates cross-functional communication.

A shared objective orients the whole team, creating alignment which encourages trust that everyone is on the same side.

Delegating authority to the team fosters a sense of ownership, allowing rapid decision-making and fast delivery.

Act Now, and Well Include

Source Control, Versioning, and Release Management

Continuous Integration and Delivery

Infrastructure as Code

Monitoring, Alerting, and Log Aggregation

At No Extra Charge!

These technical tools naturally emerge from the collaboration between software and systems experts in their effort to help each other to succeed as a team.They are an outcome, not a method, of DevOps

But How Does All This Junk Help My Project?

Oh, Right.

Using the DevOps Method, youve created a team with cross-functional skills, ready to take on a big mission.

That big mission could be your project!

Scoping the Project

Are the success criteria clear?

Is the size of the task appropriate for about 5-8 people?

Is it possible to delegate most decisions to the team?

Execution

Typical Agile practices are recommended.

Servent leadership is critical to the success of this model.

Clear priorities and ownership must be maintained at all times.

Overcommunication is key.

But what If My Project is Already Failing?

The War Room

The War Room

This is probably obvious, but its easier to prevent a failure than to fix one.War Rooms are an extremely expensive emergency response. They should only be used in the face of catastrophe.

Dont Panic!

Identify the key contributors

Form them into a team, per The Method

Put them in a room together

Give them the mission of determining how to make the project succeed.

Be generous with the pizza

How to War Room

How to War Room

Be prepared for bad news. If youre at this point, pleasant surprises are uncommon.To get back on track, youll probably need to radically cut scope, reset delivery expectations, make staffing changes, and other uncomfortable stuff.

Whats Next

If your War Room effort has succeeded, you should take the team out to celebrate.You have just created a DevOps team the hard way!

Questions?