343
Blending User Experience & Business Analysis thinking in the Agile Customer Role 1

Agile Chennai Keynote by Jeff Patton

Embed Size (px)

DESCRIPTION

Blending User Experience & Business Analysis thinking in the Agile Customer Role presentation by Jeff Patton for Agile Chennai 2007 Conference http://agileindia.org/agilechennai07/index.htm

Citation preview

Page 1: Agile Chennai Keynote by Jeff Patton

Blending User

Experience & Business

Analysis thinking in the

Agile Customer Role

1

Page 2: Agile Chennai Keynote by Jeff Patton

Blending User

Experience & Business

Analysis thinking in the

Agile Customer Role

Jeff Patton

1

Page 3: Agile Chennai Keynote by Jeff Patton

Blending User

Experience & Business

Analysis thinking in the

Agile Customer Role

Jeff PattonThoughtWorks

[email protected]

1

Page 4: Agile Chennai Keynote by Jeff Patton

Blending User

Experience & Business

Analysis thinking in the

Agile Customer Role

Jeff PattonThoughtWorks

[email protected]

AgileProductDesign.com

1

Page 5: Agile Chennai Keynote by Jeff Patton

©Alistair Cockburn2005-6 Slide 3

PEOPLE Learn Skills in a 3-stage Progression: Follow / Break Away / Achieve Fluency

Level 1: following (shu)Learn “a technique that works”(Success = following the technique)

Level 2: breaking away ( ha )Learn limits of the techniqueLearn to shift between techniques

Level 3: fluent ( ri )Shift techniques at any momentPossibly unable to describe the shifts

We will use this progression throughout the course.

2

Page 6: Agile Chennai Keynote by Jeff Patton

3

Today I’ll cover 3 areas

1. What is user experience design?

2. Design & analysis practices useful for Agile customers

3. Incorporating design and analysis practices into an Agile

lifecycle

3

Page 7: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 4

By “Design” I mean the decisions we make regarding the software solution we choose to build.

4

Page 8: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 4

By “Design” I mean the decisions we make regarding the software solution we choose to build.

“The hardest single part of building a software system is deciding precisely what to build.”

-- Fred Brooks In his 1987 essay “No Silver Bullet”

4

Page 9: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 4

By “Design” I mean the decisions we make regarding the software solution we choose to build.

“The hardest single part of building a software system is deciding precisely what to build.”

-- Fred Brooks In his 1987 essay “No Silver Bullet”

"A requirement is a relationship to a decision: If you get to make or change the decision, it's design to you; if you don't get to make or change that decision, it's a requirement to you."

-- Alistair Cockburn

4

Page 10: Agile Chennai Keynote by Jeff Patton

5

Garrett’s Elements of User Experience Model

describes a series of dependent decisions.

5

Page 11: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 6

Software user experience is built from dependent layers

6

Page 12: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 6

Software user experience is built from dependent layers

Jesse James Garrett’s Elements of User Experience: http://www.jjg.net/elements/

6

Page 13: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 7

The surface layer describes finished visual design aspects

Surface

Skeleton

Structure

Scope

Strategy

7

Page 14: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 7

The surface layer describes finished visual design aspects

Surface

Skeleton

Structure

Scope

Strategy

7

Page 15: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 8

The skeleton describes screen layout and functional compartments in the screen

Surface

Skeleton

Structure

Scope

Strategy

8

Page 16: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 8

The skeleton describes screen layout and functional compartments in the screen

Surface

Skeleton

Structure

Scope

Strategy

8

Page 17: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 9

Structure defines navigation from place to place in the user interface

task panes

modal dialogs

modal wizards

Surface

Skeleton

Structure

Scope

Strategy

9

Page 18: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 10

The “places” in the user interface are built to support user-task-centric scope

user tasks:• enter numbers• enter text• enter formulas• format cells• sort information• filter information• aggregate information• graph data• save data• import data • export data• print • …..

Surface

Skeleton

Structure

Scope

Strategy

10

Page 19: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 10

The “places” in the user interface are built to support user-task-centric scope

user tasks:• enter numbers• enter text• enter formulas• format cells• sort information• filter information• aggregate information• graph data• save data• import data • export data• print • …..

Surface

Skeleton

Structure

Scope

Strategy

10

Page 20: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 11

Business goals drive user constituencies choices and contexts supported to form strategy

business goals:• displace competitive products• motivate sale of other

integrated products• establish file format as default

information sharing format• …user constituencies:• accountant• business planner• housewife• …usage contexts:• office desktop• laptop on airplane• pda in car• …

Surface

Skeleton

Structure

Scope

Strategy

11

Page 21: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 12

Garret’s Elements of UX stack can apply to the user experience of other complex products

12

Page 22: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 12

Garret’s Elements of UX stack can apply to the user experience of other complex products

These layers of concern apply not only to software but a

variety of products.

In particular, products that support a wide variety of user tasks benefit from this kind of

thinking.12

Page 23: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 13

Let’s look at the strategy for a product we all use: the place we live

goals:• live comfortably • eat well• stay clean• be healthy• keep up with Jones’s• …user constituencies:• me• spouse• child• …usage contexts:• suburban neighborhood• near good schools• near shopping• …

Surface

Skeleton

Structure

Scope

Strategy

13

Page 24: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 13

Let’s look at the strategy for a product we all use: the place we live

goals:• live comfortably • eat well• stay clean• be healthy• keep up with Jones’s• …user constituencies:• me• spouse• child• …usage contexts:• suburban neighborhood• near good schools• near shopping• …

Surface

Skeleton

Structure

Scope

Strategy

13

Page 25: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 14

What might I, and my other user constituencies, do to reach our goals?

user tasks:• store food• prepare food• eat food• sleep• bathe• store changes of clothing• stay out of rain• entertain guests• entertain self• …

Surface

Skeleton

Structure

Scope

Strategy

14

Page 26: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 14

What might I, and my other user constituencies, do to reach our goals?

user tasks:• store food• prepare food• eat food• sleep• bathe• store changes of clothing• stay out of rain• entertain guests• entertain self• …

Surface

Skeleton

Structure

Scope

Strategy

14

Page 27: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 15

Arranging tasks by affinity allows me to think about contexts that best support tasks. Contexts in a home have common names we all know.

Surface

Skeleton

Structure

Scope

Strategy

15

Page 28: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 15

Arranging tasks by affinity allows me to think about contexts that best support tasks. Contexts in a home have common names we all know.

Surface

Skeleton

Structure

Scope

Strategy

15

Page 29: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 16

When designing a particular interactioncontext such as a “kitchen,” I optimize layout and tool choices to support tasks I’ll do there

Surface

Skeleton

Structure

Scope

Strategy

16

Page 30: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 16

When designing a particular interactioncontext such as a “kitchen,” I optimize layout and tool choices to support tasks I’ll do there

Surface

Skeleton

Structure

Scope

Strategy

16

Page 31: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 17

“I’m going to spend a lot of time here, I want my experience to be as pleasant as possible…”

Surface

Skeleton

Structure

Scope

Strategy

17

Page 32: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 17

“I’m going to spend a lot of time here, I want my experience to be as pleasant as possible…”

Surface

Skeleton

Structure

Scope

Strategy

17

Page 33: Agile Chennai Keynote by Jeff Patton

18

Underneath Garrett’s model is a simple 3

layer model

18

Page 34: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

19

Page 35: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

