Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

80

description

Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Transcript of Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Page 1: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland
Page 2: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Which of these questions will help you

benefit from this lecture at the most?

I am wondering what this

presentation is about?

What was the most difficult part of my

last conversation with the client?

Why do I keep on making the same

mistakes when I talk with clients?

What new opportunities would

arise if my conversations with

clients looked the way I want

them to be?

conversation-patterns.com

Page 3: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

@MichalBartyzel

www.conversation-patterns.com www.mbartyzel.blogspot.com

www.bnsit.pl

}

Tailor-made Software

How to talk with clients who don’t

know what they want? (in Polish)

#

conversation-patterns.com

www.conversation-patterns.com

Page 4: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Page 5: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

As a <role>

I want <feature/goal>

so that <benefit>

conversation-patterns.com

Page 6: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

US, UC are treated as goals on their own

US, UC are used to avoid bothering their

author

Instead of cooperating, we focus on acting

according to the form

Even when you have US, UC written down,

you may not understand the business needs

conversation-patterns.com

Page 7: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Page 8: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

I am responsible for increasing the

number of claims adjusted to 600,

so…

…I want to see the insurance

claims adjustment report

If the number of 200 claims

adjusted will remain, they will close

down our deprtment, so...

…I want to see the insurance

claims adjustment report

conversation-patterns.com

Page 9: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

I am responsible for increasing the

number of claims adjusted to 600,

so…

…I want to see the insurance

claims adjustment report

If the number of 200 claims

adjusted will remain, they will close

down our deprtment, so...

…I want to see the insurance

claims adjustment report

conversation-patterns.com

Page 10: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

I want...

THE NEED (a motivator)

conversation-patterns.com

Page 11: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

As a U I want the X functionality, because...

…I am afraid that the margin will be calculated incorrectly

…that GUI is not intuitive

…I don’t want the user to have the impression that…

conversation-patterns.com

Page 12: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

…we will test this module in a more accurate way

… I will use the salary calculator as soon as possible

…we could design the WYSYWIG report

As a U I want the X functionality, because then...

conversation-patterns.com

Page 13: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

I want...

THE NEED (a motivator)

conversation-patterns.com

Page 14: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

In order to <benefit>

as a <role>

I want <goal/feature>

As a <role>

I want <goal/feature>

so that <benefit>

conversation-patterns.com

Page 15: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

In order to achieve <expected benefit>

as a <role>

I want <goal/feature>

In order to avoid <problem to be solved>

as a <role>

I want <goal/feature>

conversation-patterns.com

Page 16: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Why?

What made you need…?

What is the difficulty in it?

What is to lose?

conversation-patterns.com

What do you want to avoid?

Page 17: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

What for?

What will it give you?

What is the purpose of…?

What will it make possible?

conversation-patterns.com

What’s new or different in it…?

Page 18: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

…it will satisfy the Boss;)

…we will test this module in a more accurate way

…we could design the WYSIWIG report

As a U I want the X functionality, because then...

conversation-patterns.com

..we stop tampering with XML

…and they will not fire me…

…instead of clicking through individual screens…

Page 19: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

…because it will be fun

conversation-patterns.com

…because it drives me mad

Page 20: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

…because it will be fun

…because it will increase the mothly profit

conversation-patterns.com

…because it drives me mad

…because it will limit the loss

Page 21: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

…because it will be fun

…because it will increase the mothly profit

conversation-patterns.com

…because we will get to know the sales figures

…because it drives me mad

…because it will limit the loss

…because we will limit the hidden costs

Page 22: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

I want…!

THE NEED

THE NEED

conversation-patterns.com

THE NEED (a motivator)

Page 23: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Which of these questions will help you

benefit from this lecture at the most?

I am wondering what this

presentation is about?

What was the most difficult part of my

last conversation with the client?

Why do I keep on making the same

mistakes when I talk with clients?

What new opportunities would

arise if my conversations with

clients looked the way I want

them to be?

conversation-patterns.com

Page 24: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

problem to be solved expected benefit

I want to avoid… I want to achieve…

Why?

What made you need…?

What is the difficulty in it?

What is to lose?

What do you want to avoid?

What for?

What will it give you?

What is the purpose of…?

What will it make possible?

What’s new or different in it?

In order to avoid <problem>

As a <role>

I want <goal/feature>

