agile project inception workshop

61
Agile Project Inception Workshop Getting Aligned and Making Commitments 1 Bill Bourne & Caroline Sauvé Gatineau-Ottawa Agile Tour 2014 #GOAT14 November 24 th , 2014 This chart package will be available on-line, along with reference resources.

Upload: bill-bourne

Post on 16-Jul-2015

293 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Agile project inception workshop

Agile Project Inception

Workshop

Getting Aligned and Making Commitments

1

Bill Bourne & Caroline Sauvé

Gatineau-Ottawa Agile Tour 2014 #GOAT14

November 24th, 2014

This chart package will be available on-line, along with reference

resources.

Page 2: Agile project inception workshop

Caroline Sauvé

Lean and Agile Coach

@caro_sauve

https://agilemeditation.wordpress.com/

http://boldradius.com/blog

Who Are We?

Agile Project Inception #GOAT14 2

Bill Bourne

Development Leader

@abbourne

ca.linkedin.com/in/williambourne/

[email protected]

www.sourceform.ca

Page 3: Agile project inception workshop

Why go through project inception?

What problems are we solving?

3Agile Project Inception #GOAT14

Page 4: Agile project inception workshop

Project Family Car

Project Description: “As a driver I want to buy a 4

door car for my family. It should be economical and

reliable.”

Framed as a software project, before I “buy”, I need

to know:

What I will get?

How long it will take?

What it will cost?

Agile Project Inception #GOAT14 4

Page 5: Agile project inception workshop

Project Family Car

Project Description: “As a driver I want to buy a 4

door car for my family. It should be economical and

reliable.”

Agile Project Inception #GOAT14 5

“No problem! We should be able to get started in two

months and we’ll probably take about 3 months to build and

test it. Assuming (of course) that the team doesn’t get

pulled on to building or repairing another car. We’ll plan out

the build together and give you regular “show and tells” to

review progress every couple of weeks.”

In House Agile Development Point of View…

Page 6: Agile project inception workshop

Project Family Car

Project Description: “As a driver I want to buy a 4 door car

for my family. It should be economical and reliable.”

Agile Project Inception #GOAT14 6

“No problem! It will cost about $20K to $30K.

We’ll assign 1 junior engineer to build it.

We’ll deliver it in 2 to 3 months, and we’ll

give you demos of progress every 2 weeks.

We’ll work out the detailed features as we go.

Please sign here!!!”

Consultant Point of View…

Page 7: Agile project inception workshop

Project Family Car

Project Description: “As a driver I want to buy a 4 door car

for my family. It should be economical and reliable.”

Four Doors

Economical?

Reliable?

Family Car????

Framed as a software project, what do each of the

stakeholders believe will fulfill the vision or need expressed

by the driver?

Agile Project Inception #GOAT14 7

Page 8: Agile project inception workshop

Four door, Economical, Reliable

Agile Project Inception #GOAT14 8

Page 9: Agile project inception workshop

Project Family Car

Project Description: “As a driver I want to buy a 4 door

car for my family. It should be economical and reliable.”

Does the driver have a place to park the car?

Does the driver have license to drive? How long will it

take for him to get a license?

Does the driver have “family activities” that we should be

aware of?

Does the driver live in chilly Ottawa or warm San

Francisco?

Agile Project Inception #GOAT14 9

Page 10: Agile project inception workshop

Project Family Car

Project Description: “As a driver I want to buy a 4 door

car for my family. It should be economical and reliable.”

“The car needs to have a top speed that beats a Bugatti

Veyron… that’s never been done before.”

“The paint color has been changed 5 times because it’s not

quite right… the team is getting frustrated because they

aren’t done building the engine.”

“Driver wants the car to also be able to tow his new boat.”

Agile Project Inception #GOAT14 10

Page 11: Agile project inception workshop

10 Questions You’d be Crazy not to ask Before

you Start Your Next Project

Agile Project Inception #GOAT14 11

rAsk tough questions early, when its cheap to change

Take a few days or so for every couple of months of project duration

Project Bounds Shrink as Time goes by

Neighbors can be a big help

Too late! Find risks early

Page 12: Agile project inception workshop

The Source

Agile Project Inception #GOAT14 12

Project chartering is a gap in

Agile methods.

There’s value in identifying major

gaps early.

The Inception Deck is a

lightweight Agile project

chartering technique…

https://pragprog.com/book/jtrap/the-agile-samurai

