17

3

Feature request for users to be able to vote on how soon cases should be done.

We're in the unfortunate but not uncommon position of demand for software development outstripping supply. I'd like to give my customers a way to have their say in which of the bugs / features we pick up next.

Obviously we use Priority to drive which cases we work on. Even though there are 7 priorities in FogBugz (although I can't for the life of me think why such a carefully crafted system would mandate something so arbitrary as 7 priorities), there are still dozens of cases to choose from. To help us decide which case to pick up next, I'd like to see functionality which allows users (both normal and community) to vote cases up or down, in much the same way that questions on StackExchange or feature requests on UserVoice can be.

Before anyone suggests it, I don't want to go and set up a UserVoice account because that will mean lots of copying case details back and forth between FogBugz and UserVoice, which will be really time consuming and messy. All the info is in FogBugz, so that's where I'd want users to do the voting.

Fog Creek Case FC1465508

flag

4 Answers

1

First off, I want to say that I think the premise behind this idea is great. Letting the customers/clients/consumers/stakeholders have a stronger input on the order of the work and setting the priorities is a key aspect to any successful project. That being said, however, in almost all cases there needs to be one main person who manages the project that serves as the funnel for both sides of the development coin (developers and stakeholders).

It is one of the main responsibilities of the project manager (PM) to set the priorities for the development team. To do this, they take all of the input from the stakeholders regarding what they feel is the most important, as well as the same input from the developers (in addition to other information like how long something will take for cost reasons).

The problem that I believe this question is trying to find an answer to is how to get the stakeholder input efficiently and fairly and in such a way that it can be closely tied to the actual work as recorded in FogBugz. From there, this information will be used to set the work order of cases in FogBugz. Lastly, it would be better if FogBugz itself can help out with this solution so that additional systems don't have to be put in place.

With this as our starting point, I can see a number of FogBugz capabilities that are likely to help out a great deal in achieving our goal:

  1. FogBugz allows a case to be marked as a duplicate of another. Using this, you could have your stakeholders email in their requests or votes, or have your PM enter cases for their votes, and then resolve those as duplicates of your work case. The number of duplicates on a case is then an indication of how many stakeholders have "voted" for that particular item. Unfortunately, this can't (currently) be displayed as a built-in parameter of the system, a plugin to do it should be fairly straight forward to put together.
  2. The Project Backlog plugin allows you to set the ordering of the cases in a project. Using this, a PM can set the ordering of top-level cases so that the dev team knows the order in which they should work on items. Any of your developers can order their case list by Project and then by Backlog and see, for each project they have cases in, the order that they should work through them. While this aspect doesn't help with the stakeholder feedback aspect of the problem (that still lies with the PM), it does give a very clear, discrete way for the ordering to be set on the work in a project. The PM can use this to account for, for example, the CEO of your main customer wanting feature X really badly. Feature X can get moved up the backlog order to accomadate this request, even though no one else really cares, so that you can keep your main customer happy.
  3. FogBugz lets you easily move cases to/from milestones for a project and set deadlines for milestones. By putting the cases into milestones (and they can be small, tight milestones that are 1 or 2 weeks long, you are also setting an order for when things need to be done, and then when the next group of things need to be done. Or, to put it more simply, your dev team should work on the things in the current milestone (ie. the one due next). This can also get coupled with the Backlog plugin so that your team knows, even within a milestone, what things to work on first. Again, this puts the pressure on the PM to set the ordering of things by organizing them into milestones, but that is that person's job.

I am sure there are more things I am forgetting about, but those seem to be the main that come to my mind when I look at the problem. For me, the key would be leveraging the Duplicate Case idea as a way to indicate level of interest. Otherwise, writing a plugin to allow exactly that sort of thing would be fairly straight-forward, and may even be best suited for a small FogBugz XML API-based APP and a small FogBugz plugin to give you a field for recording votes.

link|flag
We already use all of these techniques (although don't report on the number of duplicates) as part of our project management process. Voting doesn't replace any of this. Instead it is a way to listen to customers when a product is simply ticking over in maintenance mode, when there are a number of good ideas and maybe a few outstanding bugs, but it's not appropriate to assign a project manager to actively manage this backlog. In this situation voting functionality would allow customers to manage their own priorities within the backlog. – Nick Jan 13 2011 at 17:17
Also, I don't think counting duplicates is the right way to do this. That would require to customers to independently have the same idea and me to spot the duplication. I actively browse this StackExchange voting up / down feature requests I think are good / bad. I wouldn't want to have to raise a duplicate of a question I liked and hoped that FogCreek spot the duplication. Also, duplicate counting doesn't allow for voting down of cases. – Nick Jan 13 2011 at 17:20
1

I'd venture the opinion that customer feedback should be gathered via a tool like http://uservoice.com/ or (gasp!) http://getsatisfaction.com/. Add a link in the Fogbugz case to the voting site. Those results should also be interpreted by Subject Matter Experts and project owners.

I don't think the raw bugtracker is really appropriate for public consumption nor as a venue for a popularity contest.

As for internal voting, that's a totally different matter. Maybe. I don't think such a closed democracy is a viable idea for application feature promotion. The users and sponsors of the project should be calling those shots, not the dev team.

As I said, an opinion. Disagree or disagree [not a typo ;)] you should think about the process you're trying to capture - solve the problem rather than the solution.

link|flag
0

Thanks for the suggestion. The immediate obstacle is that FogBugz doesn't allow one customer to see another customer's issues, so it will be difficult to aggregate the votes. It is possible to work around this via the plugin interface to some extent, so we'll add this to our list of great plugin ideas.

link|flag
0

We are also in desperate need of this feature. We have thousands of cases in our Fogbguz database and each one of us in the development team have a different opinion of what is more important. We would love to have a way to vote up and down cases. Heck, even a Like button is good enough. We would also love to vote up and down a comment. Some very insightful comments get lost if there are a lot of edits in a case.

link|flag

Your Answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.