I’ll give our results here in a minute, but go ahead and pick your top five before reading on.
My personal picks were: Correctness, Maintainability, Understandability, Reusability and Testability.
Once everyone had picked their top five, we got together in groups of four and determine the top three items within our group of four. The top two was easy: Correctness and Maintainability. We had a tie for third place between Understandability and Reusability, and broke the tie in favor of Reusability because we felt that Understandability was intimately tied to Maintainability anyways.
Finally we surveyed the entire group and totalled the votes from each of the subgroups. Heres the results:
We see two strong winners here: Correctness and Maintainability. Every group voted for them. Beyond that, there is no clear winner. One thing I do find interesting is that Testability didn’t make the final cut in any of our groups. Even though our team is developing a strong test driven design culture, it hasn’t (yet) spread to the rest of the department. It seems we have our work cut out for us.