27
Insightful Solutions :: Innovative Technologies Succeeding with Scrum Esteban Garcia

Succeeding with Scrum

Embed Size (px)

DESCRIPTION

Succeeding with Scrum presented at devLINK 2011.

Citation preview

Page 1: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Succeeding with Scrum

Esteban Garcia

Page 2: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Page 3: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Page 4: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

What is Scrum?

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

Page 5: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Characteristics

• Self-organizing teams

• Sprints

• Product Backlog

• User Stories

Page 6: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Goals

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

Page 7: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Traditional Approach

Analyze Design Code Test Release

Page 8: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

The Problem

Page 9: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Scrum Process

Page 10: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Scrum Process

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

Page 11: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Team dynamics

Page 12: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Backlogs

• Product Backlog• Sprint Backlog

Page 13: Succeeding with Scrum

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

Page 14: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Done

Page 15: Succeeding with Scrum

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

Page 16: Succeeding with Scrum

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

Page 17: Succeeding with Scrum

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

Page 18: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Burndown Chart

Start 1 2 3 4 5

0

10

20

30

40

50

60

70

80Sprint Burndown

Page 19: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Velocity Chart

1 2 3 4 50

5

10

15

20

25

Page 20: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Quality

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

Page 21: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Communication

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

Page 22: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Tools – Planning Poker

Page 23: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Tools – Task Board

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

Page 24: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Software Tools

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

Page 25: Succeeding with Scrum

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

Page 26: Succeeding with Scrum

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

Page 27: Succeeding with Scrum

Insightful Solutions :: Innovative Technologies

Thank You!www.agilethought.com

[email protected]://estebanfg.blogspot.com

@EstebanFGarcia