Page 13: Agile project inception workshop

Project Inception Outcomes

1. Creating a Shared Understanding

2. Understanding and Managing Risk

3. Product Context and Estimation

4. Putting it All Together – Go Forward!

Workshop Rules:

A. Ask questions - we’re here to help!

B. Smart phones welcomed to support your

work.

C. Work as a team.

D. Have fun!

13

Page 14: Agile project inception workshop

Settle In With Your Team

Introduce yourself

Where you are from

What role you play on a project

What you are hoping to learn from this session

Bonus points (purely optional)

A past or current stressor on a project

Agile Project Inception #GOAT14 14

Page 15: Agile project inception workshop

Inception DeckA. Creating a Shared Understanding

1. Ask why we are here

2. Create an elevator pitch

3. Design a product box

4. Create a NOT list

B. Understanding and Managing Risk

5. Meet your neighbors

6. Show the solution

7. What keeps us up at night

C. Product Context and Estimation

8. Size it up

9. What’s going to give

D. Putting it All Together

10. What’s it going to take

Create the Project Bounds

Customize the Inception Deck

Keep it Agile and Fun!

Agile Project Inception #GOAT14 15

Page 16: Agile project inception workshop

Inception Deck Purpose

Eliminate confusion and misuderstanding

Set Expectations

Highlight Challenges

Get Alignment

Build the sense of Team

Do this before you write a single line of code!

Agile Project Inception #GOAT14 16

Page 17: Agile project inception workshop

Inception Deck Principles

It’s a “deck” not a document

Don’t get attached to the deck itself.

The 5 Cs:

Stimulate Conversations

Encourage Collaborations

Develop shared understanding – Consensus

Allow for Creativity

Its about Communication

Agile Project Inception #GOAT14 17

Page 18: Agile project inception workshop

Create a Shared UnderstandingA. Creating a Shared Understanding

1. Ask why we are here

2. Create an elevator pitch

3. Design a product box

4. Create a NOT list

B. Understanding and Managing Risk

5. Meet your neighbors

6. Show the solution

7. What keeps us up at night

C. Product Context and Estimation

8. Size it up

9. What’s going to give

D. Putting it All Together

10. What’s it going to take

Create the Project Bounds

Customize the Inception Deck

Keep it Agile and Fun!

Agile Project Inception #GOAT14 18

Page 19: Agile project inception workshop

Create Shared Understanding

1. Ask why we are here (Really)

Teams make 1000s of decisions and tradeoffs

Goal + Decisions = Impact

Team needs to know why…

Motivate the team!

Empower self-organization

Agile Project Inception #GOAT14 19

What is the #1 reason for doing this project?

Page 20: Agile project inception workshop

Create Shared Understanding

2. Create an Elevator Pitch – 30 seconds

Forces hard conversations happen:

Who is it for?

How is it different?

Why will people buy it?

What’s its value?

What’s the Minimum Viable Product (MVP)

Agile Project Inception #GOAT14 20

Brings Clarity and Focus to Project

Page 21: Agile project inception workshop

Create Shared Understanding

2. Create an Elevator Pitch – 30 seconds

Agile Project Inception #GOAT14 21

Page 22: Agile project inception workshop

Create Shared Understanding

2. Create an Elevator Pitch – 30 secondsProject Description: “As a driver I want to buy a 4 door car for my

family. It should be economical and reliable.”

For “drivers”

Who “want an economical and reliable car”

The “CarolineAndBillMobile”

Is a “Family Car”

That “hummm….”

Unlike “derp derp…”

Our product “meep meep meeps…”

Agile Project Inception #GOAT14 22

Page 23: Agile project inception workshop

Create Shared Understanding

3. What if your product was a box

What would it look like?

Would you buy?

Features -> Benefits

Agile Project Inception #GOAT14 23

Page 24: Agile project inception workshop

Create Shared Understanding

3. What if your product was a box

What would it look like?

Would you buy?

Features -> Benefits

Agile Project Inception #GOAT14 24

• 555 HP engine

• 0-100 km/h in 4.7 sec

• Brake energy regeneration

• All wheel drive

Features

Page 25: Agile project inception workshop

Create Shared Understanding

3. What if your product was a box

What would it look like?

Would you buy?

Features -> Benefits

Agile Project Inception #GOAT14 25

• 555 HP engine

• 0-100 km/h in 4.7 sec