19

Page 36: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

problem or goal

How I’d like to feel, or what I’d like to achieve

19

Page 37: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

problem or goal

How I’d like to feel, or what I’d like to achieve

take some

action

19

Page 38: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

problem or goal

How I’d like to feel, or what I’d like to achieve

take some

action

the worldinformation and tools

19

Page 39: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

problem or goal

How I’d like to feel, or what I’d like to achieve

take some

action action evaluation did that action deliver that results I

expected?

the worldinformation and tools

19

Page 40: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

problem or goal

How I’d like to feel, or what I’d like to achieve

take some

action action evaluation did that action deliver that results I

expected?

the worldinformation and tools

19

Page 41: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

problem or goal

How I’d like to feel, or what I’d like to achieve

take some

action action evaluation did that action deliver that results I

expected?

goal evaluation is my goal met or problem

resolved?

the worldinformation and tools

19

Page 42: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

problem or goal

How I’d like to feel, or what I’d like to achieve

take some

action action evaluation did that action deliver that results I

expected?

goal evaluation is my goal met or problem

resolved?

the worldinformation and tools

19

Page 43: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 19

Norman’s simple model for a human in pursuit of a goal

problem or goal

How I’d like to feel, or what I’d like to achieve

take some

action action evaluation did that action deliver that results I

expected?

goal evaluation is my goal met or problem

resolved?

the worldinformation and tools

19

Page 44: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 20

Distilling this down to goals, tasks, and tools

problem or goal

How I’d like to feel, or what I’d like to achieve

the worldinformation and tools

take some

action action evaluation did that action deliver that results I

expected?

goal evaluation is my goal met or problem

resolved?

20

Page 45: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 20

Distilling this down to goals, tasks, and tools

the worldinformation and tools

take some

action action evaluation did that action deliver that results I

expected?

goal evaluation is my goal met or problem

resolved?

goal

20

Page 46: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 20

Distilling this down to goals, tasks, and tools

the worldinformation and tools

goal

task

20

Page 47: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 20

Distilling this down to goals, tasks, and tools

goal

task

tool

20

Page 48: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 21

Software contains features that support a number of tasks and a number of goals

goals

tasks

tools

21

Page 49: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 21

software

Software contains features that support a number of tasks and a number of goals

goals

tasks

tools

21

Page 50: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 21

software

Software contains features that support a number of tasks and a number of goals

goals

tasks

features

21

Page 51: Agile Chennai Keynote by Jeff Patton

22

When we think about quality of use

experience, we need to re-think what we mean

by quality.

22

Page 52: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 23

Don Norman explains that beauty, at least for products, isn’t skin deep

“Attractive things make people feel good, which in turn makes them think more creatively…. making it easier for people to find solutions to the problems they encounter.”

-- Don Norman

23

Page 53: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 24

Norman explains three characteristics of design to observe: Visceral, Behavioral, & Reflective

Visceral

What is the products initial impact or appearance?

Behavioral

How does the object feel to use?

Reflective

What does the object make you think about? What does it say about it’s owner?

24

Page 54: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 24

Norman explains three characteristics of design to observe: Visceral, Behavioral, & Reflective

Visceral

What is the products initial impact or appearance?

Behavioral

How does the object feel to use?

Reflective

What does the object make you think about? What does it say about it’s owner?

24

Page 55: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 25

Noriaki Kano asks us to consider quality as being composed of objective and subjective elements

25

Page 56: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 25

Noriaki Kano asks us to consider quality as being composed of objective and subjective elements

“Discussions of quality have revolved around the two aspects of subjectivity and objectivity since the time of Aristotle.

25

Page 57: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 25

Noriaki Kano asks us to consider quality as being composed of objective and subjective elements

“Discussions of quality have revolved around the two aspects of subjectivity and objectivity since the time of Aristotle.

Embedded in this objective-subjective split is the idea that objective quality pertains to the ‘conformance to requirements’ while subjective quality pertains to the ‘satisfaction of users.’”

25

Page 58: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 25

Noriaki Kano asks us to consider quality as being composed of objective and subjective elements

“Discussions of quality have revolved around the two aspects of subjectivity and objectivity since the time of Aristotle.

Embedded in this objective-subjective split is the idea that objective quality pertains to the ‘conformance to requirements’ while subjective quality pertains to the ‘satisfaction of users.’”

--Noriaki Kano

25

Page 59: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 26

Kano explains three general classifications for product features: must-haves, one dimensionals, and delighters

26

Page 60: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 26

Kano explains three general classifications for product features: must-haves, one dimensionals, and delighters

Must-haves

26

Page 61: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 26

Kano explains three general classifications for product features: must-haves, one dimensionals, and delighters

Must-haves

The products must have this features for me to be happy

26

Page 62: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 26

Kano explains three general classifications for product features: must-haves, one dimensionals, and delighters

Must-haves

The products must have this features for me to be happy

One dimensionals

26

Page 63: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 26

Kano explains three general classifications for product features: must-haves, one dimensionals, and delighters

Must-haves

The products must have this features for me to be happy

One dimensionals

The more of this I get, the better

26

Page 64: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 26

Kano explains three general classifications for product features: must-haves, one dimensionals, and delighters

Must-haves

The products must have this features for me to be happy

One dimensionals

The more of this I get, the better

Delighters

26

Page 65: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 26

Kano explains three general classifications for product features: must-haves, one dimensionals, and delighters

Must-haves

The products must have this features for me to be happy

One dimensionals

The more of this I get, the better

Delighters

I love this element of the product!

26

Page 66: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 26

Kano explains three general classifications for product features: must-haves, one dimensionals, and delighters

Must-haves

The products must have this features for me to be happy

One dimensionals

The more of this I get, the better

Delighters

I love this element of the product!

“This car has many flaws. Buy it anyway. It’s so much fun to drive”

-- from a NY Times review of the Mini Cooper

26

Page 67: Agile Chennai Keynote by Jeff Patton

27

When we include user experience design into a holistic design process,

another model of problem analysis and solution definition

becomes useful

27

Page 68: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

28

Page 69: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

28

Page 70: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

proble

m analy

sis

28

Page 71: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

proble

m analy

sis

solut

ion de

finitio

n

28

Page 72: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

proble

m analy

sis

solut

ion de

finitio

n

28

Page 73: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

proble

m analy

sis

solut

ion de

finitio

n

28

Page 74: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

proble

m analy

sis

solut

ion de

finitio

n

28

Page 75: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

proble

m analy

sis

solut

ion de

finitio

n

28

Page 76: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

proble

m analy

sis

solut

ion de

finitio

n

28

Page 77: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

proble

m analy

sis

solut

ion de

finitio

n

28

Page 78: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

user interface design

proble

m analy

sis

solut

ion de

finitio

n

28

Page 79: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

proble

m analy

sis

solut

ion de

finitio

n

28

Page 80: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

proble

m analy

sis

solut

ion de

finitio

n

28

Page 81: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

28

Page 82: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

Often, design starts with a candidate solution in mind.

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

28

Page 83: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

Often, design starts with a candidate solution in mind. Exploring the problem helps validate the solution.

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

28

Page 84: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 28

Design alternates between analyzing the problem context and exploring possible solutions

Often, design starts with a candidate solution in mind. Exploring the problem helps validate the solution. As time passes, problem analysis activities are replaced by solution

definition activities.

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

28

Page 85: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 29

