stakeholder winwin and requirements prioritization nupul kukreja 19 th october 2015 1
DESCRIPTION
Agenda WinWin Negotations – What/Why? The ‘science’ of decision making – what, why and how? The role of decision making in Value Based Requirements Engineering & Prioritization (VBRE/RP) Importance of ‘Planning’ VBRP – what, why & how? Practical ExampleTRANSCRIPT
1
Stakeholder WinWin And
Requirements Prioritization
Nupul Kukreja19th October 2015
Agenda• WinWin Negotations – What/Why?• The ‘science’ of decision making – what, why
and how?• The role of decision making in Value Based
Requirements Engineering & Prioritization (VBRE/RP)
• Importance of ‘Planning’• VBRP – what, why & how?• Practical Example
Will You Buy The Car?Picture the following dialogue between youand a car salesperson:
You: I’d like to buy the fully loaded Honda Accord, for $25,500. I’ve done my homework. That’s the best price!
Salesperson: You got it! Deal! Let’s finish the paper work.
Negotiation• Negotiation is traditionally viewed as a win-
lose game between two parties• Even if you bought the car on your terms,
you’d still feel you left something on the table• You’d feel it was too easy!• Moral:
– DON’T say “YES” to everything– DON’T say “NO” to everything either
• Than what do you say?
WinWin Negotiations• Negotiation, especially when multiple success
critical stakeholders are involved should never be “Win-Lose”
• There should always be a “WinWin” – even if one party feels they’re losing, they’ll “flip” the winners in their favor over time Lose-Lose
• WinWin != Satisfying Everyone• WinWin == Satisficing Everyone (It’s different)How’s it done?
7
Win ConditionWin Condition
AgreementAgreement OptionOption
I ssueI ssueinvolves
addresses
adopts
covers
WinWin Taxonomy (a.k.a. WIOA Model)
Win-Win Equilibrium:• All win conditions covered
by agreements• No outstanding issues
Win Condition: Stakeholders’ desired objectives stated in a form understandable by users, customers and other stakeholders and formalized only where necessaryIssue: captures conflicts between win conditions and their associated risks and uncertaintiesOption: candidate solutions to resolve an issueAgreement: captures shared commitment of stakeholders with regard to accepted win conditions or adopted options
8
We also capture a 3rd dimension of “Relative Penalty” – Degree of project failure if WC not deilvered
1. Refine and expand negotiation topics2. Collect stakeholders’ win conditions3. Converge on win conditions4. Define glossary of key terms5. Prioritize win conditions on:
Business Value vs. Ease of Realization6. Reveal issues and constraints7. Record issues and options8. Negotiate agreements
WinWin Negotiation Primer
Shared taxonomy of topics to understand project scope
Record first draft of stakeholder’s needs/wants for all to view
Disambiguation and de-duplication
Domain vocabulary to develop mutual understanding
Degree of project success dependent on win condition
Technological, social, political or economic feasibility
Variance in prioritization provokes discussion of issues/constraintsIssues recorded along with possible resolution tactics
Mutually agree to win conditions/optionsAbove steps accelerated by a “Shaper” i.e. a facilitator who guides the negotiation
10
WinWin Equilibrium• The state when:
– All Win Conditions have been covered by agreements – No outstanding issues
• Provides a ‘heat map’ of the current state of negotiations:– RED: Win Conditions (WC)/Options not agreed to or issue not
closed– GREEN: WCs/Options agreed to or issues closed– YELLOW/AMBER: WCs/Options marked as candidates for
‘potential agreement’ further discussion may be required• Winbook provides capability to ‘see’ this heat map!• Every new feature request, expectation, benefit MUST BE
LOGGED into Winbook – helps in having an up to date view of the ‘heat’ map w.r.t., the current state of negotiations
11
Winbook and WinWin Negotiations• Based on the WinWin Negotiation Framework and directly
supports the WIOA Model• Winbook is a tool to ‘log’ the negotiation and show its ‘status’
as function of time• “Functional” Win Conditions to be captured in the user-story
format (As a <role>, I can <activity> so that <business value>)• Dynamic prioritization of win conditions with sensitivity
analysis capability• Winbook Tutorial available on CS577 class-website under
“Tools & Tutorials”• WinWin Sessions are HUMAN centric and highly iterative. A
tool like Winbook only helps ‘document/augment’ the process and not execute it
WHAT NEXT?Negotiations over…
13
Insightful Questions• Given N requirements and budget/schedule
constraints which ones to implement?• Which test cases should I run given time
constraints?• What programming language should I choose?• Which design should I choose?• What framework should I choose?• What architecture should I choose?• Which project(s) should we choose?• Heck! How do I choose anything?
14
Decision Making – What?Definition:*
• Decision making can be regarded as the mental processes (cognitive process) resulting in the selection of a course of action among several alternative scenarios
• Every decision making process produces a final choice
• The output can be an action or an opinion of choice.
*Courtesy: http://en.wikipedia.org/wiki/Decision_making
15
Decision Making – Making a ChoiceWhich apartment do you want to live in?
16
Making a Choice – How?• So, just how did you choose your apartment?• What all did you ‘see’ / evaluate before signing
the lease?• Examples of possible criteria:
– Rent per month– Location i.e., quality of area– Proximity to campus– Presence of a good looking neighbor – …and probably several others
17
Analyzing the ‘Problem’• You have the two key ingredients necessary for a
decision problem:– A list of criteria– A set of alternatives
• Problem: Given a list of criteria AND a set of alternatives select the alternative that best suits the given criteria
Decision Analysis
Criteria
Alternatives
Rank ordered set of alternatives
Apartment Selection
Rank ordered set of apartments
18
Decision Making – Why Bother?• Converts ‘art’ into science
– Adds rigor to the act of decision making• Justification of choice of action i.e., why you
chose what you chose?– Helps decrease legal liability
Ex.: Why did Company A select the bid/tender of Company X over Y? (It’s not only cost )
• Documents the institutional memory that lead to that particular decision (i.e., helps trace back to provide justification of decision)
19
Decision Making – How do you do it?• If it is a well studied science (it is) does anything
exist ‘out there’ to help practice this ‘science’?• There are various techniques that can be
employed:– Multi-attribute utility theory (ISE 562 in Fall)– Analytical Hierarchy Process (AHP)– Simple Additive Weighting (SAW)– TOPSIS (Technique of Ordered Preference by
Similarity to Ideal Solution)– …and many more (http://en.wikipedia.org/wiki/MCDA#MCDM_Methods
)
20
Decision Problem – Look and Feel
Criterion 1
Criterion 2
Criterion 3 … Criterion
N
Alternative 1 S11 S12 S13 … S1N
Alternative 2 S21 S22 S23 … S2N
Alternative 3 S31 S32 S33 … S3N
… … … … … …
Alternative N SN1 SN2 SN3 … SNN
Sij = Measure of how well Alternative ‘i‘ does on Criterion ‘j’
Almost always has a matrix-like representation:
When considering multiple criteria in decision making the problem is often referred to as
“Multiple Criteria Decision Analysis” (MCDA) or “Multiple Criteria Decision Making” (MCDM)
21
Okay, Great! But what has any of it got to do with VBSE?
• Everything!! • How do you decide:
Which requirement to implement first?Which component to design first?Which architectural style/pattern to use?Which requirements to test first?Which test-cases form part of the regression
suite?What all to prototype first?For which component to write the “first line of
code”?
ControlTheory
22
Wait! But I’ve already done all of this before and I got it right too!
• Probably! However…• Were you able to justify your choice i.e., how
you came about choosing a specific option?– Was there ever a need to do so?
• Just “how” did you decide?– Perhaps intuition, gut feel, domain knowledge,
tossing a coin, do as the Romans do…• Yes, a simple 1-10 works or even MoSCoW
(Must, Should, Could, Would – have) but for relatively simple problems
23
PLANNING
24
Planning and Decision Making• What do we work on now?• What do we work on next?• How much money can/should we spend?• How much is being spent?• Are the risks being monitored/mitigated?• How does risk impact the plan?
Important to plan around ‘value’
25
Purpose of ‘Planning’*• Why do we do it?
– Reduce risk & uncertainty– Supporting better decision making– Establishing trust (i.e. frequent delivery)– Conveying expectations
• Planning is a ‘quest for value’– Attempt to find an optimal solution of the overall
product development question: What should be built?
*Agile Estimation & Planning – Mike Cohn
26
A Good Plan• One that stakeholders find sufficiently reliable• One that can be used as basis for decision
making– Approximate time to market– An idea of the set of features
• Made more precise as project moves on• Is a ‘living’ artifact showing the current status
of the project to avoid last minute surprises• Is planned around ‘value’
27
Planning for ‘Value’*• Stakeholders needs must be understood• Just delivering features is not important
– Necessary to balance scope, schedule, cost and value of features comprising the release
• Various factors impacting prioritization– Financial value of having the features– Cost of development– Amount/significance of new knowledge
• Product (what)• Project (how)
– Reducing Risk (Business/Technical)• Schedule• Cost• Functionality
*Agile Estimation & Planning – Mike Cohn
28
Decision Making and Planning for Value• Decision analysis techniques can be ‘overloaded’
to perform requirements prioritization…• …the rank-ordered output of decision making
techniques could also rank-order requirements!• Requirements prioritized against the
goals/needs/values of the stakeholders VBRP
• The prioritized requirements form the basis of the ‘plan’ – what is being delivered, for how much and by when?
29
The ‘Dimensions’ of Value• Value is a multi-dimensional quantity, a simple 1-10 may
not cut it (too many ties – Must have, Must-must haves, must-must-must haves etc.)
• Value lies in the eyes of the beholder…and so does its dimensions!
• Dimensions are ‘hidden’ within the ‘expected benefits’ of the various stakeholders
• The benefits serve as the goals/objectives/criteria on which to prioritize the requirements
• Point to consider: Are all dimensions* equally important?(*dimensions = benefits = criteria = goals = objectives)
30
Prioritizing Criteria/Value Dimensions
• All criteria may NOT be equally important• But just HOW do you prioritize the criteria
themselves?– A simple 1-10 (Yes, it works )– A highly involved process like multi-attribute utility
theory (MAUT) to get the utility functions for each criteria which shows the risk attitude of each criterion
– Or another interesting technique - Project Success Sliders*
* Radical Project Management by Rob Thomsett
31
Project Success Sliders
Image: Radical Project Management by Rob Thomsett
25%
50%
75%
Success Criteria
(defined at start of project)
32
Project Success Sliders
Image: Radical Project Management by Rob Thomsett
25
50
100
75
25
75
50
1
2
4
3
1
3
2
It’s ‘subjective’ but an extremely effective tool to understand the importance of expectations and their relative tradeoffs!
They can be (and are) interpreted on a relative scale i.e., twice as important, half as much etc.,
33
Putting It All TogetherYou have:
1.Relative ranking of all criteria2.List of requirements (or win conditions)
What else do you need?• Scores! How well each requirement/win-
condition does on each criteriaYou STILL need something else…
• The decision analysis ALGORITHM!
34
Overall Score
Criteria
Alternatives
Criterion 1
Criterion 2
Criterion 3 … Criterion
N
W1 W2 W3 … WN
S(A1) Alternative 1 S11 S12 S13 … S1N
S(A2) Alternative 2 S21 S22 S23 … S2N
S(A3) Alternative 3 S31 S32 S33 … S3N
… … … … … … …
S(AN) Alternative N SN1 SN2 SN3 … SNN
Decision Analysis Algorithm: Given a set of criteria with possible weights and the measure of how the alternatives rank on the respective criteria find an optimal alternative
The scale of the scores could be absolute, relative, 1-10 (Likert
Scale), Fibonacci... …must be consistent across
criterion column
35
Algorithms for Practicing VBRP• There are various algorithms in literature to choose
from along with those from MCDA/M:– Kano Analysis– Planning Poker– 100-point assignment technique– Simple Additive Weighting– Quality Function Deployment (House of Quality)– Cost of Delay– Weigers’ Prioritization– Theory-W (Business value vs. Technical Feasibility)– TOPSIS– …and quite a few more
36
A Practical Example• TOPSIS: Technique of Ordered Preference by
Similarity to Ideal Solution (MCDM Technique)• Integrated in Winbook for prioritizing MMFs and
win conditions• We’ll be using Business Value, Technical
Feasibility and Relative Penalty as the criteria against which to rank the requirements
• MMFs Prioritized against stakeholders’ value propositions/goals/objectives
• Success Sliders for prioritizing value propositions
37
Ideal Alternative (S’)
TOPSIS Primer
Criterion 1
Criterion 2
Alternative 1
Alternative 2Non-Ideal Alternative (S*)
Aim: Rank order alternatives by their ‘closeness to ideal’ and ‘distance from non-ideal’Criterion: Has ‘direction of preference’ i.e. more/less of the criterion is preferredIdeal: Best score for each criterion Non-ideal: Worst score for each criterion
38
39
Refinements to TOPSIS/VBRP• Prerequisite Handling (not yet integrated in
Winbook)– Specifying MMF/WC prerequisites and factoring in
prioritization– Simple solution: Priority of item less than all those
in its prerequisite graph • Hierarchical Prioritization (partially integrated)
– Prioritizing high level MMFs w.r.t. project goals– Prioritizing WCs w.r.t. MMFs– Prioritizing test cases w.r.t. WCs and so on
40
Points To Note• TOPSIS is ONE way of practicing VBRP• You could even perform COTS tradeoff analyses
using it. (It’s a decision problem!)• Use the VBRP technique that is best suited to the
situation• Some prioritization techniques do not lend
themselves to a typical spreadsheet like analysis• The output of some techniques could be
bucketed (categorized into the MoSCoW buckets) or ordinal (explicitly rank ordered)
41
Conclusion• Tools and techniques for prioritization are only
one side of the coin…• …negotiations and discussions are the other.
The latter must be held for the former to be of any value. Using the tool will NOT guarantee VBRP
• There “maybe” a Homework on VBRP…keep a watch out for the announcement