Succeeding with Scrum

Post on 11-May-2015

2.131 views 2 download

Tags:

description

Succeeding with Scrum presented at devLINK 2011.

Transcript of Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Succeeding with Scrum

Esteban Garcia

Insightful Solutions :: Innovative Technologies

Insightful Solutions :: Innovative Technologies

Insightful Solutions :: Innovative Technologies

What is Scrum?

• Agile development• Iterative• High-quality code• Shippable product with every iteration • High-priority features first

Insightful Solutions :: Innovative Technologies

Characteristics

• Self-organizing teams

• Sprints

• Product Backlog

• User Stories

Insightful Solutions :: Innovative Technologies

Goals

• Team environment • Communication• Quality product• Transparency• Agility

Insightful Solutions :: Innovative Technologies

Traditional Approach

Analyze Design Code Test Release

Insightful Solutions :: Innovative Technologies

The Problem

Insightful Solutions :: Innovative Technologies

Scrum Process

Insightful Solutions :: Innovative Technologies

Scrum Process

• Release Planning Meeting• Sprint• Sprint Planning Meeting• Sprint Review• Sprint Retrospective• Daily Scrum

Insightful Solutions :: Innovative Technologies

Team dynamics

Insightful Solutions :: Innovative Technologies

Backlogs

• Product Backlog• Sprint Backlog

Insightful Solutions :: Innovative Technologies

Burn-down chart

0 1 2 3 4 5 6 7 8 9 100

20

40

60

80

100

120

Daily ProgressIdeal

Insightful Solutions :: Innovative Technologies

Done

Insightful Solutions :: Innovative Technologies

Let’s build a website!

An E-commerce website is needed for your sportswear company

Product Backlog:Story Points

As a user, I can view the company’s inventory 5

As a user, I can purchase items from the inventory 13

As a user, I can view my orders 8

As a user, I can cancel my unfulfilled orders 5

As a user, I can track my order 5

As a user, I can make billing inquiries 3

As a user, I can chat with a sales agent 13

Story Points

As a user, I can view the company’s inventory

As a user, I can purchase items from the inventory

As a user, I can view my orders

As a user, I can cancel my unfulfilled orders

As a user, I can track my order

As a user, I can make billing inquiries

As a user, I can chat with a sales agent

Insightful Solutions :: Innovative Technologies

Sprint backlogBreak down the tasks from the product backlog and make a commitment for the sprint: “As a user, I can view the company’s inventory”

Task HoursSetup new web project 4Create web layout 16Create inventory schema 8Populate inventory tables 4Test/verify data schema 8Create LINQ data mappings 4Populate screen with inventory data 16Test inventory site 14

Total 74

Insightful Solutions :: Innovative Technologies

Calculating VelocityTask Hours Day 1 Day 2 Day 3 Day 4 Day 5

Setup new web project 4 0 0 0 0 0Create web layout 16 12 10 2 0 0Create inventory schema 8 8 0 0 0 0Populate inventory tables 4 4 4 0 0 0Test/verify data schema 8 8 8 0 0 0Create LINQ data mappings 4 4 4 2 0 0Populate screen with inventory data 16 16 16 16 8 0Test inventory site 14 14 14 14 6 0

Total 74 66 56 34 14 0

Task Hours Day 1 Day 2 Day 3 Day 4 Day 5

Setup new web project 4 0 0 0 0Create web layout 16 12 10 2 0Create inventory schema 8 8 0 0 0Populate inventory tables 4 4 4 0 0Test/verify data schema 8 8 8 0 0Create LINQ data mappings 4 4 4 2 0Populate screen with inventory data 16 16 16 16 8Test inventory site 14 14 14 14 6

Total 74 66 56 34 14

Task Hours Day 1 Day 2 Day 3 Day 4 Day 5

Setup new web project 4 0 0 0Create web layout 16 12 10 2Create inventory schema 8 8 0 0Populate inventory tables 4 4 4 0Test/verify data schema 8 8 8 0Create LINQ data mappings 4 4 4 2Populate screen with inventory data 16 16 16 16Test inventory site 14 14 14 14

Total 74 66 56 34

Task Hours Day 1 Day 2 Day 3 Day 4 Day 5

Setup new web project 4 0 0Create web layout 16 12 10Create inventory schema 8 8 0Populate inventory tables 4 4 4Test/verify data schema 8 8 8Create LINQ data mappings 4 4 4Populate screen with inventory data 16 16 16Test inventory site 14 14 14

Total 74 66 56

Task Hours Day 1 Day 2 Day 3 Day 4 Day 5

Setup new web project 4 0Create web layout 16 12Create inventory schema 8 8Populate inventory tables 4 4Test/verify data schema 8 8Create LINQ data mappings 4 4Populate screen with inventory data 16 16Test inventory site 14 14

Total 74 66

Insightful Solutions :: Innovative Technologies

Burndown Chart

Start 1 2 3 4 5

0

10

20

30

40

50

60

70

80Sprint Burndown

Insightful Solutions :: Innovative Technologies

Velocity Chart

1 2 3 4 50

5

10

15

20

25

Insightful Solutions :: Innovative Technologies

Quality

• “Production Ready” after every sprint• Never sacrifice quality• Run sprints through completion• Re-assess often

Insightful Solutions :: Innovative Technologies

Communication

• Sprint planning meetings• Sprint goal• Sprint back-log• Sprint burn-down chart• Daily scrum meetings

Insightful Solutions :: Innovative Technologies

Tools – Planning Poker

Insightful Solutions :: Innovative Technologies

Tools – Task Board

Source: http://www.mountaingoatsoftware.com/system/hidden_asset/file/29/MockedTaskBoard.jpg

Insightful Solutions :: Innovative Technologies

Software Tools

• Whiteboard• Excel• TFS (Scrum Templates)• TeamPulse• ScrumWorks• Rally Software

Insightful Solutions :: Innovative Technologies

Common pitfalls

• Mini-waterfalls in each sprint• Making changes to the process before trying it

out• ScrumMaster behaving as a team lead• Allowing sprints to go on longer than planned• Bug-creep• Developer-level burn-downs• QA not part of the process

Insightful Solutions :: Innovative Technologies

Conclusion

• Scrum allows for better communication• Scrum helps with transparency• Scrum exposes existing problems and

surfaces new problems as soon as they come up

• Scrum helps you learn from the past

Insightful Solutions :: Innovative Technologies

Thank You!www.agilethought.com

esteban.garcia@agilethought.comhttp://estebanfg.blogspot.com

@EstebanFGarcia