Design alternates between analyzing the problem context and exploring possible solutions

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

29

Page 86: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 29

Design alternates between analyzing the problem context and exploring possible solutions

Often, design starts with a candidate solution in mind.

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

29

Page 87: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 29

Design alternates between analyzing the problem context and exploring possible solutions

Often, design starts with a candidate solution in mind. Exploring the problem helps validate the solution.

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

29

Page 88: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 29

Design alternates between analyzing the problem context and exploring possible solutions

Often, design starts with a candidate solution in mind. Exploring the problem helps validate the solution. As time passes, problem analysis activities are replaced by solution

definition activities.

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

29

Page 89: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 29

Design alternates between analyzing the problem context and exploring possible solutions

Often, design starts with a candidate solution in mind. Exploring the problem helps validate the solution. As time passes, problem analysis activities are replaced by solution

definition activities.

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

29

Page 90: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 29

Design alternates between analyzing the problem context and exploring possible solutions

Often, design starts with a candidate solution in mind. Exploring the problem helps validate the solution. As time passes, problem analysis activities are replaced by solution

definition activities.

time

business problems & goals analysis

user research

user modeling

task analysis (how do users achieve goals today?)

task design(how might users better reach goals?)

user scenario writing

Incremental release planning

user interface design

user story writing

proble

m analy

sis

solut

ion de

finitio

n

29

Page 91: Agile Chennai Keynote by Jeff Patton

30

Now let’s look at practices that a

customer or product owner team users to move from problem analysis through to solution definition

30

Page 92: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 31

Let’s look at a few of many possible product owner team practices

31

Page 93: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 31

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

31

Page 94: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 31

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

31

Page 95: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 31

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

31

Page 96: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 31

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

31

Page 97: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 31

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

31

Page 98: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 31

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

31

Page 99: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 31

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

Planning & road-mapping

31

Page 100: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 32

Collaborative centers around model building

32

Page 101: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 32

Collaborative centers around model building

[a model is] a description or analogy used to help visualize something (as an

atom) that cannot be directly observed

- Merriam-Webster on-line

32

Page 102: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 32

Collaborative centers around model building

[a model is] a description or analogy used to help visualize something (as an

atom) that cannot be directly observed

- Merriam-Webster on-line

A goal of a model isn’t completeness or accuracy, but communication

32

Page 103: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 32

Collaborative centers around model building

[a model is] a description or analogy used to help visualize something (as an

atom) that cannot be directly observed

- Merriam-Webster on-line

A goal of a model isn’t completeness or accuracy, but communication

For our purposes:

a model is any visual representation of our current understanding of a concept

32

Page 104: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 32

Collaborative centers around model building

[a model is] a description or analogy used to help visualize something (as an

atom) that cannot be directly observed

- Merriam-Webster on-line

A goal of a model isn’t completeness or accuracy, but communication

For our purposes:

a model is any visual representation of our current understanding of a concept

We’ll build models to understand our problem context, and explore solutions

32

Page 105: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 33

Often when we verbally discuss ideas, we may incorrectly believe we have the same understanding

33

Page 106: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 34

Representing our ideas as models allows us to detect inconsistencies in our understanding

34

Page 107: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 35

Through discussion and iterative model building we arrive at a stronger shared understanding

35

Page 108: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 36

Using that common understanding we can work together toward shared objectives

36

Page 109: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 37

Low fidelity card models are used to facilitate discussions and build common understanding

37

Page 110: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 37

Low fidelity card models are used to facilitate discussions and build common understanding

Common model forms include: Affinity diagrams Chronological models

Decompositions Ad hoc charts

37

Page 111: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 37

Low fidelity card models are used to facilitate discussions and build common understanding

Common model forms include: Affinity diagrams Chronological models

Decompositions Ad hoc charts

Mix and match as you see fit

37

Page 112: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 38

Collaborative modeling looks like this

38

Page 113: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

Collaborative modeling sessions follow a simple, repeatable structure

39

Page 114: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

Collaborative modeling sessions follow a simple, repeatable structure

Use Collaborative Modeling Sessions to: Build up tacit shared knowledge within the team Build communication and collaboration skills within

the team Help the team to gel as an affective workgroup

39

Page 115: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

Collaborative modeling sessions follow a simple, repeatable structure

Use Collaborative Modeling Sessions to: Build up tacit shared knowledge within the team Build communication and collaboration skills within

the team Help the team to gel as an affective workgroup

Prepare Write a short statement to set goals and scope for

the session Identify participants – 4-8 is ideal Fill These Roles:

Information Suppliers Information Acquirers Information Modelers Facilitator Documenter

Schedule & set up work session facility

39

Page 116: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

1

Collaborative modeling sessions follow a simple, repeatable structure

2

Use Collaborative Modeling Sessions to: Build up tacit shared knowledge within the team Build communication and collaboration skills within

the team Help the team to gel as an affective workgroup

Prepare Write a short statement to set goals and scope for

the session Identify participants – 4-8 is ideal Fill These Roles:

Information Suppliers Information Acquirers Information Modelers Facilitator Documenter

Schedule & set up work session facility

Perform Kickoff with goals and scope Get information figuratively and literally on the table

using brainstorming or discussion Model the information to clarify, add details, distill

details, and understand relationships Close by summarizing the results, on camera if

possible

39

Page 117: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

1

Collaborative modeling sessions follow a simple, repeatable structure

2

Use Collaborative Modeling Sessions to: Build up tacit shared knowledge within the team Build communication and collaboration skills within

the team Help the team to gel as an affective workgroup

Prepare Write a short statement to set goals and scope for

the session Identify participants – 4-8 is ideal Fill These Roles:

Information Suppliers Information Acquirers Information Modelers Facilitator Documenter

Schedule & set up work session facility

Perform Kickoff with goals and scope Get information figuratively and literally on the table

using brainstorming or discussion Model the information to clarify, add details, distill

details, and understand relationships Close by summarizing the results, on camera if

possible

Document & Communicate

39

Page 118: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

1

Collaborative modeling sessions follow a simple, repeatable structure

2

Use Collaborative Modeling Sessions to: Build up tacit shared knowledge within the team Build communication and collaboration skills within

the team Help the team to gel as an affective workgroup

Prepare Write a short statement to set goals and scope for

the session Identify participants – 4-8 is ideal Fill These Roles:

Information Suppliers Information Acquirers Information Modelers Facilitator Documenter

Schedule & set up work session facility

Perform Kickoff with goals and scope Get information figuratively and literally on the table

using brainstorming or discussion Model the information to clarify, add details, distill

details, and understand relationships Close by summarizing the results, on camera if

possible

Document & Communicate Capture model with photo and/or movie

39

Page 119: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

1

Collaborative modeling sessions follow a simple, repeatable structure

2

Use Collaborative Modeling Sessions to: Build up tacit shared knowledge within the team Build communication and collaboration skills within

the team Help the team to gel as an affective workgroup

Prepare Write a short statement to set goals and scope for

the session Identify participants – 4-8 is ideal Fill These Roles:

Information Suppliers Information Acquirers Information Modelers Facilitator Documenter

Schedule & set up work session facility

Perform Kickoff with goals and scope Get information figuratively and literally on the table

using brainstorming or discussion Model the information to clarify, add details, distill

details, and understand relationships Close by summarizing the results, on camera if

possible

Document & Communicate Capture model with photo and/or movie Document as necessary