In order to achieve <benefit>

as a <role>

I want <goal/feature>

conversation-patterns.com

Page 25: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Page 26: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Business IT

I want you to add a button to generate

partial report here -

Where is the data? What to display

when there is no data? Is it consistent

with the entire process? Have you

thought of the consequences of

aggregating partial data? It may

require large refactoring…

Oh, so I need to consult… -

conversation-patterns.com

Page 27: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

THE NEED

Criteria of solving the problem

Criteria of gaining the benefit

Alternatives

conversation-patterns.com

Page 28: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

THE NEED

Criteria of solving the problem

Criteria of gaining the benefit

Alternatives

conversation-patterns.com

I want…

- I want you to add a button to

generate partial report here

Page 29: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

THE NEED

Criteria of solving the problem

Criteria of gaining the benefit

Alternatives

conversation-patterns.com

The need

- What will you gain having such

a report?

- I won’t have to wait for the

sales figures until the end of the

month?

- So the key factor here is the

time you wait for the figures?

- Yes

Page 30: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

THE NEED

Criteria of solving the problem

Criteria of gaining the benefit

Alternatives

conversation-patterns.com

Criteria of meeting the need

- Which figures do you want to

see and how often do you

need to browse them to stay

up to date?

- I need the key client sales

figures. I’d like to browse

through it twice a week.

Page 31: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

THE NEED

Criteria of solving the problem

Criteria of gaining the benefit

Alternatywy

conversation-patterns.com

Suggested alternatives

- I see! So we can do it this way...

that way... or this way... Which

of these functionalities will help

you avoid waiting for the sales

figures until the end of the

month?

- That looks interesting…

Page 32: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Page 33: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland
Page 34: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland
Page 35: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Page 36: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

What you will gain when [a problem expr.] will gone?

Page 37: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

expression of a problem qeuestions

I don’t want this repport occur What you will be able to do if it don't

occur?

Page 38: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

expression of a problem qeuestions

I don’t want this repport occured What you will be able to do if it don't

occur?

We have lots of repeatable work So what will be possible without it?

Page 39: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

expression of a problem qeuestions

I don’t want this repport occured What you will be able to do if it don't

occur?

We have lots of repeatable work So what will be possible without it?

Our business process is a mess What might help to introduce some

order?

Page 40: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

What is NOT [benefit expr.] with that?

Page 41: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

expression of a benefit questions

This process should be more effective What specifically is ineffective in this

process?

Page 42: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

expression of a benefit questions

This process should be more effective What specifically is ineffective in this

process?

As an Admin I want to see the log

report so that I will be sure what

happens in the system

What if you don't know what happens

in the system? What could happen

then?

Page 43: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

expression of a benefit questions

This process should be more effective What specifically is ineffective in this

process?

As an Admin I want to see the log

report so that I will be sure what

happens in the system

So what if you don't know what

happens in the system? What could

happen then?

We must reduce time needed for a

single task But if you don't....?

Page 44: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Page 45: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Page 46: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Need

Generalities

Specifics

Page 47: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Need

Generalities

Specifics

Page 48: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

You Stakeholder ( a doctor )

So, how are you going to use

this tool?

Well, the most important thing to me is setting an appropriate med dose as fast as I

use my paper prescription. Have you ever saw a prescription form?

Page 49: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Med dose

You Stakeholder ( a doctor )

So, how are you going to use

this tool?

Well, the most important thing to me is setting an appropriate med dose as fast as I

use my paper prescription. Have you ever saw a prescription form?

Page 50: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Prescription Form

Med dose

You Stakeholder ( a doctor )

So, how are you going to use

this tool?

Well, the most important thing to me is setting an appropriate med dose as fast as I

use my paper prescription. Have you ever saw a prescription form?

Page 51: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Prescription

Prescription Form

Med dose

You Stakeholder ( a doctor )

So, how are you going to use

this tool?

Well, the most important thing to me is setting an appropriate med dose as fast as I

use my paper prescription. Have you ever saw a prescription form?

Page 52: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

You Stakeholder ( a doctor )

Yes, I have.

You know, a paper form is very flexible. I may write down whatever I want. So new

software should be flexible as well. By the way, my stuff have problems with the

software...

Prescription

Prescription Form

Med dose

conversation-patterns.com

Page 53: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Prescription

Prescription Form

Fexibility

