the 10 step model for agile requirements - allan kelly · agile 10 step 12 1. objective 2....

32
The 10 Step Model for Agile Requirements ACCU Conference 2011 Oxford allan kelly http://www.allankelly.net Twitter: allankellynet Software Strategy Ltd. http://www.softwarestrategy.co.uk

Upload: others

Post on 14-Jul-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

The 10 Step Model for Agile Requirements

ACCU Conference 2011 Oxford

allan kelly http://www.allankelly.net

Twitter: allankellynet

Software Strategy Ltd. http://www.softwarestrategy.co.uk

Page 2: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 2

Allan Kelly

•  Training & Coaching for Agile adoption and deepening

•  Author: •  Changing Software Development:

Learning to be Agile, Wiley 2008.

97 Things Every Programmer Should Know, Henney, 2010

Context Encapsulation in Pattern Languages of Program Design volume 5, 2006

33 Business Strategy Patterns for Software

Creators

Page 3: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 3

How do you do requirements in Agile?

Actually, there’s more to it than

that… User

Stories!

Gee, I thought everyone knew

that….

Page 4: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 4

User Stories

4

As a <Role> I can <Action> So That <Reason>

Where do roles come from?

Aren’t personas in here somewhere?

And what about Stakeholders and CUSTOMERS ?

What are reasonable actions and reasons?

Where’s the Business value?

Page 5: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 5

There is more to Requirements then User Stories

Page 6: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 6

In the beginning….

There is work to do

Page 7: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 7 7

Work needs doing

Project Product (Maintenance)

Enhancements to something that exists Team exists Thing exists

New thing Start & end dates New team

Salami slice

Goal driven

Page 8: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 8

Salami Agile

1.  Big up front requirements, design, estimation, etc.

2.  Iterations •  Slice off requirement •  Implement (Deliverable) •  Repeat

Interface Agile team to traditional organization •  Limited Agile •  Limit change risk •  Limited benefits

Comfort food… appearance of

normality; can roll with changes…

But more work

Page 9: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 9

Goal directed projects

•  Business case sets out objective •  Not a shopping list of features

•  How goal is achieved is part of the work •  Research, experimentation

•  Governance based on •  Progress against goal •  And future potential

9

Increase online sales by 10%

Reduce customer churn by 5% [by improving CRM

system]

Page 10: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 10

Goal directed: Start with Output

•  Only outputs have value •  Decide what you are trying to achieve •  Find inputs to create outputs

10

Inputs

Work back - Find inputs needed to reach goal

Inputs build

Page 11: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 11

Take your pick… Project

Salami Agile

Goal Directed Agile

Page 12: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 12

Agile 10 step

12

1.  Objective 2.  Stakeholders 3.  Vision 4.  Roles 5.  Personas 6.  User Stories 7.  Acceptance Tests 8.  Development 9.  Delivery 10.  Value check

Page 13: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 13

10 Step

1.  Objective 2.  Stakeholders 3.  Vision 4.  Roles 5.  Personas 6.  User Stories 7.  Acceptance Tests 8.  Development 9.  Delivery 10.  Value check

From above: What is the goal? Why are we doing this?

Team’s Vision for the solution

Who are the stakeholders? What is success to them?

Who will use the system?

Key Personas

How do we know we are done?

Close the loop: • Progress against objective • Value delivered? • Should we continue?

Sta

keho

lder

s R

oles

P

erso

nas

Who are the customers?

How are they segmented?

Page 14: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk

Objective – why?

Is NOT… •  Requirements document •  Shopping list •  Technical

Could be… •  Mission statement •  Marketing brief •  Market opportunity

assessment •  Project Initiation

Document

I have a dream…

Put a man on the moon and return

him safely…

Beat Xerox

Encircle Caterpillar

Cannon

Komatsu

Page 15: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk

Objective

•  A reason to start •  Start thinking •  Gather resources

•  A reason to stop •  Measure of success

•  How do you know you are done? •  Measure progress

against objective

Page 16: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 16

Stakeholders

16

Stakeholder: Any person or organizational group with an interest in, or ability to affect, the system or its environment

Stakeholder: Human or other legal entity (company etc.) playing a system role and