39

Page 120: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

1

Collaborative modeling sessions follow a simple, repeatable structure

2

Use Collaborative Modeling Sessions to: Build up tacit shared knowledge within the team Build communication and collaboration skills within

the team Help the team to gel as an affective workgroup

Prepare Write a short statement to set goals and scope for

the session Identify participants – 4-8 is ideal Fill These Roles:

Information Suppliers Information Acquirers Information Modelers Facilitator Documenter

Schedule & set up work session facility

Perform Kickoff with goals and scope Get information figuratively and literally on the table

using brainstorming or discussion Model the information to clarify, add details, distill

details, and understand relationships Close by summarizing the results, on camera if

possible

Document & Communicate Capture model with photo and/or movie Document as necessary Post in publicly accessible place

39

Page 121: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 39

1

Collaborative modeling sessions follow a simple, repeatable structure

2 3

Use Collaborative Modeling Sessions to: Build up tacit shared knowledge within the team Build communication and collaboration skills within

the team Help the team to gel as an affective workgroup

Prepare Write a short statement to set goals and scope for

the session Identify participants – 4-8 is ideal Fill These Roles:

Information Suppliers Information Acquirers Information Modelers Facilitator Documenter

Schedule & set up work session facility

Perform Kickoff with goals and scope Get information figuratively and literally on the table

using brainstorming or discussion Model the information to clarify, add details, distill

details, and understand relationships Close by summarizing the results, on camera if

possible

Document & Communicate Capture model with photo and/or movie Document as necessary Post in publicly accessible place Display as a poster

39

Page 122: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 40

Let’s look at a few of many possible product owner team practices

40

Page 123: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 40

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

40

Page 124: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 40

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

40

Page 125: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 40

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

40

Page 126: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 40

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

40

Page 127: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 40

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

40

Page 128: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 40

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

40

Page 129: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 40

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

Planning & road-mapping

40

Page 130: Agile Chennai Keynote by Jeff Patton

41

Business objectives describes why we’d choose

to buy or build the software

41

Page 131: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 42

Look for benefit to the buyer or builder of the software

42

Page 132: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 42

Look for benefit to the buyer or builder of the software

For software built for internal use: Save money Increase efficiency Solve problems that are costing money or decreasing efficiency Improve customer satisfaction Generate revenue by supporting or improving service offerings

42

Page 133: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 42

Look for benefit to the buyer or builder of the software

For software built for internal use: Save money Increase efficiency Solve problems that are costing money or decreasing efficiency Improve customer satisfaction Generate revenue by supporting or improving service offerings

For software built for commercial sale: Generate revenue through sale Improve/expand market share Open new markets

42

Page 134: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 42

Look for benefit to the buyer or builder of the software

For software built for internal use: Save money Increase efficiency Solve problems that are costing money or decreasing efficiency Improve customer satisfaction Generate revenue by supporting or improving service offerings

For software built for commercial sale: Generate revenue through sale Improve/expand market share Open new markets

The IRACIS* mnemonic helps us remember to look for business benefit that will

Increase Revenue Avoid Cost Increase Service

* Gane & Sarson’s IRACIS model, 1977 42

Page 135: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 43

When asking for business goals look for expressions of business problems or desired outcomes

43

Page 136: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 43

When asking for business goals look for expressions of business problems or desired outcomes

Express goals as business problems or business outcomes

43

Page 137: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 43

When asking for business goals look for expressions of business problems or desired outcomes

Express goals as business problems or business outcomes

It’s tempting for business stakeholders or users to describe their proposed solution as a goal

Solution-centric goal: “I’d like a cost effective ski parka” Problem-centric goal: “I’d like to stay warm and dry while skiing”

43

Page 138: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 43

When asking for business goals look for expressions of business problems or desired outcomes

Express goals as business problems or business outcomes

It’s tempting for business stakeholders or users to describe their proposed solution as a goal

Solution-centric goal: “I’d like a cost effective ski parka” Problem-centric goal: “I’d like to stay warm and dry while skiing”

Use root cause analysis to get behind solutions to goals and problems

Toyota’s “5 whys” describes root cause analysis Poking it with “the why stick” is often what my colleagues say

43

Page 139: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 44

Use a Goal Question Metric approach to identify appropriate goal metrics

44

Page 140: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 44

Use a Goal Question Metric approach to identify appropriate goal metrics

Leverage a simple approach from the GQM methodology

44

Page 141: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 44

Use a Goal Question Metric approach to identify appropriate goal metrics

Leverage a simple approach from the GQM methodology

1. Identify and prioritize goals

44

Page 142: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 44

Use a Goal Question Metric approach to identify appropriate goal metrics

Leverage a simple approach from the GQM methodology

1. Identify and prioritize goals

2. Question each goal:

If we were making progress toward this goal, how would we know?What would change in the business as a result of reaching this

goal?

44

Page 143: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 44

Use a Goal Question Metric approach to identify appropriate goal metrics

Leverage a simple approach from the GQM methodology

1. Identify and prioritize goals

2. Question each goal:

If we were making progress toward this goal, how would we know?What would change in the business as a result of reaching this

goal?

3. Use answers to these questions to identify metrics for goals

Metrics help quantify ROI Metrics helps justify ongoing development expense The desire to track metrics often generate important product

features

44

Page 144: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 45

Good business objectives help validate prospective solutions

45

Page 145: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 45

Good business objectives help validate prospective solutions

A good set of business objectives help us validate the solutions we choose to construct

45

Page 146: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 45

Good business objectives help validate prospective solutions

A good set of business objectives help us validate the solutions we choose to construct

A good set of business objectives are: short: a single page or slide prioritized measurable

45

Page 147: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 46

Let’s look at a few of many possible product owner team practices

46

Page 148: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 46

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

46

Page 149: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 46

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

46

Page 150: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 46

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

46

Page 151: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 46

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

46

Page 152: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 46

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

46

Page 153: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 46

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

46

Page 154: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 46

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

Planning & road-mapping

46

Page 155: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 47

Common models such as actors, roles, profiles, & personas describe users

47

Page 156: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 47

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

47

Page 157: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 47

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

47

Page 158: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 47

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

User Profile Adding summary information about the

types of users who fill a role or perform as an actor begins a process of “profiling”

47

Page 159: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 47

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

User Profile Adding summary information about the

types of users who fill a role or perform as an actor begins a process of “profiling”

Persona Choosing specific characteristics of a

person and compiling those into a archetypal description of that person creates a strong design target

On-line Shopper: browse and purchase merchandise on line

Customer Support Rep: aid customers over the phone and on line with issues

47

Page 160: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 48

Common models such as actors, roles, profiles, & personas describe users

Casual Browser: pass time by browsing products online

Comparison Shopper: compare price and features for items I wish to buy

Gift Shopper: find a gift for someone that likes the types of products this website sells

Impatient Buyer: find what I need and get through the checkout process quickly

48

Page 161: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 48

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

Casual Browser: pass time by browsing products online

Comparison Shopper: compare price and features for items I wish to buy

Gift Shopper: find a gift for someone that likes the types of products this website sells

Impatient Buyer: find what I need and get through the checkout process quickly

48

Page 162: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 48

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

Casual Browser: pass time by browsing products online

Comparison Shopper: compare price and features for items I wish to buy

Gift Shopper: find a gift for someone that likes the types of products this website sells

Impatient Buyer: find what I need and get through the checkout process quickly

