#SWAT: SW-analytics toolkit A platform for scraping, measuring, visualizing and drawing data-driven conclusions out of software data.
It consists of 3 parts:
- Analyzer (scrapes version-control-systems and bugtrackers and pushes data into a RDBMS)
- www-backend (serves content and performs queries through a RESTful API)
- www-frontend (visualization for metrics on client side).
Pip should be installed together with Python as of 2.7.9
Install additional python requirements by doing:
$>pip install -r pip-requirements.py
Copy project.config.template -> project.config
Follow the comments in the file to make sure everything is configured properly.
This file contains a list of all subsystems (a list of inclusion/exclusion pattern rules).
Creating a database and doing analysis of repo
Creating a database is done through the script analyze.py
You can either cumulatively update, or analyze everything as defined in project.config. If you are analyzing a git repo, you should also define the repo_root in the project.config file (under db_update section).
Running the www frontend
The www frontend is based on the django web framework You first need to configure django to be able to run the development server, you do that by:
Copy www/MetricsViewer/MetricsViewer/local_settings.py.example -> www/MetricsViewer/MetricsViewer/local_settings.py
Follow the comments inside that file on how to properly configure it.
Start the server
It will use whatever database as defined in project.config::[MetricsViewer][engine_url]
$>python www/MetricsViewer/manage.py runserver
By default, the development server will start to listen on http://localhost:8000
More frontend information: