80
Dominik Jungowski | CHIP Xonio Online GmbH Better Quality through Scrum Montag, 11. Oktober 2010

Better Quality through Scrum

Embed Size (px)

DESCRIPTION

An introduction to Scrum focusing on its effects on product quality. (Updated version - Oct '10)

Citation preview

Page 1: Better Quality through Scrum

Dominik Jungowski | CHIP Xonio Online GmbH

Better Quality through Scrum

Montag, 11. Oktober 2010

Page 2: Better Quality through Scrum

About me

• 26 years old

• Working at CHIP Xonio Online GmbH

• Developer and ScrumMaster for price comparison

• Part - time studies in psychology at FernUni Hagen

Montag, 11. Oktober 2010

Page 3: Better Quality through Scrum

• What is Scrum?

• How Scrum works

• Meetings, Artifacts & Roles

• Definition of Done

• Bugs

• Deductions

• Scrum at CHIP

Agenda

Montag, 11. Oktober 2010

Page 4: Better Quality through Scrum

What is Scrum?

Montag, 11. Oktober 2010

Page 5: Better Quality through Scrum

Scrum is...

like a recipe

Montag, 11. Oktober 2010

Page 6: Better Quality through Scrum

Scrum is not...

Montag, 11. Oktober 2010

Page 7: Better Quality through Scrum

A classical team

Project  manager

Stakeholder

Customer

Stakeholder

Customer

Developer

Developer

Developer

Developer

Montag, 11. Oktober 2010

Page 8: Better Quality through Scrum

A Scrum team

Product  Owner

Stakeholder

Customer

Stakeholder

Customer

ScrumMaster

Developer

Developer

Developer

Team

Montag, 11. Oktober 2010

Page 9: Better Quality through Scrum

How Scrum works

Montag, 11. Oktober 2010

Page 10: Better Quality through Scrum

How Scrum works

• Agile project management

• Iterations („sprints“)

• Framework

• Inspect & Adapt

Montag, 11. Oktober 2010

Page 11: Better Quality through Scrum

How Scrum works

ProjectProduct  Backlog

Sprint Product

Sprint Product

Sprint Product

Potentially shippable product after each sprint

Montag, 11. Oktober 2010

Page 12: Better Quality through Scrum

every dayregularly The Scrum Process

How Scrum works

Product  Backlog

Es?ma?onMee?ng

Es?mated  Product  Backlog

Sprint  Planning  I Sprint  Planning  II

Daily  Standup

Review  Mee?ngRetrospec?ve  Mee?ng

Sprint  Backlog

Montag, 11. Oktober 2010

Page 13: Better Quality through Scrum

Meetings & Artifacts

Montag, 11. Oktober 2010

Page 14: Better Quality through Scrum

Meetings & Artifacts

• Maintained by the Product Owner

• Consists of user stories

• Prioritized

• Estimated in Estimation Meeting

Product  Backlog

Montag, 11. Oktober 2010

Page 15: Better Quality through Scrum

Estimation MeetingWhat‘s about to come?

Montag, 11. Oktober 2010

Page 16: Better Quality through Scrum

Meetings & Artifacts

• User stories estimated in storypoints

• Estimated by whole team

• Knowing what will come

• Regularly

Es?ma?onMee?ng

Montag, 11. Oktober 2010

Page 17: Better Quality through Scrum

Meetings & Artifacts

Es?ma?onMee?ng

Montag, 11. Oktober 2010

Page 18: Better Quality through Scrum

Sprint Planning ISetting the goal

Montag, 11. Oktober 2010

Page 19: Better Quality through Scrum

Meetings & Artifacts

• Product Owner presents the Sprintgoal

• Product Owner presents the user stories

• Team pulls the user stories

• Acceptance criteria, etc. are written down

Sprint  Planning  I

Montag, 11. Oktober 2010

Page 20: Better Quality through Scrum

Sprint Planning IIHow to reach the goal

Montag, 11. Oktober 2010

Page 21: Better Quality through Scrum

Meetings & ArtifactsSprint  Planning  II

„The  result  of  this  mee/ng  is,  that  everybody  knows  how  the  team  can  cope  the  tasks  together.  You  do  not  decide  on  who  does  what.“

-­‐  Boris  Gloger,  Scrum:  Produkte  zuverlässig  und  schnell  entwickeln

Montag, 11. Oktober 2010

Page 22: Better Quality through Scrum

Meetings & Artifacts

• Tasks for selected user stories are generated

• Generated tasks take no longer than 8 hours / 1 workday

• Sprint Backlog is created

• Everybody knows about the „how“

Sprint  Planning  II

Montag, 11. Oktober 2010

Page 23: Better Quality through Scrum

Daily StandupWhere do we stand?

Montag, 11. Oktober 2010

Page 24: Better Quality through Scrum

Meetings & Artifacts

• Same time, same place, every day!

• Team sychronizes itself

• Sprint Backlog is updated

• Burndown Chart is updated

• Public

• Time for discussion afterwards

Daily  Standup

Montag, 11. Oktober 2010

Page 25: Better Quality through Scrum

Meetings & Artifacts

• What have I done since the last standup?

• What will I do until the next standup?

• What‘s impeding me?

Daily  Standup

Montag, 11. Oktober 2010

Page 26: Better Quality through Scrum

Montag, 11. Oktober 2010

Page 27: Better Quality through Scrum

Meetings & ArtifactsSprint  Backlog

User Story To DoWork in Progress

Done

Task

Task Task Task

Task Task

Story  1

Story  2

Story  3

Montag, 11. Oktober 2010

Page 28: Better Quality through Scrum

Meetings & ArtifactsSprint  Backlog

Montag, 11. Oktober 2010

Page 29: Better Quality through Scrum

Meetings & ArtifactsBurndown  Chart

!"#

!$#

%&# %&# %&#

%'#

(#

')#

)# )#

)#