48

Page 163: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 48

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

User Profile Adding summary information about the

types of users who fill a role or perform as an actor begins a process of “profiling”

Casual Browser: pass time by browsing products online

Comparison Shopper: compare price and features for items I wish to buy

Gift Shopper: find a gift for someone that likes the types of products this website sells

Impatient Buyer: find what I need and get through the checkout process quickly

48

Page 164: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 48

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

User Profile Adding summary information about the

types of users who fill a role or perform as an actor begins a process of “profiling”

Persona Choosing specific characteristics of a

person and compiling those into a archetypal description of that person creates a strong design target

Casual Browser: pass time by browsing products online

Comparison Shopper: compare price and features for items I wish to buy

Gift Shopper: find a gift for someone that likes the types of products this website sells

Impatient Buyer: find what I need and get through the checkout process quickly

48

Page 165: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 49

Common models such as actors, roles, profiles, & personas describe users

Web Shoppers

Users: 50,000 customer visit this sporting goods website monthly

Activities: browsing, price comparing, gift shopping, handling returns

Computer Skills: vary wildly from first time users to expert – although moderate computer skills are typical

Domain expertise: typical customers are avid outdoor enthusiasts…

49

Page 166: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 49

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

Web Shoppers

Users: 50,000 customer visit this sporting goods website monthly

Activities: browsing, price comparing, gift shopping, handling returns

Computer Skills: vary wildly from first time users to expert – although moderate computer skills are typical

Domain expertise: typical customers are avid outdoor enthusiasts…

49

Page 167: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 49

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

Web Shoppers

Users: 50,000 customer visit this sporting goods website monthly

Activities: browsing, price comparing, gift shopping, handling returns

Computer Skills: vary wildly from first time users to expert – although moderate computer skills are typical

Domain expertise: typical customers are avid outdoor enthusiasts…

49

Page 168: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 49

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

User Profile Adding summary information about the

types of users who fill a role or perform as an actor begins a process of “profiling”

Web Shoppers

Users: 50,000 customer visit this sporting goods website monthly

Activities: browsing, price comparing, gift shopping, handling returns

Computer Skills: vary wildly from first time users to expert – although moderate computer skills are typical

Domain expertise: typical customers are avid outdoor enthusiasts…

49

Page 169: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 49

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

User Profile Adding summary information about the

types of users who fill a role or perform as an actor begins a process of “profiling”

Persona Choosing specific characteristics of a

person and compiling those into a archetypal description of that person creates a strong design target

Web Shoppers

Users: 50,000 customer visit this sporting goods website monthly

Activities: browsing, price comparing, gift shopping, handling returns

Computer Skills: vary wildly from first time users to expert – although moderate computer skills are typical

Domain expertise: typical customers are avid outdoor enthusiasts…

49

Page 170: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 50

Common models such as actors, roles, profiles, & personas describe users

Steve races mountain bikes competitively. He shops the web on a regular basis to keep abreast of new equipment releases on the market, and to make sure he has the best equipment he can afford.

He’s used computers for years and considers himself an expert user. He maintains his own website and blogs about his races and upcoming schedule.

Steve relies on reviews from his peers to judge the quality of equipment. He often writes reviews of his own for stuff he’s tried out.

Steve Powellcompetitive mountain biker

“I’m looking for stuff that’ll help me stay ahead of the pack”

50

Page 171: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 50

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

Steve races mountain bikes competitively. He shops the web on a regular basis to keep abreast of new equipment releases on the market, and to make sure he has the best equipment he can afford.

He’s used computers for years and considers himself an expert user. He maintains his own website and blogs about his races and upcoming schedule.

Steve relies on reviews from his peers to judge the quality of equipment. He often writes reviews of his own for stuff he’s tried out.

Steve Powellcompetitive mountain biker

“I’m looking for stuff that’ll help me stay ahead of the pack”

50

Page 172: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 50

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change Steve races mountain bikes

competitively. He shops the web on a regular basis to keep abreast of new equipment releases on the market, and to make sure he has the best equipment he can afford.

He’s used computers for years and considers himself an expert user. He maintains his own website and blogs about his races and upcoming schedule.

Steve relies on reviews from his peers to judge the quality of equipment. He often writes reviews of his own for stuff he’s tried out.

Steve Powellcompetitive mountain biker

“I’m looking for stuff that’ll help me stay ahead of the pack”

50

Page 173: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 50

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

User Profile Adding summary information about the

types of users who fill a role or perform as an actor begins a process of “profiling”

Steve races mountain bikes competitively. He shops the web on a regular basis to keep abreast of new equipment releases on the market, and to make sure he has the best equipment he can afford.

He’s used computers for years and considers himself an expert user. He maintains his own website and blogs about his races and upcoming schedule.

Steve relies on reviews from his peers to judge the quality of equipment. He often writes reviews of his own for stuff he’s tried out.

Steve Powellcompetitive mountain biker

“I’m looking for stuff that’ll help me stay ahead of the pack”

50

Page 174: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 50

Common models such as actors, roles, profiles, & personas describe users

Actor & Goal Often a job title or the common name

for the type of user in a system

User Role Short name describing a user in pursuit

of a goal – users change roles as their goals change

User Profile Adding summary information about the

types of users who fill a role or perform as an actor begins a process of “profiling”

Persona Choosing specific characteristics of a

person and compiling those into a archetypal description of that person creates a strong design target

Steve races mountain bikes competitively. He shops the web on a regular basis to keep abreast of new equipment releases on the market, and to make sure he has the best equipment he can afford.

He’s used computers for years and considers himself an expert user. He maintains his own website and blogs about his races and upcoming schedule.

Steve relies on reviews from his peers to judge the quality of equipment. He often writes reviews of his own for stuff he’s tried out.

Steve Powellcompetitive mountain biker

“I’m looking for stuff that’ll help me stay ahead of the pack”

50

Page 175: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 51

software

Software products support a variety of users and their goals.

tasks

features

goals

51

Page 176: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 51

software

Software products support a variety of users and their goals.

tasks

features

goals

51

Page 177: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 52

software

In organizations where users are paid to use the software, user goals are driven by business goals

tasks

features

goals

52

Page 178: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 52

software

In organizations where users are paid to use the software, user goals are driven by business goals

tasks

features

goals

52

Page 179: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 52

software

In organizations where users are paid to use the software, user goals are driven by business goals

tasks

features

goals

All these goals mean lots of tasks, and lots of potential

features in our software

52

Page 180: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 53

Design imperatives describe good characteristics the software should have based on the user type

53

Page 181: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 53

Design imperatives describe good characteristics the software should have based on the user type

Inside your user model are clues about the type of user interface and user interface characteristics needed by your user.

53

Page 182: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 53

Design imperatives describe good characteristics the software should have based on the user type

Inside your user model are clues about the type of user interface and user interface characteristics needed by your user.

Document these as design imperatives.

53

Page 183: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 53

Design imperatives describe good characteristics the software should have based on the user type

Inside your user model are clues about the type of user interface and user interface characteristics needed by your user.

Document these as design imperatives.

Think about: ease of learning retention of learning efficiency of interaction reliability of interaction

53

Page 184: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 53

Design imperatives describe good characteristics the software should have based on the user type

Inside your user model are clues about the type of user interface and user interface characteristics needed by your user.

Document these as design imperatives.

Think about: ease of learning retention of learning efficiency of interaction reliability of interaction

