53
1 Decomposing into Business Valuable Units July, 2013

A Practical Guide to Story Mapping

Embed Size (px)

DESCRIPTION

y

Citation preview

Page 1: A Practical Guide to Story Mapping

1

Decomposing into Business Valuable Units

July, 2013

Page 2: A Practical Guide to Story Mapping

Agenda

Develop willing and able leaders (Pre-condition)

Decompose into business

valuable units

Visualize end-to-end flow of

Work

Create a Collaborative

Vision & Shared

Understanding

Enable continuous

improvementDrive

Customer Value

0

1

2

34

5Limit work-in-

progress

Session 1

Session 1

Session 2

Session 3

Session 4

Session 5

Page 3: A Practical Guide to Story Mapping

Agenda

3

Decomposition, 1hr• The Project Delivery Problem• ‘In-one-go’ vs. Iterative Delivery• Decomposing into User Stories• Story Mapping

Story Mapping Exercise, 45 minFollow-up, 15 min

Page 4: A Practical Guide to Story Mapping

Some context?

Page 5: A Practical Guide to Story Mapping

Organizations are struggling to deliver software that is of value to the business user and that comes in on time and on budget

5

Page 6: A Practical Guide to Story Mapping

The fact is that projects can be large and complex, with a number of possible failure points

Page 7: A Practical Guide to Story Mapping

Things can get lost in translation

7

Page 8: A Practical Guide to Story Mapping

We can lose sight of the forest for the trees / get lost in details

8

Page 9: A Practical Guide to Story Mapping

It’s easy to become disconnected from user value, if we were ever connected in the first place

9

“If I'd asked my customers what they wanted, they'd have said a

faster horse. ”

Henry Ford

Page 10: A Practical Guide to Story Mapping

It’s hard to estimate time and cost at the start of the project

10

Page 11: A Practical Guide to Story Mapping

What can we do?

Page 12: A Practical Guide to Story Mapping

We can do nothing

12

Page 13: A Practical Guide to Story Mapping

We can do more of the same

13

“Insanity is doing the same thing over and over again

and expecting different results.”

-Albert Einstein?

Page 14: A Practical Guide to Story Mapping

Or we can rethink the way that we approach project delivery

14

Page 15: A Practical Guide to Story Mapping

Generally speaking, there are two ways to approach a project

Page 16: A Practical Guide to Story Mapping

We can try to deliver the project ‘in-one-go’

16

1 2 3 4 5

• Requires a fully formed idea to start (i.e., a long initial requirements phase)

• Focused on delivering detail from the start (i.e., can neglect other areas of the solution)

• Provides no validation of the end-to-end solution until the end (i.e., may not know if off track until the end)

• Course corrections can be hard and only one chance to right size (i.e., wasted effort and over/under solutioning)

Page 17: A Practical Guide to Story Mapping

Or we can take an ‘iterative’ approach to project delivery…

17

1 2 3 4 5

• Requires only a vague idea to start (i.e., a shorter initial alignment period with details determined ‘just-in-time’)

• Focused on producing a ‘rough’ end-to-end solution from the start (i.e., keeps ‘big picture’ view, detail added later)

• Provides a much earlier validation of the solution (i.e., can confirm business value and justify further effort)

• Course corrections can be made much earlier and right-sizing is enabled (i.e., with far less wasted effort)

Page 18: A Practical Guide to Story Mapping

A more direct comparison?

18

Project

Big projects and releases are hard…

Lots of variability and unknowns…

Lots of dependencies…

Why not decompose the project into iterations so that value can be delivered earlier and the risks mitigated?

Page 19: A Practical Guide to Story Mapping

But there is still a problem

Page 20: A Practical Guide to Story Mapping

20

An iteration can still constitute a large, complex project

Page 21: A Practical Guide to Story Mapping

21

It can also be hard to identify what the iterations should be

Where to begin?...

What to include?...

Page 22: A Practical Guide to Story Mapping

22

Finally, what if only one iteration is identified – are we back to this?

Page 23: A Practical Guide to Story Mapping

Although decomposing projects into iterations is important, what is also important is decomposing projects into increments, and to organize these into the iterations that will be delivered

Page 24: A Practical Guide to Story Mapping

24

Two views of project decomposition that are worth distinguishing