thereby having a valid interest in the development of the system or product. Subclasses include:

beneficiaries; operator; regulator; negative stakeholder.

Gilb, Competitive Engineering, 2005

Alexander & Beus-Dukic, Discovering Requirements, 2009

Page 17: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 17

Stakeholders

17

The process of working effectively with stakeholders has three major steps: •  Stakeholder identification •  Stakeholder analysts •  Stakeholder management

Candle, Paul & Turner, Business Analysis Techniques, 2010

Page 18: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 18

Stakeholders & Stakeholders

Stakeholders

Customers Regulators, etc….

Internal Stakeholders

External Stakeholders

Page 19: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 19

Project goal

Stakeholders have goals too

Might be aligned with your project •  Or might be a little different

19

Stakeholder A

Stakeholder C

Page 20: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 20

All customers are not equal… segment!

Page 21: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 21

Vision

•  How are you going to meet the objective?

•  The answer to the stakeholders needs •  Something you can build

Page 22: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 22 22

Stakeholders • The work can deliver benefits to many stakeholder • Some stakeholders are interested even if the work has no direct value to them

Roles • Only some of the stakeholders will interact directly with the system • All roles are stakeholders but not all stakeholders have roles

Personas • Add depth of understanding about roles • Different personas to the fore at different times (iterations/releases)

Page 23: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk

The middle bit…

•  Acceptance test •  Development

•  Product Backlog •  Sprints •  …

•  Delivery

Not today, thank you

Page 24: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 24

Value – did we make a difference?

•  Delivery technology “fix” •  But fixes wrong problem •  Fix technology but not the process

•  Deliver great software •  But nobody uses it

•  Deliver what was asked for •  Not what was needed •  Doesn’t get used to the full

Delivery is only the start…..

Page 25: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 25

Mind the Gap

•  Value delivered not the same as value recognized •  Software delivered may never be used: $0 value Or •  More useful then expected: +$$$ value

Page 26: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 26

Question time

•  Do you… •  Adequately identify and quantify the

benefits of IT projects? •  Overstate benefits in order to obtain

funding? •  Adequately review and evaluate

completed projects?

Page 27: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 27

The truth about project evaluation

27

• 70% believe they are failing to identify and quantify the benefits adequately

• 38% openly admit they overstate the benefits in order to obtain funding

• 80% report that the review and evaluation of completed projects is also inadequate

•  due to the focus on whether the project achieved cost, time and quality objectives and not on whether the intended benefits were realized.

Delivering value from IS and IT investments, John Ward, Cranfield School of Management, 2006 http://www.som.cranfield.ac.uk/som/dinamic-content/research/documents/deliveringvaluereport.pdf

Survey of 100 IT/IS & Business managers in UK and Benelux, 2006

Page 28: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 28

Stakeholders define value

•  Benefit is value delivered to stakeholders •  So, you need to know who the stakeholders are to determine

value

•  How do you measure benefit? •  Ask the stakeholders!

28

Page 29: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 29

Business Practices that Enhance Productivity

Getting the most from IT requires: 1.  Move from analogue to digital processes 2.  Open information access 3.  Empower the employees 4.  Use performance-based incentives 5.  Invest in corporate culture 6.  Recruit the right people 7.  Invest in human capital

29

Source: Wired for Innovation,

Brynjolfsson & Saunders, 2010

Page 30: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 30

Ano

ther

vie

w

Page 31: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 31

Agile 10 step

•  A process? •  Maybe

•  A check list? •  Maybe

•  Link it all together? •  Hopefully!

•  What do you think? •  Give you insights? •  Give you ideas?

31

Page 32: The 10 Step Model for Agile Requirements - Allan Kelly · Agile 10 step 12 1. Objective 2. Stakeholders 3. Vision 4. Roles 5. Personas 6. User Stories 7. Acceptance Tests 8. Development

www.softwarestrategy.co.uk 32

Summary

•  More to requirements than User Stories

•  Choose •  Salami Agile or, •  Goal Directed

•  Agile 10 Step •  Evaluate!

Thank you! Allan Kelly – [email protected] http://www.allankelly.net http://www.softwarestrategy.co.uk http://blog.allankelly.net Twitter: allankellynet