user satisfaction user convenience necessity for proficiency importance of accuracy

53

Page 185: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 54

A good user model helps us identify functional scope and necessary characteristics of the software

54

Page 186: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 54

A good user model helps us identify functional scope and necessary characteristics of the software

A good user model helps: identify functional scope identify necessary characteristics of the software stakeholders understand and empathize with target users validate proposed software solutions

54

Page 187: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 54

A good user model helps us identify functional scope and necessary characteristics of the software

A good user model helps: identify functional scope identify necessary characteristics of the software stakeholders understand and empathize with target users validate proposed software solutions

An effective user model is prioritized to help rule out unnecessary functional scope and design imperatives

54

Page 188: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 55

Let’s look at a few of many possible product owner team practices

55

Page 189: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 55

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

55

Page 190: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 55

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

55

Page 191: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 55

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

55

Page 192: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 55

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

55

Page 193: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 55

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

55

Page 194: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 55

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

55

Page 195: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 55

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

Planning & road-mapping

55

Page 196: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

56

Page 197: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing time

56

Page 198: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing time

time

56

Page 199: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

time

56

Page 200: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

time

Activity 1

56

Page 201: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

time

Activity 1

56

Page 202: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Task 1

time

Activity 1

56

Page 203: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Task 1

Task 2

time

Activity 1

56

Page 204: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Task 1

Task 2

Task 3

time

Activity 1

56

Page 205: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Task 1

Task 2

Task 3

Task 4

time

Activity 1

56

Page 206: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

56

Page 207: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Fill in task details such as business rules or possible features that satisfy the tasks below each task.

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

56

Page 208: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Fill in task details such as business rules or possible features that satisfy the tasks below each task.

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

56

Page 209: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Fill in task details such as business rules or possible features that satisfy the tasks below each task.

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

Task Detail(Story)

56

Page 210: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Fill in task details such as business rules or possible features that satisfy the tasks below each task.

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

56

Page 211: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Fill in task details such as business rules or possible features that satisfy the tasks below each task.

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

56

Page 212: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Fill in task details such as business rules or possible features that satisfy the tasks below each task.

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

56

Page 213: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 56

Use simplified workflow models to organize user tasks and represent workflow – this is a Story Map

Draw a left to right axis representing timeIdentify high level activities performed by users of the system and place them above the time axis in the order that seams reasonable

Within each activity, organize tasks in the order they’re most likely completed. There’s likely variation in how they’re completed – so arrange them in a typical order.

If you had to explain the process to someone, arrange them in the order you’d tell the story.

Fill in task details such as business rules or possible features that satisfy the tasks below each task.

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

56

Page 214: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 57

A good User Story as used in Scrum and other Agile approaches describes the use of the system

57

Page 215: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 57

A good User Story as used in Scrum and other Agile approaches describes the use of the system

The user story form considered “best practice” in Scrum references your user model and user goals.

57

Page 216: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 57

A good User Story as used in Scrum and other Agile approaches describes the use of the system

The user story form considered “best practice” in Scrum references your user model and user goals.

As a [type of user]

I want to [perform some task]

so that I can [achieve some goal]

57

Page 217: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 57

A good User Story as used in Scrum and other Agile approaches describes the use of the system

The user story form considered “best practice” in Scrum references your user model and user goals.

As a [type of user]

I want to [perform some task]

so that I can [achieve some goal]

As a harried shopper

I want to locate a CD in the store

so that I can purchase it quickly, leave, and continue with my day.

57

Page 218: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 58

In practice user stories may be written to describe user tasks or the tools that support them

software

tasks

features

goals

58

Page 219: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 58

user story

In practice user stories may be written to describe user tasks or the tools that support them

software

tasks

features

goals

58

Page 220: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 58

user story

In practice user stories may be written to describe user tasks or the tools that support them

software

tasks

features

goalsAs a harried shopper

I want to locate a specific CD in the store

More task-centric:

58

Page 221: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 58

user story

In practice user stories may be written to describe user tasks or the tools that support them

software

tasks

features

goalsAs a harried shopper

I want to locate a specific CD in the store

As a harried shopper

I want to enter a CD title into the search box and initiate a product search

More task-centric:

More tool-centric:

58

Page 222: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 58

user story

In practice user stories may be written to describe user tasks or the tools that support them

software

tasks

features

goalsAs a harried shopper

I want to locate a specific CD in the store

As a harried shopper

I want to enter a CD title into the search box and initiate a product search

More task-centric:

More tool-centric:

start with task-centric user stories early in product

discussion and modeling

fill in feature-centric stories till later

58

Page 223: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 59

Building a workflow model helps facilitate discussion – but requires a bit of space

59

Page 224: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 59

Building a workflow model helps facilitate discussion – but requires a bit of space

59

Page 225: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 60

Workflow or a reasonable sized system can fill a room

60

Page 226: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 60

Workflow or a reasonable sized system can fill a room

60

Page 227: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 61

Discussions in front of workflow models are more productive

61

Page 228: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 62

Let’s look at a few of many possible product owner team practices

62

Page 229: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 62

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

62

Page 230: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 62

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

62

Page 231: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 62

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

62

Page 232: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 62

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

62

Page 233: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 62

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

62

Page 234: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 62

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

62

Page 235: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 62

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

Planning & road-mapping

62

Page 236: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 63

Build paper prototypes from repositionable components

63

Page 237: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 64

Test paper prototypes to determine if they’re usable

64

Page 238: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 65

Finished prototypes are pieced together from moveable and removable paper components

65

Page 239: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 66

Build navigation maps and storyboards to communicate UI design

66

Page 240: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 66

Build navigation maps and storyboards to communicate UI design

66

Page 241: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 67

Let’s look at a few of many possible product owner team practices

67

Page 242: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 67

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

67

Page 243: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 67

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

67

Page 244: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 67

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

67

Page 245: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 67

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

67

Page 246: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 67

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

67

Page 247: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 67

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

67

Page 248: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 67

Let’s look at a few of many possible product owner team practices

Facilitated collaborative work

Modeling business objectives

Modeling Users

Modeling workflow as user stories: User Story Mapping

Paper prototyping and usability testing

Planning & road-mapping

67

Page 249: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 68

Prioritize task details by necessity to help visualize layers of functionality across the business process

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

68

Page 250: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 68

Prioritize task details by necessity to help visualize layers of functionality across the business process

Draw a vertical axis to represent necessity

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

68

Page 251: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 68

Prioritize task details by necessity to help visualize layers of functionality across the business process

Draw a vertical axis to represent necessity

Task 1

Task 2

Task 3

Task 4

Task 5

time

Activity 1

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)

Task Detail(Story)ne

cess

ity

68

Page 252: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 69

Identify releases in spans of coherent functionality

time

optio

nalit

y

necessary

lessoptional

moreoptional

activity 1 activity 2 activity 3 activity 4

69

Page 253: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 69

Identify releases in spans of coherent functionality

Choose coherent groups of features that consider the span of business functionality and user activities.

time

optio

nalit

y

necessary

lessoptional

moreoptional

activity 1 activity 2 activity 3 activity 4

69

Page 254: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 69

Identify releases in spans of coherent functionality

Choose coherent groups of features that consider the span of business functionality and user activities.

Support all necessary activities with the first release

time

optio

nalit

y

necessary

lessoptional

moreoptional