• Brake energy regeneration

• All wheel drive

Features

• Pass easy on highway

• Impress your friends

• Save money

• Never get stuck

Benefits

Page 26: Agile project inception workshop

Create Shared Understanding

3. What if your product was a box – What’s on the box

List the benefits (at least 3 compelling reasons why someone would buy)

Create a slogan – something catchy

(go ahead and be cheesy!)

Draw your creation

Why would we buy?

Clarity

Focus

Alignment

Intent

Agile Project Inception #GOAT14 26

Page 27: Agile project inception workshop

Create Shared Understanding

4. Create a “Not” List (Scope)

How do you tell someone what’s IN scope for their project?

Agile Project Inception #GOAT14 27

Page 28: Agile project inception workshop

Create Shared Understanding

4. Create a “Not” List (Scope)

How do you tell someone what’s IN scope for their project?

Agile Project Inception #GOAT14 28

Page 29: Agile project inception workshop

Exercise

Lego Desk Accessory Builder Kit

Answer “why are we

here?”

Create the elevator

pitch

Design a product box

Create a “not” list

Agile Project Inception #GOAT14 29

Page 30: Agile project inception workshop

Understanding and Manage RiskA. Creating a Shared Understanding

1. Ask why we are here

2. Create an elevator pitch

3. Design a product box

4. Create a NOT list

B. Understanding and Managing Risk

5. Meet your neighbors

6. Show the solution

7. What keeps us up at night

C. Product Context and Estimation

8. Size it up

9. What’s going to give

D. Putting it All Together

10. What’s it going to take

Create the Project Bounds

Customize the Inception Deck

Keep it Agile and Fun!

Agile Project Inception #GOAT14 30

Page 31: Agile project inception workshop

Understanding & Managing Risk

5. Meet Your Neighbours

Your project community is always bigger than you think

Agile Project Inception #GOAT14 31

Page 32: Agile project inception workshop

Understanding & Managing Risk5. Meet Your Neighbours

Your project community is always bigger than you think

Agile Project Inception #GOAT14 32

Technical WritersTraining

Product Support

Help Desk

Professional Services

Security

Trials Team

Sales

Account Teams

Production

Support

Database

AdministratorsInstallation TeamsEveryone Else!

Page 33: Agile project inception workshop

Understanding & Managing Risk5. Meet Your Neighbours

The Greater Community:

Agile Project Inception #GOAT14 33

Page 34: Agile project inception workshop

Understanding & Managing Risk6. Show the Solution

You pick your architecture … when you pick your team!

Agile Project Inception #GOAT14 34

Page 35: Agile project inception workshop

Understanding & Managing Risk6. Show the Solution

Your pick your architecture … when you pick your team!

Agile Project Inception #GOAT14 35

Page 36: Agile project inception workshop

Understanding & Managing Risk7. What keeps us up at night?

Surface risky assumptions

New requirements and stakeholders

What you know you don’t know

What you don’t know, you don’t know

Agile Project Inception #GOAT14 36

Page 37: Agile project inception workshop

Understanding & Managing Risk7. What keeps us up at night?

Talk to your neighbours! Hear from the “other side” as well

as team members

If you hear something crazy… get it out there!

Better now than leaving it to later

But don’t create a:

“Whine chart”

“Cover Your Ass chart”

Agile Project Inception #GOAT14 37

Page 38: Agile project inception workshop

Understanding & Managing Risk7. What keeps us up at night?

Avoid whining and CYA

Agile Project Inception #GOAT14 38

Page 39: Agile project inception workshop

Understanding & Managing Risk7. What keeps us up at night?

Conduct a project “Pre-Mortem”

A. Get the team together … plan for an hour or so

B. Imagine a fiasco … the project totally failing…. so bad its

embarrassing

C. Ask “What could have caused this?” Each person (on their

own) generates possible reasons for the fiasco

D. Consolidate the Lists

E. Prioritize the items, and pick a few “hot topics”

F. Re-visit the plan

G. Rinse and Repeat – review the list every so often.

Agile Project Inception #GOAT14 39

Page 40: Agile project inception workshop

Exercise

Lego Desk Accessory Builder Kit

Meet the Neighbours

Conduct a mini Pre-

Mortem. Role play

some of the

neighbours.

Agile Project Inception #GOAT14 40

Page 41: Agile project inception workshop

Product Context and EstimationA. Creating a Shared Understanding

