Assumption: If an interactive tool is designed with this goal in mind, I predict the same tool will be immensely useful to solve many other problems.
The pizza must not be half-assed. It must achieve maximal satisfaction
within the group.
The pizza will be ordered at the end of voting. No human input may be used to fine-tune the final order. The goal is to handle all edge cases in the formalized voting flow.
Maximal satisfaction
will be hard to both define and achieve. But let's give it a shot.
Let's start with some concerns. Let's exaggerate a bit
- Pricing vs. size: One large pizza might be cheaper than two small pizzas, even though they are the same amount of pizza
- Dietary restrictions: Vegetarians, Vegans, Gluten concerns etc.
- Topping preferences: Bob hates mushrooms, Alice thinks ham causes cancer
- Topping combinations: Cindy will only allow pineapple if it's Hawaiian (i.e. combined with ham)
- Budgets: Dan prefers if price is kept to a minimum (no more than 3 toppings)
- Choosing a pizza place: Some prefer Dominos, some prefer the local pizzeria
- How much pizza to order
- How much to tip
How can all this be broken down into a protocol
that can help guide the group through the decision making progress?
We know we can find a good-enough solution by simply conversing, but the goal here is to find a formalized methadology.
Basic polling is the obvious answer. Let's see where it might fail:
We poll users first for how many toppings we want. Top answer is 4.
Next, we poll users for which toppings they want. The top 4 answers end up including "mushrooms", which although popular, turns out to be absolutely hated by 3 people out of 7.
This "hate" factor ends up getting missed by the poll, which showed a majority support for mushrooms by 4 people.
An alternative topping, green olives, only has the support of 3 people, but is not hated and acceptable by the remaining 4.
This is a scenario where a seemingly less popular option is actually a far better option.
Let's assume a situation where you have 2 vegetarians and 3 meat eaters.
If the pizza was vegetarian, the 3 meat eaters would be quite disappointed.
If it was a meat pizza, the vegetarians would simply have to not eat (or pick their toppings off)
A compromise might be to order two smaller pizzas, one meat one vegetarian. It may cost more this way, but solving this paradox may be worth the additional dollars.
Alice thinks ham causes cancer.
The rest of the crew likes ham, and thinks Alice is being cray.
As per the "least hated option" method, the intial solution may be to just skip ham and use the next best option.
But Alice is also not very hungry and will probably just eat one slice. Could it be best if she was just ignored? Maybe she can just grab a slice with not much ham on it and deal with it.
Most of the group likes Hawaiian pizza. Pineapple becomes the second most popular topping. However the other popular toppings are Pepperoni, Mushroom and Olives.
The group knows that adding pineapple to this combination would be an abomination.
The tool must be able to take this into account, and present Pineapple only in combination with Ham and nothing else.