integrating collaborative requirements negotiation and prioritization processes: a match made in...
TRANSCRIPT
Integrating Collaborative Requirements Negotiation and
Prioritization Processes: A Match Made in Heaven
Nupul KukrejaAnnual Research Review
14th March 2013
Outline
1• Motivation
2• High-level overview
3• Background and Related work
4• Two-step Prioritization Approach
5• Evaluation and Results
Motivation• Not enough time and money to implement
all requirements– Need to prioritize requirements w.r.t. budget and schedule
constraints• High coordination and transaction costs to ascertain
requirement priorities or reprioritizing new/changed requirements
• Too many ties using MoSCoW or 1-10 scoring– Assumes stakeholders can correctly score requirements as
per intrinsic value– Difficult to ascertain value of new/changed requirements in
relation to others
SolutionValue-Based Requirements Prioritization (VBRP)!• Stakeholders select the most valuable requirements
for implementation– “Value lies in the eyes of the beholder” – but can be
captured with some effort• Decision theory folks working on this for a long time
– Some models (e.g. AHP) have been used for requirements prioritization with varying degrees of success
• Propose a ‘lightweight’ two-step approach based on TOPSIS (Technique of Ordered Preference by Similarity to Ideal Solution)
Two-step Approach – Overview
System
MMF-1Req 1
Req 2
MMF-2Req 3
Req 4
MMF-3Req 5
Req 6Prioritize w.r.t. business goals
(TOPSIS)
Prioritize w.r.t. business value,
relative penalty & ease of realization
(TOPSIS)
Decompose System into
MMFs
Decompose MMFs into low level requirements
6
Ideal Alternative (S’)
TOPSIS (What?)
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
10
Winbook• A collaborative, social networking based tool
for requirements brainstorming similar to facebook…
• …with requirements organization using color-coded labels similar to Gmail…
• …to collaboratively converge on software system requirements reaching win-win equilibrium (based on Theory-W)…
• …by keeping it short and simple like XP’s user stories!
0. Goals Articulation & Prioritization• WinWin methodology assumes project goals
are captured and prioritized before commencing “WinWin Negotiations”
• Added a “precursor” step for capturing and prioritizing goals prior to initiating negotiations
• Goals captured in Winbook and prioritized using success sliders
13
1. MMF Decomposition• Top-down decomposition of system into
Minimum Marketable Features (MMF)– Units of software value creation– Components of intrinsic marketable value
• Prioritize MMFs against project goals:– MMFs scored against each goal on a 1-9 scale
(1 = MMF has little to no contribution in realizing the goal; 9 = MMF wholly contributes towards realizing the goal. Absolute scale okay too)
– MMF priorities ascertained by underlying TOPSIS algorithm
15
2. Win Condition Capture & Prioritization• Win Conditions (WCs): Stakeholders’ desired objectives
stated in an easy to understand manner and formalized where necessary (“functional” WCs captured in ‘user-story’ format)
• MMFs decomposed into constituent WCs• Win conditions prioritized against:– Business Value (1: low; 9: high)– Relative Penalty (1: low; 9: high)– Ease of Realization (Story-points/Fibonacci scale)
• WCs priorities also computed by TOPSIS and scaled by MMF they belong to(Similar GUI as previous slide)
19
Two-Step PrioritizationGoals
Success Sliders
MMFs
Goal 1
Goal 2
…
Goal n
Requirements
Business Value
Relative Penalty
Ease of Realization
: Influences Priority Score
• MMFs influenced by business goals• Win condition scores influenced
by MMFs they belong to• Change in goal weights change
in requirement priorities• Dynamically (re)prioritizable
product backlog• Developers can ‘pull’ most
valuable requirements from (up-to-date prioritized) backlog
Evaluation & Results• Two-step approach deployed in software
engineering project course (CS577) @ USC since Fall 2011
• Empowered teams to perform sensitivity analyses:– Varying goal weights and gauging impact on MMFs/WCs– Varying criteria weights to ascertain high-value, high-risk
or complex WCs for prototyping• New requirements/changes comparable with
existing ones to ascertain optimum scope leading to channelized negotiation sessions
21
Evaluation & Results (Cont’d)• Ability to have requirements backlog with
accompanying rationale for each requirement• TOPSIS-Winbook approach provided significant
improvements in organizing, updating and accessing captured rationale over previous versions of the WinWin negotiation systems
• Live traceability from goals to win conditions (and vice versa) vs. static traceability matrix– Makes explicit contribution of MMFs to goals (and
consequently WCs to goals)
22
Limitations• TOPSIS rank reversals – inclusion of spurious
alternatives can change prioritization order of requirements– Not a major concern for cooperative teams (not intent
on gaming the system)– Cause of concern for negotiation among competitors
• Hierarchical prioritization may not agree with intuition/gut-feel– Teams manually account for discrepancies
• Prerequisites/dependencies not handled in current version of Winbook
23
Conclusion• Two-step prioritization decouples business
(goals/MMF) prioritization from individual requirements
• Ability to quickly gauge impact of changing business goal priorities on individual requirements
• Provides dynamic reprioritizable product backlog for use in lean/agile/kanban projects
24
Integrating a decision theory based prioritization framework with a collaborative requirements negotiation and management tool thus provides a rationale-backed prioritization of requirements allowing the stakeholders to channelize their negotiation and development efforts around the most valuable requirements.
A match truly made in heaven…
25