What's a good way to measure whether your software quality processes are working well?
There is no one-sentence answer to this question. Here are my thoughts on this.
A good way to measure quality is to use static analysis tools. They give you concrete data that you can compare. If you had 300 code smells last month, and you decreased that number to 50 then it's hard to argue that your quality hasn't increased. So this is tangible.
Another thing that might be tangible is your lead times. This depends on how you measured them before and whether you can make a valid connection between code and your project management methodology. And it depends on where you are on your journey to improve the development-workflows and the quality. If you just started, then you probably will see a decrease in "productivity" first. Meaning your team has to adapt to the new workflows. Perhaps you haven't written tests before and people have to learn how to test their code. This will heavily increase your turnaround times. If you are further advanced, you won't probably see decreases in lead time either. Because your workflow now consists of more steps that you have to do. And perhaps you do them more deliberately?
You should, at some point, notice a decrease in bugs per lines of code. But again, this is a measure that you need to have taken before as well. Otherwise, how would you compare that?
In my opinion, your developer's happiness will increase. They take a more professional approach. They take their craft (even more?) serious and your improved systems support them to reach a higher level.
This isn't exhaustive. There are more things to take into account. There are more measures you could take and compare.
I am curious how you would try to measure this? Hit reply and let me know.
- None Found