Date post: | 18-Jan-2016 |
Category: |
Documents |
Upload: | milton-nathaniel-howard |
View: | 222 times |
Download: | 0 times |
Definition of Done in the Age of DevOps
Intel Agile and Lean Development Conference - 2014
Piotr ŻmijewskiMay 22nd, 2014
Executive SummaryWe will try to find an answer to the following
questions:- What does it mean that
product/feature/functionality is done?- Is „time to deliver” still the same as it was 10
years ago?- Can I do anything to speed up releases of my
product and still maintain the quality of it?- Is there any way I could maximize productivity and
collaboration within my team?- Is following „latest and greatest” processes and
practices enough to avoid a spectacular failure? If so, why do accidents in space programs happen?
3
Agenda
• Introduction• Definition of Done• DevOps• DoD meets DevOps• Is a success guaranteed?• Conclusion and take aways
Introduction
Who am I?
Why do I speak about this topic?
5
Definition of Done: Why should I care?
• all stakeholders (team members) must share the same understanding on when a backlog item can be considered as "done"
• required to effectively plan, execute and monitor product development
• having a clear Definition of Done improves:– collaboration inside Agile
team,– transparency of work,– quality of deliverables.
Image source: google.com
6
The definition of „Definition of Done”…
DoD is a clear and concise, auditable checklist containing requirements that must be met in order to call iteration/release „complete”.• defines scope of work, • allows to track progress,• brings transparency within team,• conditions the completion of
features, sprints and releases, • is not static (but does not change
during the sprint).
DoD not satisfied -> work is not done!
7
Definition of Done: Why is it important?
Misunderstanding what the „done” looks like may lead to:• schedule slips, • missed milestones,• quality issues,• …• … project failure
Main principle: done means DONE.
8
When can we say that the work is done?
• Features developed• Code integrated and built• Code reviews done• Tests written and passing• Documentation updated• Binaries deployed• … is that it?
9
„Time to deliver”Times change…
A growing demand for the products to be released faster:• once a year• once a month• once a week• once a day• once an hour• …
Times change and so does „time to deliver”.
10
Can we deliver software faster?„Typical” software delivery process:
Main parties involved:
The more parties are involved the harder it is to deliver.
Plan Develop Validate Deploy Maintain
Dev team
QA team
Opsteam
11
„Not our problem”
12
Silo mentalitySilos:• no feeling of common goal• „us” vs „them”• limited knowledge sharing• communication overhead• blurred responsibility
Silo mentality reduces efficiency and morale in a team.
13
DevOps• Let’s merge all the
disciplines into one team.• DevOps = one team that
develops and maintains a product for its entire life-cycle.
• „You build it, you run it.”• All team members
responsible for all activities:– Develop– Test– Release– Deploy– Operate
DevOps = product management instead of project management.
DevOps
Dev
QA
Ops
14
Two-pizza teams• Team that could be fed with 2
pizzas.• Small size (6-10 people)
– Engineers– Design lead– Technical product manager– 2PTL
• Self-organizing & self-contained– free to execute relatively
autonomously to maximize its „fitness function”,
– sets internal priorities,– develops its own best practices,– no need to coordinate across
teams.„If you can’t feed a team with two pizzas, it’s too large.”
15
DoD meets DevOps
Dev mindset• Features developed• Code integrated
and built• Code reviews done• Tests written and
passing• Documentation
updated• Binaries deployed
DevOps brings new mindset to DoD.
DevOps mindset• Releasable• Deployable• Upgradeable• Reversible• Observable• Recoverable
VS
16
Do we have a guaranteed success?
• Is following „latest and greatest” processes and practices enough to avoid a failure?
The rabbit story
17
Conclusions and take aways
Share the same definition of done among all team members.
You need to deliver faster.
Break the silos.
„You build it, you run it.”
There is a chance you're missing something.
Keep the rabbit story in mind.
18
Q & A