40
The missing link between business need and software development: product design Ari Tanninen Wildcard Conference 2013 Jūrmala, Latvia, Sept 13 “Bridging the gap between business and development, development and user, and buyer and vendor with participatory product and service design”

The missing link between business need and software development: product design

Embed Size (px)

DESCRIPTION

There is a disconnect between IT buyers and IT vendors. Buyers assume that vendors will figure out what their IT system should precisely do. Vendors assume that buyers surely know their business and know exactly what their new IT system should do. Requirement analysts are deployed to gather requirements and write a specification which becomes the basis of a contract. A project is executed and the end result is taken to use. Users hate the system because it is clunky, does not meet their needs and is too complicated. Why? The problem is systemic. Both the buyer and vendor assume that someone knows what the new system should do and how. In new product/service development requirements do not exist and cannot be gathered, they have to be developed collaboratively and iteratively. When automating an existing business no one knows with sufficient detail how that business works. Agile software development proposes to fix the problem by iterative and incremental development where feedback from users using working software is used to guide the development effort. But working software is an expensive way of getting feedback when compared with role-play or paper design prototypes. To solve the disconnect a new mindset and tools are needed. The mindset should be one of product and/or service design, where multiple stakeholders engage in a participatory design process centered around common, cheap, design artifacts. This topic will include discussion about: - the disconnect between business and software - the nature of product and service development - the role of feedback and learning - participatory design and user-centered methods including service blueprints, role-play, prototyping and simulation and how they can be used to fix the disconnect - advantages: better products, new ideas, engaged stakeholders, utilizing latent and tacit knowledge, increased empathy, cheaper more purposeful systems

Citation preview

Page 1: The missing link between business need and software development: product design

The missing link between business need and software development: product design

Ari TanninenWildcard Conference 2013

Jūrmala, Latvia, Sept 13

“Bridging the gap between business and development, development and user, and buyer and vendor with participatory product and service design”

Page 2: The missing link between business need and software development: product design

Ari TanninenProduct development consultant15 years software product development, 8 years Agile/LeanBEng, finishing MBA

[email protected]@aritanninen

Page 3: The missing link between business need and software development: product design

Hello, who are you?

IT workers?Business / management / designers / development?Consulting / sub-contracting / internal development?

Page 4: The missing link between business need and software development: product design

The problemDisconnect between buyer and vendorConsequences of disconnectFundamental issuesProposed solutions

Design & feedbackNature of designFeedback in naive WaterfallFeedback in naive Agile

An improved solutionProduct/service designParticipatory designToolsExamplesAdvantages

Products and services have form (or shape), and structureProduct design creates the formIT systems make up the structure

Page 5: The missing link between business need and software development: product design

The problem

Page 6: The missing link between business need and software development: product design

Req. spec.Contract

Buyer Vendor

I need some IT!Sure! Just write down

precisely what it should do.

Here’s a specialist to help you out!

Analyst Dev team

Ummm...

Users

Tell me everything!

We hate it!

Happiness is to code!

Aaargh!Aargh!Aaargh! Aaargh!

Aaargh!

System

Followed by... Change management process and more billing!

Page 7: The missing link between business need and software development: product design

Surely my expensive vendor is best in designing my IT system!

How could I possibly know precisely what I need?

That’s why I pay consultants for!

Buyer Vendor

How could I possibly know what my customer needs?

Or how their organization works?

And how their business ticks?

Surely my customer knows!

The disconnect

Page 8: The missing link between business need and software development: product design

Example of disconnect

BuyerIT consultant

“How do you receive customer orders? Phone, email? Actually,

which of your companies receives these orders?”

“Do you expect us to know? But you are the software

consultant!”

Image: Wikimedia Commons

Prototype factory built, need IT to orchestrate customer orders, production, deliveries and billing. Consultants designing business processes that are to be automated in part by IT.

Page 9: The missing link between business need and software development: product design

Consequences for users

• Complexity due to feature bloat

• Features missing

• System does not fit work

• System changed work and now needs changes

• Systems and service touchpoints work poorly together

• Fragmented user experience

Page 10: The missing link between business need and software development: product design

Other consequences

• Systems never fit their intended use

• Expensive projects

• Failed projects