ProjectIterations(MMFs)

IncrementsDecomposed into Composed of

Project IncrementsIterations (MMFs)

Decomposed into Organized into

OR,

These increments are User Stories A Story Map is the organization

Page 25: A Practical Guide to Story Mapping

What is a User Story?

Page 26: A Practical Guide to Story Mapping

A way of representing an increment of what is to be delivered

26

A User Story describes requirements, which will then be delivered in the form of a solution that meets those requirements*

*A user Story IS NOT an engine with X cylinders and such and such horse power, but rather it is an expression of the user’s need to be able to go a certain speed and to have certain power, the solution to which is the engine…

Page 27: A Practical Guide to Story Mapping

At the right size – a bite sized portion!

27

Functional or “Sea level”I’d reasonably expect to complete this in a single sitting

Sub-Functional or “Fish level”Small tasks that by themselves don’t mean much. I’ll do several of these before I reach a functional level goal

Activity or “Kite level”Longer term goals often with no precise ending. I’ll perform several functional tasks in the context of an activity

Too abstract

Too detailed

Keep focus here!

Page 28: A Practical Guide to Story Mapping

Contextualized by a broader narrative

28

User Story

Broader NarrativeUser Stories are interrelatable!

Page 29: A Practical Guide to Story Mapping

Something that is itself iteratively produced

29

Project Duration

De

tail

Find Product

Story SketchingThinking pad...

Story Summary

Users and Systems Involved

Free Drawing

Specification by Example

Questions

Acceptance Criteria

Story Name:

MMF#:

Specifications by Example

GIVEN…

WHEN…

THEN…

The User Story is elaborated into greater detail ‘just-in-time’, one step ahead of design/build

Page 30: A Practical Guide to Story Mapping

In relatable terms

30

Stories should be in a ubiquitous language, and easily translate

Page 31: A Practical Guide to Story Mapping

Focused on the ‘what’ not the ‘how’

31

Solution Architecture should be incrementally / iteratively built in unison with the User Story / Story Map, but also be open to negotiation

hole (to put the flower in)

x dig hole?

Page 32: A Practical Guide to Story Mapping

They can be prioritized

32

• Must-haves– The features that must be

there for the product to be considered acceptable

• Wants– The more the better

• Nice-to-haves– Could live without these

but nice touches

Brakes(must have)

Basic brakes(must have)

Stopping distance(want)

Anti-locking(want)

Cool dashboard light when slipping

(nice to have)

Page 33: A Practical Guide to Story Mapping

How are User Stories produced?

Page 34: A Practical Guide to Story Mapping

As a… WHO?

I want to… WHAT? So that… WHY?

Some things to keep in mind

34

A User Story allows further refinement of scope with business stakeholders to provide options around timing and cost

A User Story is testable by itself and has clear acceptance criteria defined

A User Story has concrete business value or has an inherent investment value (e.g. ‘Approve expense report’ can be a work ticket but ‘Build data access objects’ cannot)

A User Story has high-level scope and high-level solution design defined so as to enable creation of coarse estimates

A User Story is sufficiently small to support and allow tracking of the project progress (e.g. a set of cohesive steps in a use case)

A User Story is structured to minimize dependency on other work tickets

Negotiable

Testable

Valuable

Estimate-able

Small

Independent

Some guiding principles (INVEST)

• Card represents physical capture of the story• Conversation represents a “promise for a conversation” or

collaboration between the team, customer/user, business, and other stakeholders

• Confirmation represents  acceptance criteria, which define the bounds of the story and as such can inform the solution and validate what is delivered

The various forms a story can take (3 C’s)

A convenient structure…

Page 35: A Practical Guide to Story Mapping

Some examples of more refined User Stories

35

“Send Money”As Glenn Mendoza, I want to use my online banking account for international transfersSo that I can securely transfer $300 Canadian dollars to family in the Philippines to be picked up at a Western Union retail outlet

“Receive Money”As Glenn Mendoza, I want to use my online banking account to receive international remittancesSo that I can receive an international remittance of $100 sent by my parents from a WU retail outlet in India

“Availability”

As Glenn Mendoza, I want to have access to the international remittance service 99.999% of the timeSo that I don’t get frustrated with the service and move over to other providers

Accommodating! Any requirement can be captured in a user story

