Simply an idea that popped into my mind while thinking about feature priorization. The concept aims at solving the issue of developing the utmost important features for your targetted market. Read on and see how simple it is or how mad I am. Disclaimer: I have not tried this concept yet.
Prioritization sucks
An uneasy feeling takes grip on you as you’ve reached the stage when you need to priotize your features in your project backlog. If you’re working for a company, then you need to consider factors such as: cost, risk, business value, knowledge acquisition, etc. it can be quite a complex situation. Furthermore, you probably have to meet multiple times throughout the project’s life to make sure you’re still on track and priorities haven’t changed. Seems all logical to me. Seems difficult when you want to build the project for people, not for a client.
Wisdom of crowds
… is a book explaining how a diverse population of individuals answering the same question independently will come up with a better answer (when all the answers are averaged) than a single expert on a given subject. Crowdsourcing is all over the place nowadays, why not in the project management field too?
With Amazon Mechanical Turk or by creating a simple tool and asking your twitter followers to help you out, there’s a good crowd you can reach very easily.
How would it work?
Simple enough. Get people to vote on their most important feature or if the feature is not present, let them add it. The one-vote-per-user model would work well enough, but you can’t show them what the others have voted. Result: a neat list of feature ordered by votes giving you a clear understanding of what’s most important to your future users.
Another way to do it is to allow for users to arrange features in order of priority, this might give you a more precise picture of what people want.
Getting usable results
I’m currently building a website for pilots. I’d have to find a community of pilots somehow, explain the project briefly to them and allow them to vote on the different features via the previously built system. You can’t just ask anyone, or you can? Since The Wisdom of Crowds emphasizes the importance of a diversified crowd, you may ask anyone really. My guess is that in the end you’ll encounter similar results from pilots and from non-pilots. People have different knowledge in different fields, this diversity might just give you a much more accurate answer.
Ask the right question
Depending on the main purpose of your site, might it be: useful, fun, revolutionary, etc. you need to align your question with that line of thought. For instance: Which of the following sound more fun? Which of the following would be most useful to you as a [insert persona]? Which of these features is the most important in a successful website in your opinion?
Choose the right question for the right situation, that’s all.
Request additional information
You might also want to know who’s voting on what. Obviously, it’s an anonymous process, but it’s better to know precisely what kind of people voted on your features. Is the user a pilot? How old is he? Where does he come from? [Whatever information you might find important to know here] ?
But why? Knowing this, you can figure out just how diversified your crowd was. Ideally, you’ll want more people who know about your site’s subject, but a decent amount of less savvy users is also great.
Are you building a site without restrictions on who can sign up?
Then this might be just for you. If anyone can register on your website, how can you know which features will be the most important to them? You can’t possibly think of every scenario, it would also be very inefficient to build it using only your best judgement as to which features make the cut. You’re smart, you’re probably building this site because you’d use it yourself (or I would hope), but who else might just be using it?
Don’t get me wrong, you still decide which features do or don’t make the cut for different releases. The crowd can’t possibly know about your business or your resources, using your unique knowledge of the situation with the list of prioritized features outputed by the crowd should give the best results.
Asking the crowd (if done right) should results in diverse answers to your questions. Applied to feature prioritization in the context of an agile project development process for an app with unrestricted registration (what a mouthful!) will produce a nice list of features, which the majority of users will be pleased with.