Prioritizing Your Product Backlog

5,549 views

Published on

Published in: Technology, Sports

Prioritizing Your Product Backlog

  1. 1. © 2009 Mountain Goat Software© Copyright Mountain Goat Software®Prioritizing YourProduct BacklogMike Cohnmike@mountaingoatsoftware.comJune 8, 20101
  2. 2. © Copyright Mountain Goat Software®®Mike CohnFounding member anddirector of Agile Allianceand Scrum AllianceFounder of MountainGoat SoftwareDoing Scrum since 1995Started my career as aprogrammer2
  3. 3. © Copyright Mountain Goat Software®®Combine formal & informalFormal prioritization approaches forChoosing among projectsChoosing between “epics” or “big features”An informal approach (expert opinion)Once you’ve selected the epics / big features3
  4. 4. © Copyright Mountain Goat Software®®Why?Features that are too small cannot beeffectively prioritized against each otherWhat’s more important in a word processor?The A key or the E key?Tables or undo?What’s more important on a car?The left front wheel or the right front wheel?Increased leg room or a larger engine?4
  5. 5. © Copyright Mountain Goat Software®®5
  6. 6. © Copyright Mountain Goat Software®®Prioritize epics then open them up tooptimize release contentsThe release6
  7. 7. © Copyright Mountain Goat Software®®Approaches to prioritizingKano analysisExpert opinionTheme screeningTheme scoringRelative weightingFinancial analysis7
  8. 8. © Copyright Mountain Goat Software®®Non-financialprioritization8
  9. 9. © Copyright Mountain Goat Software®®Kano analysis1Must be present in order for users to beMandatory / BaselineThe more of it, the betterLinearFeatures a user doesn’t know she wants,until she sees itExciters / Delighters9
  10. 10. © 2009 Mountain Goat Software© Copyright Mountain Goat Software®®Impact on user satisfactionFeaturePresenceSatisfactionLowHighLow HighExciters/DelightersMandatoryLinear10
  11. 11. © Copyright Mountain Goat Software®®Surveying usersTo assess whether a feature is baseline,linear, or exciting we can:Sometimes guessOr survey a small set of users (20-30)We ask two questionsA functional questionHow do you feel if a feature is present?And a dysfunctional questionHow do you feel if that feature is absent?11
  12. 12. © Copyright Mountain Goat Software®®Functional and dysfunctional formsIf your hotel roomincludes a freebottle of water, howdo you feel?I expect it to be that way.I like it that way.I am neutral.I can live with it that way.I dislike it that way.✔If your hotel roomdoes not include afree bottle ofwater, how do youfeel?I expect it to be that way.I like it that way.I am neutral.I can live with it that way.I dislike it that way.✔Functionalform ofquestionDysfunctionalform ofquestion12
  13. 13. © Copyright Mountain Goat Software®®Categorizing an answer pairDysfuncctional QuuestionLike Expect Neutral Live with DislikeLikeExpectNeutralLive withDislikeQ E E E LR I I I MR I I I MR I I I MR R R R QFunctionalQuestionMandatoryLinearExciterQuestionableReverseIndifferent13
  14. 14. © Copyright Mountain Goat Software®®Aggregating resultsApply stylesheetsAutomate reportexecutionExport reports toPowerPoint3 11 31 1 3 24 22 20 4 1 021 9 14 5 1 1QuestionableReverseIndifferentMandatoryLinearExciterThemes14
  15. 15. © Copyright Mountain Goat Software®®What to includeAll of the baseline featuresSome amount of linear featuresBut leaving room for at least a few exciters15
  16. 16. © Copyright Mountain Goat Software®®You are thinking about buying a new eco-friendlycar. Identify examples of:Mandatory featuresLinear featuresExcitersYour new car16
  17. 17. © Copyright Mountain Goat Software®®Relative weightingAssess the impact of having a story/theme from 1-9Assess impact of NOT having it from 1-9Calculate the value of each story or theme relative tothe entire product backlogThis gives you the relative value of that story or themeEstimate the cost of each story themeCalculate the cost of each story or theme relative tothe entire product backlogThis gives the relative cost of that story or themePriority is given by (RelativeValue ÷ Relative Cost)217
  18. 18. © Copyright Mountain Goat Software®®Relative weighting: an exampleMore investment choicesPortfolio rebalancingComply with new lawTotal: RelativePenaltyTotalValueValuePercentEstimateCostPercentPriority8916291411103540312910064404214644272910091115100Value Percent = TotalValue / ∑ (TotalValue)Cost Percent = Estimate / ∑ (Estimate)18
  19. 19. © Copyright Mountain Goat Software®®You are theVP of Product Development atMyCookSpace.com, a social networking siteYou have a minimally functional site up with 4,000registered cooksYou are trying to grow that to 400,000 as quickly aspossible before you run out of moneyYou are also interested in other features that result inrevenueIdentify 4-5 epics or big features to developComplete a relative weighting worksheetMake reasonable but wild guesses at development effortestimatesPrioritizing MyCookSpace.com19
  20. 20. © Copyright Mountain Goat Software®®20
  21. 21. © Copyright Mountain Goat Software®®Expert opinionFocus needs to be on delivering value to thecustomerBut consider these four factors1. Delivery of new capabilities2. Development of new knowledge3. Mitigation of risk4. Changes in relative cost321
  22. 22. © Copyright Mountain Goat Software®®Theme screeningIdentify around 5-9 selection criteria forwhat is important in the next releaseSelect a baseline themeLikely to be included in the next releaseUnderstood by most team membersAssess each candidate theme relative to thebaseline theme422
  23. 23. © Copyright Mountain Goat Software®®Theme screening: an exampleContinue?ThemeARankNet ScoreGenerates revenue in Q2Starts us integrating product linesCompetitiveness with ABC Corp.Importance to existing customers0ThemeB−00EpicCBaselineThemeThemeDEpicEEpicF0−000−100000−0 0−00001 7 34 4 4 2N N NY Y Y YSelectioncriteria Themes = better than0 = same as− = worse than23
  24. 24. © Copyright Mountain Goat Software®®Theme scoringLike theme screening but selection criteria areweightedNeed to select a baseline theme for each criteriaAvoids category compressionEach theme is assessed against the baseline foreach selection criteria5Much worse than reference 1Worse than reference 2Same as reference 3Better than reference 4Much better than reference 524
  25. 25. © Copyright Mountain Goat Software®®3.901 3 2Yes No YesTheme scoring: an exampleContinue?RankNet ScoreGenerates revenue in Q2Starts us integrating product linesCompetitiveness with ABC Corp.Importance to existing customersWeightRatingTheme AWeightedScore32350.750.200.452.50RatingEpic BWeightedScore13422.150.250.300.601.00RatingTheme CWeightedScore43433.401.000.300.601.5025%10%15%50%25
  26. 26. © Copyright Mountain Goat Software®®the relative weighting exercise, completea theme screening or theme scoringworksheet for MyCookSpace.comTheme screening or scoring26
  27. 27. © Copyright Mountain Goat Software®®Financialprioritization27
  28. 28. © Copyright Mountain Goat Software®®How much?How long?At what interest rate?If you’re buying a house:It’s a $220,000 loanFor 30 yearsAt 7% per yearThree factors to consider28
  29. 29. © Copyright Mountain Goat Software®®Technique #1Net PresentValue (NPV)29
  30. 30. © Copyright Mountain Goat Software®®Which project would you prefer?YearProjeect A Projeect BInvestment Return Investment Return012345$1,000 $1,000$200 $3,000$300 $500$500 $300$3,000 $200$0 $030
  31. 31. © Copyright Mountain Goat Software®®A dollar today is worth more than a dollar ayear from nowThe time-value of moneyI’ll gladly pay you onTuesday for a hamburgertoday.31
  32. 32. © Copyright Mountain Goat Software®®Calculating the value of future dollarsTo buy a $5 hamburgernext Tuesday…To buy a $5 hamburgerin a year, how much doI put in the bank today?I would put around $4.99in the bank today$5.00 $5.001.10$4.54==Assumes 10%interest rateThe present value of$5.00 a year from now32
  33. 33. © 2009 Mountain Goat Software© Copyright Mountain Goat Software®®Present value of one future amountFutureValuePresentValue=$5.00= $4.54An example:GeneralizingFVtPV =Simplifying-t33
  34. 34. © Copyright Mountain Goat Software®®Measures the return on a theme or projectas an amount of moneyNet present value (NPV)Ft-tNPV(i) = ∑t=0n34
  35. 35. © Copyright Mountain Goat Software®®NPV exampleQuarterCashFlow-t DiscountedCash FlowRunningTotal01234-200 1.000 -200 -200-600 0.971 -583 -783100 0.943 94 -689300 0.915 275 -414500 0.888 444 30Assuming 12% annual discount rate (3% / quarter)35
  36. 36. © Copyright Mountain Goat Software®®Discount rate sensitivityQuarter Cash FlowDiscounted CashFlow (3%)DiscountedCash Flow (6%)01234Total–200 –200 –200–600 –583 –783100 94 –689300 275 –414500 444 30100 30 –29NPV is highly sensitive to the chosen discount rateDo the project underthese circumstancesBut not underthese36
  37. 37. © 2009 Mountain Goat Software© Copyright Mountain Goat Software®®Comparing NPVsHighest NPV brings the most present-value dollarsto the companyTheme NPVScalabilityGift registryAd hoc reportingPay by invoice$2,100$1,253$784$385Comparing NPVs can bemisleading. What if:•“Pay by invoice” requiresa $5 investment•“Scalability” requires$50,000?37
  38. 38. © Copyright Mountain Goat Software®®Technique #2Internal RateofReturn (IRR)38
  39. 39. © Copyright Mountain Goat Software®®Rather than expressing returns in dollars,we’d like to express return as a percentageAllows for direct comparisonsNPV = how much money a project willreturnROI = how quickly an investment will growReturn as a percentage39
  40. 40. © Copyright Mountain Goat Software®®Internal rate of return (IRR) and ROIIRR = Internal Rate of ReturnOften called Return On Investment (ROI)The interest rate at which NPV is 00 = PV(i*) = Ft 1+ i( )−tt= 0n∑40
  41. 41. © Copyright Mountain Goat Software®®IRR gives us the discount rate at which we don’tcare whether or not we do the projectWe don’t make $30; we don’t lose $29; we break evenRemember this table?Quarter Cash FlowDiscounted CashFlow (3%)Discounted CashFlow (6%)01234Total–200 –200 –200–600 –583 –783100 94 –689300 275 –414500 444 30100 30 –2941
  42. 42. © Copyright Mountain Goat Software®®Use Excel’s irr functionHow to calculate ROI or IRR−200, −600, 100, 300, 500})An investmentday of the projectremainder ofproject(4 quarters)42
  43. 43. © Copyright Mountain Goat Software®®Advantages and disadvantagesAdvantagesYou don’t need to guess at a discount rate likewith NPVCan be used to directly compare projectsDisadvantagesCalculation is hard to do by hand (but easy inExcel); may lead to numbers being distrustedCannot use in all circumstancespositive43
  44. 44. © Copyright Mountain Goat Software®®Technique #3Payback period44
  45. 45. © 2009 Mountain Goat Software© Copyright Mountain Goat Software®®Payback periodThe amount of time before an initial investment ispaid backI loan you $5.You pay me back $1/week.The paybackperiod is 5 weeks.Quarter Cash FlowRunningTotal01234-200 -200-200 -400100 -300300 0500 500Paybackperiod is 3quarters.45
  46. 46. © Copyright Mountain Goat Software®®AdvantagesCalculation is very easyLonger payback period = greater riskDisadvantagesDoesn’t consider the time-value of moneyAdvantages and disadvantages46
  47. 47. © Copyright Mountain Goat Software®®Discounted payback periodQuarterCashFlow-ti=3%DiscountedCash FlowRunningTotal01234-200 1.000 -200 -200-200 0.971 -194 -394100 0.943 94 -300300 0.915 275 -25500 0.888 444 419investment is paid backDiscounted paybackperiod = 4 quarters47
  48. 48. © Copyright Mountain Goat Software®®Net PresentValue (NPV)Expresses return as an amount of moneyReturn on Investment (ROI) / Internal Rate of ReturnThe interest rate at which NPV = 0That is, at which you’d be indifferent to the investmentExpresses return as a percentageDiscounted payback periodAmount of time before discounted returns equal theinvestmentExpresses return as an amount of timeFinancial analysis recap48
  49. 49. © Copyright Mountain Goat Software®®PersonWeeksCost3-YearReturnNPV IRRD. Payback(Quarters)Feature AFeature BFeature CFeature DFeature EFeature FFeature GFeature HFeature IFeature JFeature KFeature LFeature MFeature NFeature O25 $150 $1,085 $448 133% 232 192 $2,109 $940 172% 490 $540 $2,537 $883 89% 248 $288 $1,360 $443 76% 455 $330 $900 $191 48% 279 $474 $1,365 $331 56% 490 $540 $5,964 $2,519 139% 550 $300 $2,415 $1,023 146% 215 90 $1,600 $747 221% 130 $180 $640 $182 65% 275 $450 $516 ($104) 5% NA40 $240 $171 ($110) (12%) NA80 $480 $1,025 $142 36% 318 $108 $185 $7 24% 212 $72 $1,505 $748 355% 1Comparison matrix49
  50. 50. © Copyright Mountain Goat Software®®Mike Cohnmike@mountaingoatsoftware.comwww.mountaingoatsoftware.comtwitter: mikewcohn(720) 890−611050

×