1. Ask why we are here

2. Create an elevator pitch

3. Design a product box

4. Create a NOT list

B. Understanding and Managing Risk

5. Meet your neighbors

6. Show the solution

7. What keeps us up at night

C. Product Context and Estimation

8. Size it up

9. What’s going to give

D. Putting it All Together

10. What’s it going to take

Create the Project Bounds

Customize the Inception Deck

Keep it Agile and Fun!

Agile Project Inception #GOAT14 41

1 ? 3 ? 6 mont hs?

Monday, 13 August, 12

Page 42: Agile project inception workshop

Product Context and Estimation8. Size It Up

Recognize you are guessing!

You do need a good, reviewed, Product Backlog to estimate

from.

If the Product Backlog is unstable, its too early to estimate

Use the “law of large numbers” to your advantage

The estimate for each User Story does not need to be

accurate, just unbiased.

Some will be high, some will be low… so the overall estimate

will come out “about” right

Agile Project Inception #GOAT14 42

Page 43: Agile project inception workshop

Product Context and Estimation8. Size It Up

Make sure your sponsors/stakeholders see this!

Agile Project Inception #GOAT14 43

Guestimation

Add user

Print itinerary

Cancel trip

Book permit

Update permit

Search

Create device

Add swap trade

Add option

Cancel plan

Master story list

Make sure your sponsors see this!

Monday, 13 August, 12

Page 44: Agile project inception workshop

Product Context and Estimation8. Size It Up

Think Small – Break up a large project if necessary

Agile Project Inception #GOAT14 44

Think small

1 2 3 6 9 12 months

Risk

Project length(Randy Mott)

Monday, 13 August, 12

Page 45: Agile project inception workshop

Product Context and Estimation9. Be Clear on What’s Going to Give

Need to deal with “too much to do and not enough time”

Agile Project Inception #GOAT14 45

Page 46: Agile project inception workshop

Product Context and Estimation9. Be Clear on What’s Going to Give

Need to deal with “too much to do and not enough time”

Agile Project Inception #GOAT14 46

Time Budget Quality Scope

Monday, 13 August, 12

Page 47: Agile project inception workshop

Product Context and Estimation9. Be Clear on What’s Going to Give

Use Trade-off Sliders

Agile Project Inception #GOAT14 47

• They can’t all be ‘ON’

• No two can occupy the same level

• Quality should probably be excluded, or always be ‘ON’

• Low quality is ultimately expensive, slows the project, and increases costs.

But these are not enough…..

Page 48: Agile project inception workshop

Product Context and Estimation9. Be Clear on What’s Going to Give

Use Trade-off Sliders

Agile Project Inception #GOAT14 48

Include other important stuff……

Page 49: Agile project inception workshop

Exercise

Lego Desk Accessory Builder Kit

Create Project Sliders

Agile Project Inception #GOAT14 49

Page 50: Agile project inception workshop

Putting It All TogetherA. Creating a Shared Understanding

1. Ask why we are here

2. Create an elevator pitch

3. Design a product box

4. Create a NOT list

B. Understanding and Managing Risk

5. Meet your neighbors

6. Show the solution

7. What keeps us up at night

C. Product Context and Estimation

8. Size it up

9. What’s going to give

D. Putting it All Together

10. What’s it going to take

Create the Project Bounds

Customize the Inception Deck

Keep it Agile and Fun!

Agile Project Inception #GOAT14 50

Time Budget Quality Scope

Monday, 13 August, 12

1. How much?

Monday, 13 August, 12

2. When?

Monday, 13 August, 12

Monday, 13 August, 12

How Much? When? What Will it Take?

“The Furious Four”

“What Every Executive Wants to Know”

Page 51: Agile project inception workshop

Putting it All Together10.What’s it Going to Take?

Agile Project Inception #GOAT14 51

Page 52: Agile project inception workshop

Putting it All Together10.What’s it Going to Take?

Be Clear on Your Team

Agile Project Inception #GOAT14 52

Put anyone (or skill) you feel is necessary for the success of the project on this list

Page 53: Agile project inception workshop

Putting it All Together10.What’s it Going to Take?

Be Clear on the Resources You Need

Agile Project Inception #GOAT14 53

Put the resources you need to be effective and complete the project

# Item Description Why

6 PC Desktops For developers

2 Windows Surface RT For testing with

3 Linux Servers For back end development & testing

Access to current

production system

