As I have recently joined a new company I am currently interviewing (around 40) engineers, users and sponsors about different aspects of software quality. I have asked them what is going well and what could be improved.

This resulted in already over 150 possible improvements of which most are relatively unique. The overlap is small only 30 have multiple occurances. Some are high-level some are very detailed.

Some examples:

  • We should make time for refactoring legacy code
  • Usability testing is not structural and we are not critical enough on the UX
  • Our process has not enough quality gates

Now I am looking for a strategy to categorize them and figure out what would be the most effective improvements to start working on. I am hoping some of you have done something similar in the past an can give me a good direction to get me onto speed in processing this data.

How do I categorize a big list of possible improvements to find the most important the quickest?

1 Answer 1


I would like to mention two hints.

  1. I never got in touch with planning tasks in a professional way, so my ideas are more like how I would do it.
  2. Thus, its difficult to give you a concrete list of methods to do it as well as having only few Information about the/your background (time, budged, Stakeholder, etc.)

I assume that you have some amount of time and budget that is not sufficient to deal with every single improvement on your list.

Start with categorizing them by their area within the system. For your three example you could do:

  • We should make time for refactoring legacy code (coding/back-end)
  • Usability testing is not structural (Usability/UX)
  • we are not critical enough on the UX (Usability/UX)*
  • Our process has not enough quality gates (process-related)

You will find more categories like front-end, testing, etc. That really depends of your domain or project. Furthermore you could create sub categories like detailed and high-level as you mentioned.

Afterwards, you have two possible options, actually.

  1. Start with prioritizing the categories or
  2. Start with prioritizing the single improvements within the categories

You would start with the first option if you pointed out during the categorization that there are some categories (or even a single one) with the majority of improvements. That can tell you, where in the system/project you have the most lacks. Maybe you will find a category that would give you the biggest ROI.

The second point is helpful, if you really want to implement single improvements that are critical wherever they are located.

Of course, the way of prioritize depends on several (unknown) variables and you have to make the decision what counts more. May you could find some answers here. For many points you can simply replace "requirements" with "improvements".

*Splitted your point because I think you have two improvements here.

  • Thanks for the feedback. I like the idea of giving single items in a category more priority. I think I will create a group of a single engineer, user and sponsor. Split the items in categories and then prioritize the lists based on time to solve and expected ROI. May 20, 2016 at 12:48
  • This is roughly how I see folks doing similar tasks at our company. You may also want to get inspiration from existing tech maturity models, which might help you identify improvements and get some suggestions about what to prioritize and why. May 23, 2016 at 18:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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