HQ - Holistic Software Quality Reporting
Application to generate quality reports for software development projects. Holistic because HQ attempts to measure as many aspects of software development as possible, seeing how software development can go off the rails in so many ways.
HQ itself is developed in Python (backend) and JavaScript (frontend), but can report on the quality of software developed in any language as it doesn't measure the quality itself, but instead relies on other tools to feed it information. Metric sources include SonarQube, Jenkins, Jira, Jacoco, JMeter, OWASP dependency checker, and more.
The user interface is currently available in Dutch only.
An example report is available via http://ictu.github.io/quality-report/.
This software was developed by ICTU (http://www.ictu.nl) to support the development of the Landelijk Register Kinderopvang for the Ministerie van Sociale Zaken en Werkgelegenheid.
See docs/AUTHORS.txt for contact information. See docs/LICENSE.txt for license information. See docs/HOWTO.txt for information on how to configure quality reports.
To be notified about HQ releases, you can subscribe to the releases atom feed via
Screenshots
Dashboard
Each report has a dashboard that provides an overview of the project.
Metrics
Clicking a component (pie chart) in the dashboard navigates to the metrics of the clicked component.
Trend
Recent changes in individual metrics are displayed using spark line graphs. Long term changes are visible in the trend graphs.
Usage
Using Python 3.7
We recommend using virtualenv:
$ mkdir hq
$ cd hq
$ virtualenv --python-python3.7 .venv
$ . .venv/bin/activate
Unfortunately, one package that HQ uses isn't available from the Python Package Index (PyPI) and needs to be installed manually before we can install HQ itself:
$ pip install 'git+https://github.com/wekan/wekan-python-api-client.git#egg=wekanapi&subdirectory=src'
$ pip install quality_report
HQ can now be started from the command line. Adding the --help
parameter should show a brief help message:
$ quality_report.py --help
See the HQ Wiki for more information on how to configure quality reports.
Using Docker
Pull the image from Docker Hub:
$ docker pull ictu/quality-report
HQ can now be started from the command line. Adding the --help
parameter should show a brief help message:
$ docker run --rm -u `id -u`:`id -g` -v /etc/localtime:/etc/localtime:ro -v `pwd`:/work -w /work ictu/quality-report --help
See the HQ Wiki for more information on how to configure quality reports.