When I have the whole body of reviews readily available, I like to just do a Bayesian average. Mix in the average number of reviews at the average review score to keep small data sets from skewing results.
I used to work for a company that hosted customer.com. Microsoft, on more than one occasion, sent thousands and thousands of emails to customer@customer.com.
One developer probably entered customer@customer.com in a database, and then another guy probably accidentally triggered the "email everybody in the database" script. I can see how that would happen. I've obviously never personally done anything like that but I know a guy who tripped the "Send sales report to CFO" using test data once when I was an intern.