• Poor business

• Taxpayer lossesBuye

rs effec

tively

outsource o

wnership

of

their

products

/servic

es

Page 11: The missing link between business need and software development: product design

Vendors assume buyers are aware and able to articulate their needs

Gathering requirements assumes they exist to be gathered

Fundamental issues

Buyers taught to believe in IT as fairy dust

The words we use guide our thinking: “requirements gathering”, “business process consultant”

Page 12: The missing link between business need and software development: product design

More detailed requirements!

More control!

More change management processes!

Solution?

Page 13: The missing link between business need and software development: product design

Agile software development?

Solution?

Image: flickr / IamNotUnique

Page 14: The missing link between business need and software development: product design

Let’s look at design and feedback first

Page 15: The missing link between business need and software development: product design

Design

"Design is the successive application of constraints until only a unique product is left."

-- Richard W. Pew

Take a need. Create solution. Try it. Take another need. Add to solution. Check that solution still fills all needs. Fix if broken. Take the next need... Repeat until done.

Page 16: The missing link between business need and software development: product design

Design problems / solutions

What users ask is not what users need

Tacit and latent needs

Describing problems/solutions without common language

Observation, prototypes, simulation

Iterations, experiments

Design artifacts as boundary objects

Cannot ask users, must iterate and experiment with artifacts

Page 17: The missing link between business need and software development: product design

The key to design is creating new knowledge

Feedback and learning is essential

Page 18: The missing link between business need and software development: product design

Feedback in Waterfall

Spec.

Real usersin context

System

Perceived needs

Biz processes

Workflows

Org structures

Domain knowledgeAssu

mpa

tion

s!

Requirements gatheringyears / months / weeks

Software developmentyears / months

Deploymenthours

Feedbackyears / months

Page 19: The missing link between business need and software development: product design

Feedback in Agile

Backlog.

Real usersin context

System

Perceived needs

Biz processes

Workflows

Org structures

Domain knowledgeAssu

mpa

tion

s!

PO workweeks / days / hours

Agile software developmentweeks / days

Deploymenthours

Feedbackweeks

How to get faster feedback and even more iterations?

Page 20: The missing link between business need and software development: product design

An improved solution

Page 21: The missing link between business need and software development: product design

How about this?

Prototype

Perceived needs

Biz processes

Workflows

Org structures

Domain knowledge

Real users

Product/service designweeks / days

Agile software developmentweeks / days

Deploymenthours

Real usersin context

System

Real users

Feedbackimmediate

Feedbackimmediate

Why code & deploy, can’t we bring users into our office?(the last feedback loop from users omitted for clarity)

Page 22: The missing link between business need and software development: product design

Rough comparison

Max design iterations

Cost of iteration

Waterfall 1 cost of project

Agileproject length /

length of iterationcost of project /

number of iterations

Product / service design & Agile

unlimited negligible

Writing functional software is an expensive way to get user feedback

Page 23: The missing link between business need and software development: product design

Service design

User-centered design

Participatory design

Co-design

Design thinking

Co-creation

Prototyping

Personas

Scenarios

Wizard of Oz

Drama Role-play

Informance

Ethnography Bodystorming

Experience prototypeMock-ups

VideoMoodboards

Customer journey

Service blueprints

A few keywords for you to google :)

Page 24: The missing link between business need and software development: product design

Participatory design

• Collaborative design & development

• Buyers, vendors, stakeholders, users

• New concepts, products, services, business processes, user interfaces, user experience...

• (feelings, smells…)

• Fast & cheap learning

Page 25: The missing link between business need and software development: product design

Some tools

• Low/high-fidelity prototypes

• Role-play & drama

• Wizard of Oz

• Service blueprint

Simulation! Not

conceptual hand-waving

Page 26: The missing link between business need and software development: product design

Examples

• UI & device paper prototypes

• Future library service (drama & Wizard of Oz)

• Talking sports watch (Wizard of Oz)

• Public-sector service (role-play, service blueprints)

• Cardboard hospital (1:1 prototype of environment)

• Urban planning: OurCity Meri-Rastila

Page 27: The missing link between business need and software development: product design

User interfaces and devices

Image: flickr / Samuel Mann Image: flickr / benarent

