29
Agile In Practice Benjamin Booth Spring 2010

Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Embed Size (px)

Citation preview

Page 1: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Agile In PracticeBenjamin Booth

Spring 2010

Page 2: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

2ProprietaryProprietary 2

Author/Bloggerbenjaminbooth.com

Page 3: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

3ProprietaryProprietary 35

Programmer/Architect

Page 4: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

1970 – Winston Royce – first to describe Waterfall model Restrict change to improve predictions Drive with the plan Communicate with documents Programmers are interchangeable

4 4

Page 5: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Waterfall Is Expensive!

51% of all IT projects are either over time, over budget, and/or lacking critical features and requirements

Page 6: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Space shuttle flight control system Requirements are well defined Unlimited resources Useful for < 5% of all software projects

6 6

Page 7: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

The site shall have a ‘nice looking’ menu page for an existing restaurant’s seven year old website. (Nice looking is defined by the customer.)

The system shall have the ability to edit the menu online. Current menus are stored in a MS Word document.

The site shall have a ‘Suggestion’ capability. Users can use a form to submit suggestions which get stored and also emailed to the owner.

7 7

Page 8: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

People (users) are the focus Measure success with working software Expect and embrace change Use small, skilled, motivated teams

agilemanifesto.org

8 8

Page 9: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Japanese origin Whole team 1995 OOPSLA, by Jeff Sutherland and Ken

Schwaber Skeleton of practices and roles

9 9

Page 10: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

10ProprietaryProprietary 10

SCRUM Workflow

Page 11: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

“A pig and a chicken are walking down a road. The chicken looks at the pig and says, "Hey, why don't we open a restaurant?" The pig looks back at the chicken and says, "Good idea, what do you want to call it?" The chicken thinks about it and says, "Why don't we call it 'Ham and Eggs'?" "I don't think so," says the pig, "I'd be committed but you'd only be involved."

Product Owner: Manages the backlog A team member who is the voice of the customer

Scrum Master: Coach the process Team Member: Write code Everyone else is a “chicken”E

11 11

Page 12: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Backlog Sprint Burn

Down Sprint Backlog Past Backlogs

12 12

Page 13: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Store Backlogs electronically Use physical Task Boards

13

Page 14: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

14ProprietaryProprietary 14

• Backlog

• Sprint Backlog

• Taskboard

• Sprint Burn Down

Artifacts

Page 15: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

15ProprietaryProprietary 15

• Backlog

• Sprint Backlog

• Taskboard

• Sprint Burn Down

Artifacts

Page 16: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

16ProprietaryProprietary 16

Artifacts

• Backlog

• Sprint Backlog

• Taskboard

• Sprint Burn Down

Page 17: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

17ProprietaryProprietary 17

Artifacts

• Backlog

• Sprint Backlog

• Taskboard

• Sprint Burn Down

Page 18: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

What type of documentation would we use for

requirements in scrum?

Page 19: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Create min/max scale. Ex: 1 - 100 Id your easiest, medium, and hardest

stories. Easiest = 1 point Medium = 50 points Hardest = 100 points

19

Page 20: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Keep old Sprint Backlogs & Burndowns Keep old tasks Use for velocity calculations Helps identify trends

20 20

Page 21: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

• Each developer has a set of cards with estimation values

• A user story is presented

• Each developer picks the card representing the number of story points the user story should take

• Everyone then shows their cards

• Discussion happens until agreement on a number

• Repeat for each user story

• Schedule a sprint with the required number of story points based on your team’s velocity

21

Planning Poker

Page 22: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

easily navigate to the menu from the home page so that I can make a phone order (delivery)

be able to make suggestions for improvements to my overall dining experience

22 22

Page 23: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

create, update and delete menu items so that it stays interesting and keeps people coming back

generate a PDF of the menu so that I can give it to the printer for creating ‘real’ menus

get customer feedback emailed to me so I can quickly respond to problems and also pass on compliments to the staff

23 23

Page 24: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Access to real customers Proxy customer/user?

Large, distributed teams Scrum of scrums? Highly collaborative tools?

Industry misperceptions Engage and educate

Command-and-control culture Find a new job Start your own company

24 24

Page 25: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Waterfall or nothing still predominant Agile is highly adaptive, people centric SCRUM is an effective Agile process

skeleton If your process isn’t working adapt it

25 25

Page 26: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Introduce incrementally Business strategy and architecture a must Get everyone speaking the same

language

26 26

Page 27: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Allocate QA time explicitly Keep PM simple but do it Keep improving your process

27 27

Page 28: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

Q&A

Page 29: Agile In Practice Benjamin Booth Spring 2010. 2 Proprietary 2 Author/Blogger benjaminbooth.com

http://en.wikipedia.org/wiki/Agile_software_development http://www.waterfall2006.com/ http://www.agileManifesto.org/ http://www.codinghorror.com/blog/archives/000588.html http://www.drdobbsonline.net/architect/207100381 http://en.wikipedia.org/wiki/Scrum_%28management%29 http://spectrum.ieee.org/sep05/1685/failt1

29 29