*#

')#

'*#

%)#

%*#

!)#

!*#

$)#

%(+),# !)+),# )$+')# )&+')# )(+')#

Montag, 11. Oktober 2010

Page 30: Better Quality through Scrum

Review MeetingLet‘s show the cake!

Montag, 11. Oktober 2010

Page 31: Better Quality through Scrum

Meetings & ArtifactsReview  Mee?ng

„The  Scrum-­‐Team  shows  the  results  of  their  work  to  the  End  User.  The  team  members  want  to  have  feedback.  This  feedback  can  be  used  to  create  or  change  Backlog  Items.“

-­‐  Scrum  with  Boris  Gloger

Montag, 11. Oktober 2010

Page 32: Better Quality through Scrum

Meetings & Artifacts

• Only completed, working software is presented

• Slides are forbidden!

Nobody wants to eat half-done cake or (even worse) only see an image of it ;-) The cake is not a lie!

Review  Mee?ng

Montag, 11. Oktober 2010

Page 33: Better Quality through Scrum

Retrospective MeetingImproving the cake

Montag, 11. Oktober 2010

Page 34: Better Quality through Scrum

Meetings & Artifacts

• Team reflects on last sprint

• „Learning from the past for the future“

• Output:

– Things the Team wants to improve

– Impediments

• Similar to a debriefing

Retrospec?ve  Mee?ng

Montag, 11. Oktober 2010

Page 35: Better Quality through Scrum

Inspect & Adapt

Montag, 11. Oktober 2010

Page 36: Better Quality through Scrum

Tweaking your improvements

Montag, 11. Oktober 2010

Page 37: Better Quality through Scrum

Rat - Maze - ExperimentExperiment by Tolman & Honzik in 1930

3 groups / 17 days

Tweaking your improvements

Montag, 11. Oktober 2010

Page 38: Better Quality through Scrum

!"

#"

$"

%"

&"

'"

("

)"

*"

+"

#!"

#" $" %" &" '" (" )" *" +" #!" ##" #$" #%" #&" #'" #(" #)"

!"#$%&#'($$)$*'

+%,*'

-%.*'/'0%1#'/'(23#$45#6.'

,-./0"%"

Tweaking your improvements

Montag, 11. Oktober 2010