Functional paper prototypesEven detailed design possible by simulating with users by manual “animation”

Page 28: The missing link between business need and software development: product design

Future library service

Concept, picture & video: Pirjo Kivistö, Marika Latvala, Mia Rahkonen, Terhi Kärpänen, Mikko Tenni / Laurea University of Applied Sciences

Functional future library: working lend/return machine, software, and verbal commandsDrama, Wizard of Oz

Page 29: The missing link between business need and software development: product design

Talking sports watch

Concept and pictures: Juho Vesanto, Marjo Karjalainen, Sami Virtanen, Irina Ylikylä, Riikka Heloma / Laurea University of Applied Sciences

Prototype

User

Concept testing of a sports watch with a remote earphone verbally guiding the user to optimal exercise, like a personal trainerTest set-up: jogger, observer, and a talking sports watch prototype (real watch + person)Wizard of Oz

Page 30: The missing link between business need and software development: product design

Service blueprint

Image: flickr / Kennisland

Image: flickr / rachel.shadoan

Page 31: The missing link between business need and software development: product design

Public-sector service

Images: Gosei Oy

Automating existing public-sector serviceService blueprints (a powerful alternative to user story maps)

Page 32: The missing link between business need and software development: product design

Public-sector service

Crashed system

Blind user using a system

Child using multiple touchpoints

Images: Gosei Oy

Drama & role-play

Page 33: The missing link between business need and software development: product design

Cardboard hospital

Juha Kronqvist, Heini Erving, Teemu Leinonen (2013): Cardboard hospital: Prototyping patient-centric environments and services. Nordes 2013.

http

://de

sign

forh

ealth

care

.blo

gspo

t.fi/p

/spr

ing-

2012

-car

dboa

rd-h

ospi

tal.h

tml

http

://vi

meo

.com

/468

1296

5

http

://w

ww

.slid

esha

re.n

et/ju

hak/

card

boar

d-ho

spita

l-pro

toty

ping

-hos

pita

l-env

Cardboard hospital space at Aalto University where patients, staff, architects are co-creating ideas for the future hospital for Tampere University Hospital in Finland

Page 34: The missing link between business need and software development: product design

Cardboard hospital

Juha Kronqvist, Heini Erving, Teemu Leinonen (2013): Cardboard hospital: Prototyping patient-centric environments and services. Nordes 2013.

http

://de

sign

forh

ealth

care

.blo

gspo

t.fi/p

/spr

ing-

2012

-car

dboa

rd-h

ospi

tal.h

tml

http

://vi

meo

.com

/468

1296

5

http

://w

ww

.slid

esha

re.n

et/ju

hak/

card

boar

d-ho

spita

l-pro

toty

ping

-hos

pita

l-env

Page 35: The missing link between business need and software development: product design

OURCity Meri-Rastila

http://meidankaupunki.wordpress.com

Images: flickr / MarianaSalgado

OURCity - sub-project of World Design Capital Helsinki 2012Co-design of urban area, involving residents, children, city planners, and architecture studentsMethods scale from individual user interfaces to cities

Page 36: The missing link between business need and software development: product design

Advantages• Fast feedback

• Validated learning

• Cheap

• Stakeholder buy-in & commitment

• Increased communication bandwidth

• Evangelization

• Foster innovation & creativity

• Access tacit and latent knowledge

• User empowerment

• Empathy towards users - walk a mile in their shoes

Page 37: The missing link between business need and software development: product design

Summary

Page 38: The missing link between business need and software development: product design

Service/prod design + Agile

Prototype

Perceived needs

Biz processes

Workflows

Org structures

Domain knowledge

Real users

Product/service designweeks / days

Agile software developmentweeks / days

Deploymenthours

Real usersin context

System

Real users

Feedbackimmediate

Feedbackimmediate

Last feedback loop omitted for clarity.

Page 39: The missing link between business need and software development: product design

Key points• Remember the disconnect

• Software design != product/service design

• Design services and products

• Iterate early with real users - get out of the building!

• Validate assumptions about needs and design solutions

• Seek to shorten learning cycle

• Writing software is expensive

• Quick'n'dirty participatory design - 20/80 rule

Page 40: The missing link between business need and software development: product design

Questions? Thoughts?