|
If we’re going to schedule one work item at a time, then we have to have a reliable method of picking the next item. Sometimes the work has a natural order and more-or-less picks itself. Other times, we have a backlog of things to choose from and have to make a decision. This is not so much a prioritization problem as it is a filtering problem. We don’t care about the 30th priority feature in the backlog. We only care about the 1st priority feature. That should make it more a matter of eliminating things we’re not going to do now, rather than sorting things that we may do someday.
The priority also has to be “always live.” In our system, development capacity can free up at any time. When it does, the next candidate should have been previously selected so that the team can get right to work. That means we’ll have to make frequent updates to the selection process. If we’re going to do this frequently, it has to be inexpensive. Consensus building is expensive. My goal is to do this with no estimates and no meetings. My first proposal was to create fixed-size priority buckets and make work items compete for space in those buckets until they rose to the top. I labeled this idea the “priority filter,” and I’ve been using it for a few months. After some discussion about it, I asked for a Digg-like or prediction-market-like scheme.
|
{ 2008 09 29 }




Kanban discussion
Kanban Group
Eric Landes | 30-Sep-08 at 9:21 am | Permalink
Corey, you don’t say anything here but maybe this was in a previous post? In your system are you also looking at value to the business of the feature? I know we talked about this on the real options list, but I believe putting weight in your feature for business value would also be helpful.
Corey Ladas | 30-Sep-08 at 10:10 am | Permalink
Business value is another kind of estimate. I’m assuming that all such information is encoded in the “market price” of the feature, as expressed by the distribution of votes cast.
Eric Landes | 30-Sep-08 at 10:54 am | Permalink
So you are trusting the wisdom of your stakeholders on this. Maybe I need to be more trusting! I want to force that information on the feature, because I don’t feel that happens at a feature level currently for my group.
Being an internal shop, that might be different than someone developing commercial software. I am proposing that we force some type of Business Value estimate on each feature on submission. Thoughts?
Corey Ladas | 30-Sep-08 at 11:03 am | Permalink
If I felt like business value was under-represented, I would either change the composition of the voting committee in favor of consumer stakeholders, or change the allocation of votes in favor of consumer stakeholders.
Exposing value estimates may have educational merit beyond its decision-making merit. I would tend to think of that as a separate problem, and I might encourage (but not require) stakeholders to share the reasoning behind their votes.
Olav Maassen | 07-Oct-08 at 9:22 am | Permalink
To me it sounds very much like (forgive me for using this word) democracy. The big problem I have with using democracy in systems is the majority dictatorship.
In your example this can happen for instance when the voting committee has a size of 7 and 5 members always vote the same and inspect the board daily if not hourly. The other 2 members have no way of influencing the priority.
Assuming everybody is equal, this situation would be unfair.
To prevent this from happening give everybody an amount of votes per time unit. Let’s say 1 vote per 2.5 workdays. The voting rules stay more or less the same with only one change:
votes are lost when the item gets picked up to work on.
This allows the silent minority to accumulate points on a story they feel is important while the majority still gets to pick most stories.
I could elaborate more on this, but the textbox is too small
Corey Ladas | 08-Oct-08 at 12:02 pm | Permalink
Hi Olav,
I agree that such a durable coalition in a multivoting scheme would be dysfunctional behavior. I would consider the case you present as a failure mode. Somebody would need to be responsible for seeing it as such and proposing a remedy. Do you think that adding a chance element would help?
I have to say, I like adding your time element to vote allocation, especially since we’ve already added a new time element to classic multivoting. Indefinitely repeated games often have different characteristics and equilibrium strategies than one-time games.
Agile Management by David Anderson | 14-Oct-08 at 9:54 pm | Permalink
Changes #2: David J Anderson & Associates…
Today, I packed up my desk and books and moved out of the Modus Cooperandi office on Lake Union in Seattle…
Corey Ladas | 22-Oct-08 at 11:59 am | Permalink
Whoops! Looks like the spam filter might have whacked some legitimate comments. Profuse apologies if I lost your comment.
Corey
Greg Starling's Agile Software Development Resource » Kanban Board for Lean Software Development | 25-Oct-08 at 2:59 am | Permalink
[...] backlog can be changed at any time by the stakeholders (Corey Ladas has a great article on using perpetual multi-vote to schedule this [...]