activity 1 activity 2 activity 3 activity 4

69

Page 255: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 69

Identify releases in spans of coherent functionality

Choose coherent groups of features that consider the span of business functionality and user activities.

Support all necessary activities with the first release

Improve activity support with subsequent releases

time

optio

nalit

y

necessary

lessoptional

moreoptional

activity 1 activity 2 activity 3 activity 4

69

Page 256: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 69

Identify releases in spans of coherent functionality

Choose coherent groups of features that consider the span of business functionality and user activities.

Support all necessary activities with the first release

Improve activity support with subsequent releases

time

optio

nalit

y

necessary

lessoptional

moreoptional

activity 1 activity 2 activity 3 activity 4

first release

69

Page 257: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 69

Identify releases in spans of coherent functionality

Choose coherent groups of features that consider the span of business functionality and user activities.

Support all necessary activities with the first release

Improve activity support with subsequent releases

time

optio

nalit

y

necessary

lessoptional

moreoptional

activity 1 activity 2 activity 3 activity 4

first release

second release

69

Page 258: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 69

Identify releases in spans of coherent functionality

Choose coherent groups of features that consider the span of business functionality and user activities.

Support all necessary activities with the first release

Improve activity support with subsequent releases

time

optio

nalit

y

necessary

lessoptional

moreoptional

activity 1 activity 2 activity 3 activity 4

first release

second release

third release

69

Page 259: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 70

Distill your release plan into a roadmap

70

Page 260: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 70

Distill your release plan into a roadmap

A roadmap serves to clearly communicate release level objectives to stakeholders

70

Page 261: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 70

Distill your release plan into a roadmap

A roadmap serves to clearly communicate release level objectives to stakeholders

For each incremental release: Give the release a name or simple statement describing it’s purpose Write a short sentence or two describing what value the business gets from

the release Write a short sentence or two describing what value the users get from the

release

70

Page 262: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 70

Distill your release plan into a roadmap

EasyPOS Point of Sale Software

Release 1: Replace the cash register

Business: replaces gets rid of old manual cash registers and gets accurate

up the minute sales information across locations

Users: Cashiers get an easier to use cash register that helps them make

less mistakes, correct them when they do, and save time balancing cash

drawers every night.

A roadmap serves to clearly communicate release level objectives to stakeholders

For each incremental release: Give the release a name or simple statement describing it’s purpose Write a short sentence or two describing what value the business gets from

the release Write a short sentence or two describing what value the users get from the

release

70

Page 263: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 71

“Bucketing” groups of major functionality or areas of task support is sometimes easier than feature by feature prioritization

71

Page 264: Agile Chennai Keynote by Jeff Patton

72

Where to do all those practices fit in a typical

Agile lifecycle?

72

Page 265: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 73

The simple Scrum snowman process model

73

Page 266: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 73

The simple Scrum snowman process model

73

Page 267: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 73

The simple Scrum snowman process model

73

Page 268: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 73

The simple Scrum snowman process model

73

Page 269: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 73

The simple Scrum snowman process model

73

Page 270: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 73

The simple Scrum snowman process model

73

Page 271: Agile Chennai Keynote by Jeff Patton

74

But, it’s commonly understood the

snowman is missing a couple balls…

Or, that it takes a taller snowman to model product concerns

74

Page 272: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

User Story

75

Page 273: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

User Story

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

75

Page 274: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

User Story

Design

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

75

Page 275: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

User Story

Design

Develop

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

75

Page 276: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

User Story

Design

DevelopTest

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

75

Page 277: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Iteration

User Story

Design

DevelopTest

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

75

Page 278: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Iteration

User Story

Design

DevelopTest

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

75

Page 279: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Iteration

User Story

Design

DevelopTest

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

75

Page 280: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Iteration

User Story

Design

DevelopTest

Iteration Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

75

Page 281: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Iteration

User Story

Design

Develop

Evaluate

Test

Iteration Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

75

Page 282: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Iteration Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

75

Page 283: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Iteration Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

75

Page 284: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Iteration Plan

Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

75

Page 285: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Iteration Plan

Plan

Release Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

75

Page 286: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Evaluate

Iteration Plan

Plan

Release Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

75

Page 287: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Product/Project

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Evaluate

Iteration Plan

Plan

Release Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

75

Page 288: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Product/Project

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Evaluate

Iteration Plan

Plan

Release Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

Product or Project• Perpetually released

75

Page 289: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Product/Project

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Evaluate

Iteration Plan

Plan

Release Plan

Plan

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

Product or Project• Perpetually released

75

Page 290: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Product/Project

IncrementalRelease

Iteration

User Story

Design

Develop

Evaluate

Test

Evaluate

Iteration Plan

Plan

Release Plan

Plan

Product/Project Charter

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

Product or Project• Perpetually released

75

Page 291: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 75

Agile development’s nested planning cycles

Product/Project

IncrementalRelease

Evaluate

Iteration

User Story

Design

Develop

Evaluate

Test

Evaluate

Iteration Plan

Plan

Release Plan

Plan

Product/Project Charter

Plan

User Story or Product Feature• Expressed from business or user perspective• Business value• EstimableFeature List: prioritized features (AKA Product Backlog)

Iteration• 1-4 week timebox

Incremental Release• 1-6 Iterations• Released internally or

externally to end users

Product or Project• Perpetually released

75

Page 292: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 76

planning & design increase in detail over time

FeatureDevelopment

time

detailcoursegrain

finegrain

76

Page 293: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 76

planning & design increase in detail over time

FeatureDevelopment

time

detailcoursegrain

finegrain

Feature Design

Decide how the feature looks and behaves

76

Page 294: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 76

planning & design increase in detail over time

FeatureDevelopment

time

detailcoursegrain

finegrain

Feature Design

Decide how the feature looks and behaves

Iteration Plan

Determine the features in the iteration and how they coherently hang together

76

Page 295: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 76

planning & design increase in detail over time

FeatureDevelopment

time

detailcoursegrain

finegrain

Feature Design

Decide how the feature looks and behaves

Iteration Plan

Determine the features in the iteration and how they coherently hang together

Release Plan

Determine appropriate product features and the specific features in this release

76

Page 296: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 76

planning & design increase in detail over time

FeatureDevelopment

time

detailcoursegrain

finegrain

Feature Design

Decide how the feature looks and behaves

Iteration Plan

Determine the features in the iteration and how they coherently hang together

Release Plan

Determine appropriate product features and the specific features in this release

Project Charter

Determine how the software will earn money, and the user constituents will be served

76

Page 297: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 77

feature testing and product evaluationeach cycle affords course correction

FeatureDevelopment

time

detailcoursegrain

finegrain

Feature DesignIteration PlanRelease PlanProject Charter

77

Page 298: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 77

feature testing and product evaluationeach cycle affords course correction

FeatureDevelopment

detailcoursegrain

finegrain

Feature DesignIteration PlanRelease PlanProject Charter

time

77

Page 299: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 77

feature testing and product evaluationeach cycle affords course correction

FeatureDevelopment

detailcoursegrain

finegrain

Feature Design

Test that the features look and perform as expected

Iteration PlanRelease PlanProject Charter

Feature Test

time

77

Page 300: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 77

feature testing and product evaluationeach cycle affords course correction

FeatureDevelopment

detailcoursegrain

finegrain

Feature Design

Test that the features look and perform as expected

Iteration Plan

Evaluate how features work together. Add, remove, or change features in the release