Unambiguous

Embedded in a broader narrative

Focused on ‘who’, ‘what’ and ‘why’, not ‘how’

Light-weight and relatable

Negotiable

Page 36: A Practical Guide to Story Mapping

So what is a Story Map?

Page 37: A Practical Guide to Story Mapping

A Story Map is the organization of User Stories into a broader narrative

37

Put simply, it is a really big story

Page 38: A Practical Guide to Story Mapping

How is a Story Map made?

38

1. Collaborate as a group2. Start with what you know (or if necessary, establish a

nutshell understanding of the project)3. Think about the users and what their main Goals are4. Start identifying User Stories (build the Story Map

incrementally!)5. Leverage the interrelationship of the stories identified to

organize a left-to-right narrative6. Leverage the relative size of the pieces identified to

organize a top down structure (treat larger stories as buckets for smaller stories, and work towards right-size at all levels)

7. Ensure that the focus is on the ‘what’ and not the ‘how’8. Look for functional gaps9. Prioritize the User Stories vertically from must-have to

nice-to-have10. Iterate! The result is a living and highly

relatable representation of the project deliverable

Page 39: A Practical Guide to Story Mapping

A conventional view?

39

Manage Orders Manage FulfillmentGoalManage

Provisioning

Manage Activation and Billing

Activity

Story

Enter Order

Enter Order Info

Submit Order

Process Order

Update Order Info

Save Order Info

Add Accessory

Add Optional Mobile

Features

Receive Order

Notify Customer

Submit Fulfillment

Order

Process Fulfillment Order

Receive Fulfillment

Order

Submit to Fulfillment

Vendor

Update Order Info

Save Fulfillment

Order

Transform to Vendor Fulfillment

Notify Customer

Submit Fulfillment to Vendor

Receive Shipping

Notification

Update Order Info

Track Shipping Progress

Submit Order with Accessory

Submit Order with Features

Submit Fulfillment to Network Managmt

.

.

.

Submit Provision Request

Process Shipping Exception

s

Resend Fulfillment to Vendor

.

.

.

Time

Process Order

Exceptions

Process Fulfillment

Order Exception

Sales RepUser Sales RepFulfillment

VendorFulfillment

Clerk

View Order

Opt

iona

l

Network Operator

Billing Clerk

1

‘Users’ are laid out horizontally at the top of the map. Think of these as major categories of users that gain value from using the system. ‘Goals’ are laid out next. These are major objectives that the solution must support, with tangible business outcomes and real business. ‘Activities’ are the sequential events that describe what the user needs to do in order to get value. Think of them as constituting the workflow.‘Stories’ are laid out under the activity that they support. They are what need to be delivered in order to realize the solution.

2

3

4

1

2

3

4Sequential

Cor

e

End result should be a coherent narrative and representation of what needs to be delivered

Page 40: A Practical Guide to Story Mapping

With this example, we can see how iterations (or MMFs) are planned

40

Once overall prioritization of stories necessary to support each user activity is understood, the entire story map can be divided by planned releases/MMFs. Horizontal lanes can be used to divide different MMFs from each other. The story map can then be used to tell a narrative for a particular MMF. This is done by traversing the map from left to right and only looking at the stories within a particular lane.

Manage Orders Manage Fulfillment

Enter Order

Enter Order Info

Submit Order

Process Order

Update Order Info

View Order

Add Optional Mobile

Features

Add Accessory

Receive Order

Notify Customer

Submit Fulfillment

Order

Process Fulfillment Order

Receive Fulfillment

Order

Submit to Fulfillment

Vendor

Update Order Info

Save Fulfillment

Order

Transform to Vendor Fulfillment

Notify Customer

Submit Fulfillment to Vendor

Receive Shipping

Notification

Update Order Info

Track Shipping Progress

Submit Order with Features

Submit Order with Accessory

Submit Fulfillment to Network Managmt

.

.

.

Submit Provision Request

Process Shipping

Exceptions

Resend Fulfillment to Vendor

Process Order

Exceptions

Process Fulfillment

Order Exception

Save Order Info

MMF 1: Basic order entry integrated to the fulfillment vendor with manual provisioning and exception handling

MMF 2: Order entry with management features supporting order tracking, automated customer notifications and robust exception handling

