1)How DevOps Can Help Your Struggling Project Dave Thompson, CTO @ RightBrain Networks ... · 2016....
Transcript of 1)How DevOps Can Help Your Struggling Project Dave Thompson, CTO @ RightBrain Networks ... · 2016....
-
One Weird Trick
1)How DevOps Can Help Your Struggling Project
Dave Thompson, CTO @ RightBrain Networks6 December, 2016
-
What are we going to talk about?
l Failurel How to fail less
-
Projects Fail
l In a recent survey by Innotas[1], 55% of respondants reported they have experienced a failed project in the past 12 months.
l
l
l
l
l 1: https://www.innotas.com/wp-content/uploads/2016/05/The-Project-and-Portfolio-Management-Landscape-Report_2016_final.pdf
-
What is Project Failure?
l Proposed definition:l A project is a failure when it does not satisfy the
business objectives it was intended to achieve.
-
Why Do Projects Fail?
l Common factors include:l Poor alignment between projects, teams, and
business objectivesl Insufficient resourcesl Incomplete, contradictory, and unrealistic
requirements
-
How To Spot a Project in Danger
l High stress between teamsl Poor collaborationl Pattern of missed deadlinesl Too big to fail
-
There is a Solution!
l These are the problems that Agile set out to address, and that DevOps is continuing to battle.
-
But What Is DevOps?
-
DevOps Isn’t
l A bucket of toolsl A nifty new job title for systems engineersl Practices like CI, CD, etc.
-
How Much Would You Pay For...
l Predictable Deliveryl Improved Qualityl Collaboration Between Software and Systems
Engineers
-
We’ll Even Throw In
l Happier Engineers and Customers
-
Sounds Great, But How Do IDevOps?
-
Our Revolutionary, Patent-Pending DevOps Method
l Create a combined team of systems and software engineers
l Give them one important missionl Buy them a pizza occasionally
-
Wow, It’s That Easy!
Let’s See That Again in Slow Motion.
-
Create a Combined Team
l To do DevOps, it is necessary to combine Dev and Ops.
l You may be anxious, or even frightened. l This is normal. l Push those feelings deep, deep down. l Fun fact! Both Dev and Ops can smell your fear.
-
Give Them One Important Mission
l 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.
l By tasking the combined group with a single urgent objective, you can temporarily overcome their mutual distrust.
l If it worked for Churchill, Stalin, and FDR, it can probably work for you!
-
Buy Them Pizza Occasionally
l For group cohesion, the new team should be small enough to feed with two pizzas* (per Bezos rule), so this isn’t too expensive.
l As BF Skinner, Father of Operant Conditioning taught us, itermittant reinforcement is most effective in conditioning a response.
l
l
l *Beer is also popular.
-
How It Works
l Forming a combined team facilitates cross-functional communication.
l A shared objective orients the whole team, creating alignment which encourages trust that everyone is on the same side.
l Delegating authority to the team fosters a sense of ownership, allowing rapid decision-making and fast delivery.
-
Act Now, and We’ll Include
l Source Control, Versioning, and Release Management
l Continuous Integration and Deliveryl Infrastructure as Codel Monitoring, Alerting, and Log Aggregationl
-
At No Extra Charge!
l 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.
l They are an outcome, not a method, of DevOps
-
But How Does All This Junk Help My Project?
-
Oh, Right.
l Using the DevOps Method™, you’ve created a team with cross-functional skills, ready to take on a big mission.
l That big mission could be your project!
-
Scoping the Project
l Are the success criteria clear?l Is the size of the task appropriate for about 5-8
people?l Is it possible to delegate most decisions to the
team?l
-
Execution
l Typical Agile practices are recommended.l Servent leadership is critical to the success of
this model.l Clear priorities and ownership must be
maintained at all times.l Overcommunication is key.
-
But what If My Project is AlreadyFailing?
-
lThe War Room
l
l
l
-
The War Room
l This is probably obvious, but it’s easier to prevent a failure than to fix one.
l War Rooms are an extremely expensive emergency response. They should only be used in the face of catastrophe.
l
-
l Don’t Panic!l Identify the key contributorsl Form them into a team, per The Method™l Put them in a room togetherl Give them the mission of determining how to
make the project succeed.l Be generous with the pizza
How to War Room
-
How to War Room
l Be prepared for bad news. If you’re at this point, pleasant surprises are uncommon.
l To get back on track, you’ll probably need to radically cut scope, reset delivery expectations, make staffing changes, and other uncomfortable stuff.
-
What’s Next
l If your War Room effort has succeeded, you should take the team out to celebrate.
l You have just created a DevOps team the hard way!
-
Questions?