Release PlanProject Charter

Feature TestIterationEvaluation

time

77

Page 301: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 77

feature testing and product evaluationeach cycle affords course correction

FeatureDevelopment

detailcoursegrain

finegrain

Feature Design

Test that the features look and perform as expected

Iteration Plan

Evaluate how features work together. Add, remove, or change features in the release

Release Plan

Evaluate the finished release. Will it be useful for its target audience? Will it earn the revenue expected?.

Project Charter

Feature TestIterationEvaluation

ReleaseEvaluation

time

77

Page 302: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 77

feature testing and product evaluationeach cycle affords course correction

FeatureDevelopment

detailcoursegrain

finegrain

Feature Design

Test that the features look and perform as expected

Iteration Plan

Evaluate how features work together. Add, remove, or change features in the release

Release Plan

Evaluate the finished release. Will it be useful for its target audience? Will it earn the revenue expected?.

Project Charter

Evaluate the product direction as a whole. How can the product earn more revenue?

Feature TestIterationEvaluation

ReleaseEvaluation

ProductEvaluation

time

77

Page 303: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

78

Page 304: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

78

Page 305: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

Development team

78

Page 306: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

Composition

Development team

78

Page 307: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Development team

78

Page 308: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction Designers

Development team

78

Page 309: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

Development team

78

Page 310: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

Development teamComposition

78

Page 311: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

Development teamCompositionSmaller number of seasoned

developers

78

Page 312: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

78

Page 313: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

Responsibilities

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

78

Page 314: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

ResponsibilitiesGather customer input for

features to be implemented

in later iterations

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

78

Page 315: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

ResponsibilitiesGather customer input for

features to be implemented

in later iterationsDesign next iteration features

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

78

Page 316: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

ResponsibilitiesGather customer input for

features to be implemented

in later iterationsDesign next iteration features

Be available to answer questions on current iteration development

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

78

Page 317: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

ResponsibilitiesGather customer input for

features to be implemented

in later iterationsDesign next iteration features

Be available to answer questions on current iteration development

Test features implemented in the previous iteration

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

78

Page 318: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

ResponsibilitiesGather customer input for

features to be implemented

in later iterationsDesign next iteration features

Be available to answer questions on current iteration development

Test features implemented in the previous iteration

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

Responsibilities

78

Page 319: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

ResponsibilitiesGather customer input for

features to be implemented

in later iterationsDesign next iteration features

Be available to answer questions on current iteration development

Test features implemented in the previous iteration

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

ResponsibilitiesImplement features for current

iteration

78

Page 320: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 78

Parallel Track Development Separates Design and Evaluation Into One Track, Building Into Another

design & plan

evaluate

build

Customer/Product Owner Team

CompositionBusiness Analysts

Interaction DesignersPrototypers

ResponsibilitiesGather customer input for

features to be implemented

in later iterationsDesign next iteration features

Be available to answer questions on current iteration development

Test features implemented in the previous iteration

Development teamCompositionSmaller number of seasoned

developers

UI development skills & analysis skills

ResponsibilitiesImplement features for current

iteration

Collaborate with Product Owner team to acquire details to construct software

78

Page 321: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Design and Coded Features Pass Back and Forth Between Tracks

79

Page 322: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Design and Coded Features Pass Back and Forth Between Tracks

79

Page 323: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

79

Page 324: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

time

79

Page 325: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

Iteration 0 Iteration 1 Iteration 2 Iteration 3

time

79

Page 326: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

Iteration 0 Iteration 1 Iteration 2 Iteration 3

time

79

Page 327: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

time

79

Page 328: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature designtime

79

Page 329: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature designtime

79

Page 330: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature designtime

current features

79

Page 331: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature design code

d fea

ture

s

time

current features

79

Page 332: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

• gather user input for iteration 4 features

• design iteration 3 features

• support iteration 2 development

• validate iteration 1 features

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature design code

d fea

ture

s

time

current features

79

Page 333: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

• gather user input for iteration 4 features

• design iteration 3 features

• support iteration 2 development

• validate iteration 1 features

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature design code

d fea

ture

s

time

feature design

+ bugs found in

usability testing

current features

79

Page 334: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

implement iteration 2 featuresfix iteration 1 bugs if any

• gather user input for iteration 4 features

• design iteration 3 features

• support iteration 2 development

• validate iteration 1 features

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature design code

d fea

ture

s

time

feature design

+ bugs found in

usability testing

current features

79

Page 335: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

implement iteration 2 featuresfix iteration 1 bugs if any

• gather user input for iteration 4 features

• design iteration 3 features

• support iteration 2 development

• validate iteration 1 features

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature design code

d fea

ture

s

time

feature design

+ bugs found in

usability testing

current features

79

Page 336: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

implement iteration 2 featuresfix iteration 1 bugs if any

• gather user input for iteration 4 features

• design iteration 3 features

• support iteration 2 development

• validate iteration 1 features

implement iteration 3 featuresfix iteration 2 bugs if any

• gather user input for iteration 5 features

• design iteration 4 features

• support iteration 3 development

• validate iteration 2 features

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature design code

d fea

ture

s

time

feature design

+ bugs found in

usability testing

current features

79

Page 337: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 79

Prod

uct

Ow

ner

Team

Dev

elop

men

t Te

amDesign and Coded Features Pass Back and Forth Between Tracks

implement iteration 1 features

• gather user input for iteration 3 features

• design iteration 2 features

• support iteration 1 development

implement iteration 2 featuresfix iteration 1 bugs if any

• gather user input for iteration 4 features

• design iteration 3 features

• support iteration 2 development

• validate iteration 1 features

implement iteration 3 featuresfix iteration 2 bugs if any

• gather user input for iteration 5 features

• design iteration 4 features

• support iteration 3 development

• validate iteration 2 features

• planning• data gathering• design for

iteration 1 features – high technical requirements, low user requirements

• development environment setup

• architectural “spikes”

Iteration 0 Iteration 1 Iteration 2 Iteration 3

feature design code

d fea

ture

s

time

feature design

+ bugs found in

usability testing

current features

79

Page 338: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 80

The customer/product owner team steers development

80

Page 339: Agile Chennai Keynote by Jeff Patton

© 2006-2007 Jeff Patton, All rights reserved, www.agileproductdesign.com 80

The customer/product owner team steers development

The customer/product owner team must: Understand layers of dependent decisions that lead to

stories in a backlog Identify stories to meet release level business objectives Defer decomposing and detailing stories until necessary Re-prioritize and create new stories to allow business

objectives to be met within time and budget constraints Business objectives and user objectives are targets – user

stories are the tools that help you reach them

80

Page 340: Agile Chennai Keynote by Jeff Patton

Blending User

Experience & Business

Analysis thinking in the

Agile Customer Role

81

Page 341: Agile Chennai Keynote by Jeff Patton

Blending User

Experience & Business

Analysis thinking in the

Agile Customer Role

Jeff Patton

81

Page 342: Agile Chennai Keynote by Jeff Patton

Blending User

Experience & Business

Analysis thinking in the

Agile Customer Role

Jeff PattonThoughtWorks

[email protected]

81

Page 343: Agile Chennai Keynote by Jeff Patton

Blending User

Experience & Business

Analysis thinking in the

Agile Customer Role

Jeff PattonThoughtWorks

[email protected]

AgileProductDesign.com

81