Med dose

You Stakeholder ( a doctor )

Yes, I have.

You know, a paper form is very flexible. I may write down whatever I want. So new

software should be flexible as well. By the way, my stuff have problems with the

software...

Page 54: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Fexibility

conversation-patterns.com

Prescription

Prescription Form

Med dose Problems

You Stakeholder ( a doctor )

Yes, I have.

You know, a paper form is very flexible. I may write down whatever I want. So new

software should be flexible as well. By the way, my stuff have problems with the

software...

Page 55: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Prescription

Prescription Form

Fexibility

Med dose

Current Software

Problems

You Stakeholder ( a doctor )

Yes, I have.

You know, a paper form is very flexible. I may write down whatever I want. So new

software should be flexible as well. By the way, my stuff have problems with the

software...

Page 56: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

You Stakeholder ( a doctor )

Ok, you want to use free text

to write down a prescription.

What else?

Well, prescription must be connected to the Medicine Cabinet. The Cabinet is a

complicated thing, The most important is to comply with policies XYZ. In the case of

prescriptions, we are also required to follow particular policies …

Prescription

Prescription Form

Fexibility

Med dose

Current Software

Problems

Page 57: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Prescription

Prescription Form

Fexibility

Med dose

Current Software

Problems

Medicine Cabinet

You Stakeholder ( a doctor )

Ok, you want to use free text

to write down a prescription.

What else?

Well, prescription must be connected to the Medicine Cabinet. The Cabinet is a

complicated thing, The most important is to comply with policies XYZ. In the case of

prescriptions, we are also required to follow particular policies …

Page 58: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

conversation-patterns.com

Prescription

Prescription Form

Fexibility

Med dose

Current Software

Problems

Medicine Cabinet

Med. Cabinet Policies

You Stakeholder ( a doctor )

Ok, you want to use free text

to write down a prescription.

What else?

Well, prescription must be connected to the Medicine Cabinet. The Cabinet is a

complicated thing, The most important is to comply with policies XYZ. In the case of

prescriptions, we are also required to follow particular policies …

Page 59: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Med. Cabinet Policies

conversation-patterns.com

Prescription

Prescription Form

Fexibility

Med dose

Current Software

Problems

Medicine Cabinet

Prescription Policies

You Stakeholder ( a doctor )

Ok, you want to use free text

to write down a prescription.

What else?

Well, prescription must be connected to the Medicine Cabinet. The Cabinet is a

complicated thing, The most important is to comply with policies XYZ. In the case of

prescriptions, we are also required to follow particular policies …

Page 60: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Med. Cabinet Policies

conversation-patterns.com

Prescription

Prescription Form

Fexibility

Med dose

Current Software

Problems

Medicine Cabinet

Prescription Policies

You Stakeholder ( a doctor )

Ok, you want to use free text

to write down a prescription.

What else?

Well, prescription must be connected to the Medicine Cabinet. The Cabinet is a

complicated thing, The most important is to comply with policies XYZ. In the case of

prescriptions, we are also required to follow particular policies …

Page 61: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Lots of information and no knowledge

Lack of understanding business domain and issues

Chaotic notes

You feel you should do something, but you are not sure

what has to be done

Page 62: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland
Page 63: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Page 64: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Page 65: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

Page 66: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

Page 67: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

Page 68: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates

Page 69: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Page 70: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Page 71: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Page 72: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Discover the need first

Page 73: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Discover the need first

Seven red lines

Page 74: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Digging deeper

Discover the need first

Seven red lines

Page 75: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Digging deeper

Discover the need first

Stretching

Seven red lines

Page 76: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Digging deeper

Conversation Structure

Discover the need first

Stretching

Seven red lines

Page 77: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Digging deeper

Conversation Structure

Discover the need first

Stretching Control the flow

Seven red lines

Page 78: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Digging deeper

Conversation Structure

Discover the need first

Stretching Control the flow

Downward Specification

Seven red lines

Page 79: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland

Need concept

Problem to be solved

Expected benefit

’Why?’ question

’What for?’ question

US Templates US Templates

Cases

Geek meets man

Digging deeper

Conversation Structure

Discover the need firs

Stretching Control the flow

Downward Specification

Seven red lines

Page 80: Conversation patterns for software professionals - Michał Bartyzel @ Agile Management 2014 Poland