If you’re reading this you probably know that it’s extremely important to measure software quality (how else would you know that something improved?!). Here, we present the 3 types of metrics that you should be collecting. If you want more detail, our guide to measuring software quality tells you exactly which metrics are within each category and what levels are acceptable for each metric.
The three types of metrics you should collect as part of your quality assurance process are: source code metrics, development metrics, and testing metrics.
Source code metrics
These are measurements of the source code that make up all your software. Source code is the fundamental building block of which your software is made, so measuring it is key to making sure your code is high-caliber. (Not to mention there is almost always room for improvement.) Look closely enough at even your best source code, and you might spot a few areas that you can optimize for even better performance.
When measuring source code quality make sure you’re looking at the number of lines of code you have, which will ensure that you have the appropriate amount of code and it’s no more complex than it needs to be. Another thing to track is how compliant each line of code is with the programming languages’ standard usage rules. Equally important is to track the percentage of comments within the code, which will tell you how much maintenance the program will require. The less comments, the more problems when you decide to change or upgrade. Other things to include in your measurements is code duplications and unit test coverage, which will tell you how smoothly your product will run (and at when are you likely to encounter issues).
These metrics measure the custom software development process itself. Gather development metrics to look for ways to make your operations more efficient and reduce incidents of software errors.
Measuring number of defects within the code and time to fix them tells you a lot about the development process itself. Start by tallying up the number of defects that appear in the code and note the time it takes to fix them. If any defects have to be fixed multiple time then there might be a misunderstanding of requirements or a skills gap – which is important to address as soon as possible.
These metrics help you evaluate how functional your product is. (And we’re assuming you want it very functional for your customers.)
There are two major testing metrics. One of them is “test coverage” that collects data about which parts of the software program are executed when it runs a test. The second part is a test of the testing itself. It’s called “defect removal efficiency,” and it checks your success rate for spotting and removing defects.
The more you measure, the more you know about your software product, the more likely you are able to improve it. Automating the measurement process is the best way to measure software quality – it’s not the easiest thing, or the cheapest, but it’ll save you tons of cost down the line.
Download The Ultimate Guide to Measuring Software Quality for a more detailed review of types of metrics, benchmarks and real-life case study.