MMF 3: Provide optional mobile features (Visual Voice Mail, Premium SMS, Wi-Fi to Wireless) to customers

MMF 4: Provide accessories and full product catalogue to customers for ordering

Time

Pri

ori

ty

Page 41: A Practical Guide to Story Mapping

What does Story Mapping provide?

Page 42: A Practical Guide to Story Mapping

A site for conversation and a conversation starter

42

A highly visible and collaborative way of

doing requirements!

Page 43: A Practical Guide to Story Mapping

The ‘vague’ or high-level idea of the project that we need to start

43

The Story Map sets the bounds of this

overarching ‘vague’ idea – it is the scope

of the project

Similarly, User Stories set the bounds of each increment

(e.g., what should her hands be doing?)

Page 44: A Practical Guide to Story Mapping

An informed build order

44

Helps identify iterations with must-have items sorted to the top and nice-

to-have items to the bottom

Page 45: A Practical Guide to Story Mapping

A direct feed into Kanban

45

Story Map

Kanban Board

Page 46: A Practical Guide to Story Mapping

A way of tracking project progress

46

0102030405060708090

100110120130140150160170180190200

1-Aug-10 1-Sep-10 1-Oct-10 1-Nov-10 1-Dec-10 1-Jan-11 1-Feb-11 1-Mar-11 1-Apr-11 1-May-11 1-Jun-11 1-Jul-11

Employee Trial BurndownRemoved RequirementsTotal Stories CompletedStories Remaining

New Requirements

0

5

10

15

20

25

31-Jan-11 14-Feb-11 28-Feb-11 14-Mar-11 28-Mar-11 11-Apr-11 25-Apr-11 9-May-11

Tota

l Sto

ries

Week Ending

Requirements

Design

Build Wait Time

Code

Test Promotion

QA Wait Time

QA

UAT Wait Time

UAT

RFC

RFC Wait Time

RTP Wait Time

RTP

Done

User Stories provide a unit of progress, and the full Story Map the measure of done

Page 47: A Practical Guide to Story Mapping

Some recap?

Page 48: A Practical Guide to Story Mapping

Returning to the project failure points identified, do User Stories and Story Mapping help mitigate the risk?

48

Things can get lost in translation These are collaborate practices! Highly visible and light-weight Using relatable terms

We can lose sight of the forest for the trees / get lost in details Story Map keeps focus on the forest User Stories keep focus on the trees Facilitates focus on the right level of detail at the right time!

It’s easy to become disconnected from user value, if we were ever connected at all Again, collaborative, and can include the user / business User Stories can have their value confirmed once delivered Story Map facilitates iterations and broader validation

It’s hard to estimate time and cost at the start of the project User Stories are estimate-able units Separates must-haves from nice-to-haves – focuses effort!

“If I'd asked my customers what they wanted, they'd have

said a faster horse. ”

Henry Ford

Page 49: A Practical Guide to Story Mapping

Although not a ‘silver bullet’, hopefully the potential value of these decomposition techniques has been shown

Page 50: A Practical Guide to Story Mapping

Some real world applications?

50

‘Claims’ Story Map from an Ontario Crown CorporationReceive Initial

Claim Information

Register ClaimCapture

Incident OnlyNotify of

RegistrationProvider

Registration

Collect Additional

Claim Information

Segment Claim

Assign Claim AssessDecide / Approve

Assessment

Notify (Claim Decision)

Receive Information

Record & Update

Collect Information

Case Planning

Case Management

(Implementation)

MonitoringClosure (Case Management)

Retrieve Billing Information

Review BillsBenefit

CalculationIssue

Payment

Receive Dispute

Information

Referral of Information to

Appeals

Assess Disputed Decision

Appeal Decision

Implementation

Refer Information to Collections

Implement Collection Decision

Manage Workload

Usability Audit Changes

Security Access

(Internal & External)

Manage Reporting

Collection of Claim Information:

Online (Portal)

Creation of Profile: Worker

Creation of Incident: Online

(Portal)Notif ication: Email

Creation of Provider Profile: Online (Portal)

Collection of Information:

Off line (Phone, Fax, Email, Mail)

Segmentation of Claim

Assignment of Claim

Manual Adjudication

Snapshot of Claim & Facts

(When Decision w as made)

Notif ication: Email