Page 39: Better Quality through Scrum

!"

#"

$"

%"

&"

'!"

'#"

'" #" (" $" )" %" *" &" +" '!" ''" '#" '(" '$" ')" '%" '*"

!"#$%&#'($$)$*'

+%,*'

-%.*'/'0%1#'/'(23#$45#6.'

,-./0"#"

,-./0"("

Tweaking your improvements

Montag, 11. Oktober 2010

Page 40: Better Quality through Scrum

!"

#"

$"

%"

&"

'!"

'#"

'" #" (" $" )" %" *" &" +" '!" ''" '#" '(" '$" ')" '%" '*"

!"#$%&#'($$)$*'

+%,*'

-%.*'/'0%1#'/'(23#$45#6.'

,-./0"'"

,-./0"#"

,-./0"("

Tweaking your improvements

Montag, 11. Oktober 2010

Page 41: Better Quality through Scrum

Reward your team!

Montag, 11. Oktober 2010

Page 42: Better Quality through Scrum

Have a BBQ!

Montag, 11. Oktober 2010

Page 43: Better Quality through Scrum

Roles

Montag, 11. Oktober 2010

Page 44: Better Quality through Scrum

Product Owner

• Responsible for the product

• Maintains the Product Backlog

• Has the vision

Montag, 11. Oktober 2010

Page 45: Better Quality through Scrum

Team

• Self - organized

• Delivers

• Delivers

• Delivers

Montag, 11. Oktober 2010

Page 46: Better Quality through Scrum

ScrumMaster

• Monitors the Scrum process

• Causes course correction

• Removes impediments

• Protects the team

Montag, 11. Oktober 2010

Page 47: Better Quality through Scrum

Impediments

• Disturb the team

• Hold back the team

• Impediment Backlog (like Sprint Backlog)

Montag, 11. Oktober 2010

Page 48: Better Quality through Scrum

Definition of Done

Montag, 11. Oktober 2010

Page 49: Better Quality through Scrum

Montag, 11. Oktober 2010

Page 50: Better Quality through Scrum

Definition of Done

User Story To DoWork in Progress

Done

Task

Task Tas Task

Task Task

Story  1

Story  2

Story  3

Montag, 11. Oktober 2010

Page 51: Better Quality through Scrum

Definition of Done

• Checklist

• Defines when Tasks can be moved to „Done“

• Defines when User Stories can be moved to „Done“

Montag, 11. Oktober 2010

Page 52: Better Quality through Scrum

Definition of Done

• Responsibility lies with the team

• Maintained by the team only

• Potentially shippable product every day

Montag, 11. Oktober 2010

Page 53: Better Quality through Scrum

Definition of Done

Example: DoD for Tasks

– Unit Tested

– Runs in the following browsers: Firefox, Internet Explorer, Chrome, Safari

– No broken unit tests

– Refactored

– Reviewed

Montag, 11. Oktober 2010

Page 54: Better Quality through Scrum

Definition of Done

Example: DoD for User Stories

– No broken unit tests

– Merged into trunk

• Additional criteria for specific user stories can be set in Sprint Planning I

Montag, 11. Oktober 2010

Page 55: Better Quality through Scrum

Bugs

Montag, 11. Oktober 2010

Page 56: Better Quality through Scrum

Bugs

• Put them on your Sprint Backlog

• Fix them immediately!

• Fixed at best until the next daily standup

• If possible: Don‘t use bugtrackers

Montag, 11. Oktober 2010

Page 57: Better Quality through Scrum

Bugs

User Story To DoWork in Progress

Done

Task

Task Tas Task

Task Task

Story  1

Story  2

Story  3

Bug

Montag, 11. Oktober 2010

Page 58: Better Quality through Scrum

Bugs

!"

#"

$!"

$#"

%!"

%#"

&!"

&#"

%" &" '" #" (" )" *" +" $!" $$" $&" $'" $#" $(" $)" $*" $+" %!" %$" %%" %&" %'" %#" %(" %)" %*" %+" &!" &$"

Montag, 11. Oktober 2010

Page 59: Better Quality through Scrum

Bugs

166,98

10,01

83,77

158,42

50,84

83,97 89,64

23,57

37,67

52,24

16,29 19,04

0

25,6

11,69

145,09

26,73 19,87

0,67 0

20

40

60

80

100

120

140

160

180

13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

Stu

nden

Montag, 11. Oktober 2010

Page 60: Better Quality through Scrum

Bugs

00.000

00.000

00.000

00.000

00.000

00.001

00.001

2 5 8 11 15 18 21 24 27 30

!"#$%&%'()*+,)-.(%

Montag, 11. Oktober 2010

Page 61: Better Quality through Scrum

Bugs

Example: DoD for Bugs

– Unit tested

– No broken unit tests

– Fixed in the following browsers: Firefox, Internet Explorer, Chrome, Safari

– Distributed to all web servers

Montag, 11. Oktober 2010

Page 62: Better Quality through Scrum

Bugs

What about old Bugtracker lists?

– Fix all the bugs or

– Delete the list

Montag, 11. Oktober 2010

Page 63: Better Quality through Scrum

Deductions

Montag, 11. Oktober 2010

Page 64: Better Quality through Scrum

Deductions

No upfront design constant refactoring

Montag, 11. Oktober 2010

Page 65: Better Quality through Scrum

Deductions

Working at the sameuser story Pair Programming

Montag, 11. Oktober 2010

Page 66: Better Quality through Scrum

Deductions

Code Reviews Pair Programming

Montag, 11. Oktober 2010

Page 67: Better Quality through Scrum

Deductions

Team commitment Collective Code Ownership

Montag, 11. Oktober 2010

Page 68: Better Quality through Scrum

Deductions

Pair Programming Collective Code Ownership

Montag, 11. Oktober 2010

Page 69: Better Quality through Scrum

Deductions

Nobody likes fixing bugs Test - DrivenDevelopment

Definition of Done

Fixing bugs immediately

Montag, 11. Oktober 2010

Page 70: Better Quality through Scrum

Deductions

Test - DrivenDevelopment

ContinuousIntegration

Montag, 11. Oktober 2010

Page 71: Better Quality through Scrum

Scrum at CHIP(Price comparison only)

Montag, 11. Oktober 2010

Page 72: Better Quality through Scrum

Bugs per Month

!"#$%&&&&&&'

(!#)(*****+'("#""""""""'

,'

$'

(,'

($'

!,'

!$'

&,'

!,,%'

!,,)'

!,(,'

Montag, 11. Oktober 2010

Page 73: Better Quality through Scrum

Items per Person

!"#$ %&"'$($

)$

&$

*$

'$

%($

%)$

%&$

%*$

+,-./$('$0$+12134$('$ +,-./$(5$0$+12134$(5$

Montag, 11. Oktober 2010

Page 74: Better Quality through Scrum

„Companies,  managers  should  understand,  that  their  employees  want  to  work.  Trust  them,  that  they  want  to  do  a  good  job.“

hLp://feedproxy.google.com/~r/borisgloger-­‐de/~3/U2zztp7jcW8/

Montag, 11. Oktober 2010

Page 75: Better Quality through Scrum

Questions?

Montag, 11. Oktober 2010

Page 76: Better Quality through Scrum

LiteratureKen Schwaber: „Agile Project Management with Scrum“

(Microsoft Press)

Montag, 11. Oktober 2010

Page 77: Better Quality through Scrum

LiteratureBoris Gloger: „Scrum: Produkte zuverlässig und schnell entwickeln“

(Hanser Fachbuch)

Montag, 11. Oktober 2010

Page 78: Better Quality through Scrum

LiteratureMike Cohn: „Succeeding with Agile: Software Development using Scrum“

(Addison-Wesley Signature)

Montag, 11. Oktober 2010

Page 79: Better Quality through Scrum

Developer for price comparisonand more - see www.chipxonio.de

We‘re hiring!

Montag, 11. Oktober 2010

Page 80: Better Quality through Scrum

Thank you!

Twitter: @djungowskiBlog: www.phpdevblog.net

Montag, 11. Oktober 2010