Metrics that should be included in a software quality report

WePython 1 Months+

I am trying to "develop a formula" which will give me a number which will serve as an indicator of whether the overall quality of all tested items on a certain sprint is good enough so that we can push this bundle to production. The way I was thinking to do it is to assemble a group of metrics and then give a grade to each per it's "importance" and in this way to eventually calculate the final grade. Our products are both web (Desktop and mobile)and also native mobile. I am looking for a recommendation regarding these metrics. I am perfectly aware that there is no "magic" list and this varies between products/companies but still, hearing some recommendations can be a great help.

-----------------Answer-----------------

Your question is a bit broad. I like to automate everything. Test and code quality can be gated by a open source static code analysis tool like SonarQube. They also provide a best practise "Sonar Way" rule set:

The quality gate "Sonar way" is provided by SonarSource, activated by default and considered as built-in and so read-only. It represents our view of the best way to implement the Clean as You Code concept.

https://docs.sonarqube.org/latest/user-guide/quality-gates/

This uses some key metrics like test-coverage, code-maintanbility, but also security. It has a dashboard for reporting, but also automated alerts and an API.

-----------------Answer-----------------

While your question is indeed broad (without knowing your company's specific processes), what you're asking seems like how to provide relevant advice from a quality/testing perspective, typically used during a Go/NoGo meeting.

I'm not sure if it's a good idea to try and boil this down to a simple number, but you could (automatically) construct a report every sprint that takes into account, for example:

  • the automated test coverage and pass/fail percentage
  • the manual test coverage
  • any open/known issues

If you add the severity/risk for each of those items, you can give informed advice to management.


Previous : How to check the data completeness in ETL Testing
Next : Scrolling an element into view with iOS native app