260 likes | 431 Views
Integrating Collaborative Requirements Negotiation and Prioritization Processes: A Match Made in Heaven. Nupul Kukreja Annual Research Review 14 th March 2013. Outline. Motivation. Not enough time and money to implement all requirements
E N D
Integrating Collaborative Requirements Negotiation and Prioritization Processes: A Match Made in Heaven Nupul Kukreja Annual Research Review 14th March 2013
Motivation • Not enough time and money to implementall 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
Solution Value-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 Decompose System into MMFs Decompose MMFs into low level requirements Prioritize w.r.t. business value, relative penalty & ease of realization(TOPSIS) Prioritize w.r.t. business goals(TOPSIS)
TOPSIS (What?) Alternative 1 Ideal Alternative (S’) Criterion 1 Non-Ideal Alternative (S*) Alternative 2 Criterion 2 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 preferred Ideal: Best score for each criterion Non-ideal: Worst score for each criterion
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
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
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)
Two-Step Prioritization • 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 : Influences Priority Score
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
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)
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
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
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…
Thank you! Questions?