Need logs and performance data

Dedicated LAN and

WiFi system & test

equipment

Network performance impairment test

equipment. Load balancer

To to test system

performance when

network is impaired.

Page 54: Agile project inception workshop

Putting it All Together10.What’s it Going to Take?

Clarify Who’s Calling the Shots

Agile Project Inception #GOAT14 54

Page 55: Agile project inception workshop

Create Your “Project Bounds”

Describes when an Agile Team needs to escalate

change decisions to stakeholders.

The Agile team must be allowed to be self-organizing and

make their own decisions on the day-to-day execution of

the project.

However at some point, when changes exceed a certain

agreed point, then the decisions on how to handle the

change must be brought to the “stakeholders”

Agile Project Inception #GOAT14 55

Time Budget Quality Scope

Monday, 13 August, 12

Page 56: Agile project inception workshop

Sample Project Bounds

Describe when an Agile Team need to escalate change decisions to stakeholders, and when stakeholders need to escalate to Agile Team

“Out of Bounds” is not always negative!

Agile Project Inception #GOAT14 56

Criteria Value Range Notes

Date: May 15th, 2015 +/- 4 Weeks

Scope: All product backlog epic stories

listed as “anchor”

30%-60% of the

epics listed as

“important”

Budget: $300,000 +/- 20%

Staffing 7 person scrum team assuming

regular vacation schedules

+/- 3 person

months

Loss of staff, extended illness,

new SME staff need to be

added, etc

Quality Whether this should be on the

project bounds is debatable

Other

Page 57: Agile project inception workshop

Customize the Inception Deck

Be flexible … you don’t always need every slide

Add or adapt slides if it will help with understanding

Keep the deck visible at all times

Update certain activities as it makes sense (e.g. elevator

pitch; what keeps you up at night?)

Several adaptations out there... Check ‘em out!

Agile Project Inception #GOAT14 57

Page 58: Agile project inception workshop

Summary

The inception deck outcomes…

1. Creating a Shared Understanding

2. Understanding and Managing Risk

3. Product Context and Estimation

4. Putting it All Together – Go Forward!

Hard questions, hard conversations…

It’s about establishing safety.

Cost of delay: client, team, business.

Agile Project Inception #GOAT14 58

Page 59: Agile project inception workshop

Parting Thoughts

Keep it Agile and Fun

Focus on the conversations, collaboration and shared understanding

Don’t be afraid to have the difficult conversations

You can use the Inception Deck at “Concept” and “Commit” Gates when using Agile under a Phase Gate Process Agile software development under a Phase Gate “top level”

product development process

Agile Project Inception #GOAT14 59

Page 60: Agile project inception workshop

References “The Agile Samurai”, Jonathan Rasmusson, https://pragprog.com/book/jtrap/the-agile-samurai

“Agile Project Initiation Techniques – The Inception Deck and Boot Camp”, Jonathan Rasmusson, http://rasmusson.files.wordpress.com/2008/01/rasmusson-agileinceptiondeckbootcamp.pdf

The Agile Warrior Blog – The Agile Inception Deck https://agilewarrior.wordpress.com/2010/11/06/the-agile-inception-deck/

The Agile Warrior Blog – Blank Agile Inception Deck Template https://agilewarrior.wordpress.com/2011/02/06/blank-agile-inception-deck-template/ and http://anoriginalidea.wordpress.com/2011/01/27/powerpoint-inception-deck-template-for-the-agile-samurai/

Nine Agile Steps that Injected magic into our project http://nomad8.com/9-agile-steps-that-injected-magic-into-our-project/

“Introducing Agility into a Phase Gate Process”, Construx, V1.1, 2011 http://www.construx.com/Resources/White_Papers/Introducing_Agility_into_a_Phase_Gate_Process/

An excellent paper on how Agile processes can fit effectively “under” a traditional end-to-end phase gate process.

Project Pre-Mortems: http://en.wikipedia.org/wiki/Pre-mortem https://hbr.org/2007/09/performing-a-project-premortem http://www.wdtb.noaa.gov/courses/risk-comms/module_2/documents/pre-mortem.pdf

“Project Success Sliders”, Mountain Goat Software http://www.mountaingoatsoftware.com/tools/project-success Also check out the other tools on Mike Cohn’s site

Agile Project Inception #GOAT14 60

Page 61: Agile project inception workshop

Thank you

Agile Project Inception #GOAT14 61