Collection of Additional

Information: Online (Portal)

Adjustment of Claim

Receive Information from

External Data Sources

Create Recovery and RTW Plans w ith Goals &

Milestones Based on "Best

Practice" Pre-built

Implement RTW & Recovery Plan Interventions

Receive HC / recovery / WT updates from

providers

Create RTW codes

Manual Entry of Payment Data

Manually Input/Alter Payments

Manually and Automatically Calculation

Various Payment Types

Pay Special Bill Cases

Receive Dispute Forms

Refer Information to Appeals Team

Ability for Reconciliation

Implementation of Appeal Decision

Refer Information to Collections

TeamCollect Debt

Re-assign case based on w orkload

forecast and users' availability

Internal operational policy

help linkage

Log and view change history

Access for providers

Business analytics for

claims outcome info

Collection of Claim Information: Off line (Phone, Fax, Email, Mail)

Creation of Profile: Employer

Creation of Incident: Off line

(Phone, Fax, Email, Mail)

Notif ication: Portal

Creation of Provider Profile: Off line (Phone, Fax, Email, Mail)

Collection of Information:

Online (Portal)

Association of Claims

eAdjudicationManagement of Decision Making

Notif ication: Mail

Collection of Additional

Information: Off line (Phone, Fax, Email, Mail)

Amalgamate Claims

Collection of Information from

WPPs: Online (Portal)

Integrate Information from External Sources into Plan (RTW,

WT, HC)

Implement Activity Referrals

to Internal & External Users

Monitor & rack plans against best practice

guidelines

Notify relevant parties of case

closure

Additional Calculations (as

required)

Review Provider Bills

Manage Payment Types

Adjust PaymentsCollect Claim Information

Provide Acces to Claims and

Appeal Information and

Updates

Geo-map client to provider

High level case status view

Management dashboard w ith real-time KPIs

Collection of Other Information

(Including Claimant, Employer)

Creation of ClaimCreate an Incident w ithout Employer

Notif ication: MailValidation of

Collected Information

Validation of Required

Information for Assessment

Escalation of Decision

Notif ication: Portal

Creation of Activities

Management of Collected

Information

Collection of Information from WPPs: Offline (Phone, Fax, Email, Mail)

Counter-propose RTW & Recovery

Plan via Portal

Reopen and Adjust Plan

Based on New Information &

Decisions

Annual review of benefits

Validate Payment Information

Review Claimant Bills

Adjust Payment Calculation

Send Out Year-End Statements

User productivity enhancement

and error handling

Validation of Collected

Information

Validation of Claim Information

Notif ication: EmailManagement of

Collected Information

Generation of Activities

Link w ith External Data Sources

ReviewView RTW &

Recovery Plans via Portal

Travel Arragements

Internal

Re-assess & predict recovery

/ permanent impairment

View Payment Details

Management of Collected

InformationNotif ication: Portal

Notif ication of Changes

Self-serve Travel Arrangements

Create alerts for plan activities

achievement and non-cooperation

Pay Basic Bills

Ability to Search for Existing Records

Notif ication: Mail

View Changes to Financial

Exposures (Liabilities) by

Claims

Collection of Claim Information:

B2B

Communicate Goals / Plans

Updates: Online (Portal)

Communicate Goals / Plans

Updates: Offline (Phone, Fax, Email, Mail)

Registration Payment Objections System AdministrationClaims Maintenance Managing RTW & Recovery CollectionsClaims Setup Claims Entitlement Decision

Page 51: A Practical Guide to Story Mapping

Some real world applications?

51

‘Process Model Enablement’ Story Map from an Insurance company

Page 52: A Practical Guide to Story Mapping

An exercise

Page 53: A Practical Guide to Story Mapping

A mobile workspace booking app

53

Deloitte has commissioned you to develop a mobile application that will enable Deloitte staff to book workspaces across its national offices.

In teams of 5 or so, decompose this project into User Stories and organize them into iterations using the Story Mapping technique.

Think about the users that need to be considered, what their goals are, what activities make up those goals, and what functionality would be core versus nice-to-have in supporting those activities.

Catering?

Individual and group work spaces?

Canceling, editing, transferring bookings?

Logging in?

Office selection?‘Quick book’ feature? Non-functional requirements?

Reporting?