IMPORTANT! If you are going to use any prioritization method, be sure that you actually implement more than just the highest level of priority items. If stakeholders consistently see that all that will implemented are the highest priority items, then soon they will stop believing that priority levels mean anything and that everything that is not flagged as the highest priority will not get implemented. And if that occurs, then either everything your clients prioritize will be the highest priority or they simply will no longer cooperate because they have lost confidence in the process.
Also known as: The 100-Point Method[3]
Cumulative Voting (CV) Prioritization is a ratio-scale prioritization technique in which the stakeholders taking part in the prioritization process are given a fixed number of prioritization units
which they then vote
(aka distribute) among the items being prioritized (requirements, objectives, goals, stakeholders, features, functions, etc.). The items with the most units assigned to them by the various stakeholders are the highest priority.
Another feature of Cumulative Voting is the option to weight
the votes of some stakeholders by applying a multiplier of some sort. So if you had three primary stakeholders, you could weight the votes of the most important stakeholder (perhaps the one paying for the effort) at a full weight (multiply by 1), weight the votes of the second most important stakeholder a bit less (multiply by .75), and weight the votes of the least important stakeholder even less (multiply by .5). [2]
Cumulative Voting is normally done against ALL items of same level of abstraction at the same time (for example, the entire set of detailed requirements). This means the standard CV process does not scale well as you add more items to be prioritized. To address this issue, the Hierarchical Cumulative Voting (HCV) variant (see separate wiki page) was developed for situations when there are a large number of items to be prioritized.
Hierarchical Cumulative Voting (HCV) - See the separate Hierarchical Cumulative Voting wiki page
See the Prioritization wiki page for a discussion of why to prioritize.
This assumes you have evaluated your prioritization needs and decided that Cumulative Voting is the technique you will use.
Define the exact set of items that will be prioritized and gather them together in a form that allows them to be easily reviewed. All items should be at the same level of abstraction and described sufficiently so that any stakeholder can reasonably understand what it is.
Decide how and where each stakeholders vote
will be recorded? The process selected should allow for each stakeholders vote
to be recorded separately and without visibility into the votes
other stakeholders may make.
Given the number of items being prioritized, decide upon an appropriate number of units to provide each stakeholder to assign with their votes
. It is also a good idea to assign the units a form that has meaning to the stakeholders, such a dollars, man-hours of work, points
, or similar forms.
The amount provided to the stakeholder should be of a sufficient level to allow them to assign a small to moderate amount to most of the items while heavily favoring a few select items. But you also don't want to provide so much that scale becomes meaningless.
For example, if evaluating 25 items, you might provide $500 dollars
of units for stakeholder assignment. This allows for a breakdown such as 5 high-priority items assigned $50 each (for $250 total), 5 medium-priority items at around $30 each ($150 total), and 10 low-priority items at $10 each (the last $100 remaining), 5 items getting no value assigned at all.
Each stakeholder who will be voting
should be taken aside (or otherwise engaged away from other prioritizing stakeholders) and asked to assign all of the units they have been provided to the items being prioritized in such a way as to reflect the way they value each item to relation to all of the others.
Each stakeholder should only be allowed to prioritize each set of items ONCE! And they should do so without knowledge of how others have prioritized the items. Allowing stakeholders to vote more than once on the same items or to know how other stakeholders have voted opens up the opportunity to try and game
the process by adjusting their votes based on the actions of other stakeholders rather than reflecting their own priority.
Once all the stakeholders have voted
, apply any weighting factors that might be needed. Then sum up the votes each item got from all stakeholders. The items with the highest number of adjusted votes are your highest-priority items.
So if you were using CV to prioritize the 3 high-level items above, with 3 stakeholders (Bob, Jane, and Joe) with different priority weights (1.0, .75, and .50), the results may be summed up like this.
Bob | Jane | Joe | Bob (Adj.) | Jane (Adj.) | Joe (Adj.) | Total | |
---|---|---|---|---|---|---|---|
HLR1 | 60 | 30 | 15 | 60*.75=45.0 | 30*.5=15 | 15*1=15 | 45+15+15=75 |
HLR2 | 30 | 70 | 35 | 30*.75=22.5 | 70*.5=35 | 35*1=35 | 22.5+35+35=92.5 |
HLR3 | 10 | 0 | 50 | 10*.75=7.5 | 0*.5=0 0 | 50*1=50 | 7.5+0+50=57.5 |
Weighting | .75 | .50 | 1.0 |
Taking the weightings into account, HLR2 is the highest priority and is 17.5 more important than HLR1, which is the #2 priority, which is 17.5 more important than HLR3 which is the #3 priority.
The results of a Cumulative Voting process provide a ratio-scale result. Not only do you know which items are the highest priority (they have the most votes), you also know how much more important any one item is than any other by looking at the number of total votes between them.
votesin such a way as to more heavily prioritize particular items of priority; or even cast nearly all of their votes on one or two favorite items, trusting that others will provide a more balanced vote and thus still provide support for items of common interest. This is especially easy if the stakeholder knows the preferences of other stakeholders.
unitsso that stakeholders can provide meaningful votes. If there are 25 items being processed and each stakeholder only gets 100 units, the stakeholders may feel that they cannot really indicate their preferences properly.
votescan be assigned. Put the total number of units they have at the top. Then use a simple Excel function to sum up the votes cast, subtract them from the total assigned, and show how many are left. If you assigned $1000 to vote with on cells B2 through B15, the function would look like: =1000-SUM(B2:B15)&" dollars remaining!"