Name |
Total Quality Plugin |
Author |
|
Jira |
http://jira.codehaus.org/browse/SONARPLUGINS/component/14363 |
Most Recent Version |
1.0 (check version compatibility ) |
Availability |
Sonar 2 |
State |
Under development |
License |
LGPL v3 |
Source Code |
|
Download jar |
Description / Features
Total Quality plugin combines four domains measures (architecture, design, code, and tests) in order to calculate a global and unified project quality health. Plugin provides metrics at project level only.
The default formula is :
TQ= 0.25*ARCH + 0.25*DES + 0.25*CODE + 0.25*TS
where :
Architecture (ARCH)
ARCH = 100 - TI
TI = Tangle Index
Design (DES)
DES = 0.15*NOM + 0.15*LCOM + 0.25*RFC 0.25*CBO + 0.20*DIT
NOM = (1 - (class_complexity - 12) / (acel * 12)) * 50 + (1 - (method_complexity - 2.5) / (acel * 2.5)) * 50
LCOM = (1 - (lack_of_cohesion_of_method - 1) / (acel * 1)) * 100
RFC = (1 - (response_for_class - 50) / (acel * 50)) * 100
CBO = (1 - (efferent_coupling - 5) / (acel * 5)) * 100
DIT = (1 - (depth_of_inheritance_tree - 5) / (acel * 5)) * 100
Code (CODE)
Code = 0.15*DOC + 0.45*RULES + 0.40*DRYNESS
DOC = Documented API density
RULES = Rules compliance index
DRYNESS = 100 - Duplicated lines density
Test (TS)
Testing quality is based on coverage metric family (coverage, and test success).
Test = 0.80*COV + 0.20*SUC
COV = Code coverage
SUC = Unit Tests success density
Configuration
Every limit and every formula should be configure with administration view.
If you want to remove a metric just do,
"ARCH=0.25 DESIGN=0.25 CODE=0.50 TESTS=0.00"
Known limitations and TODO
- See SONARPLUGINS-415
Usage & Installation
1. Copy the jar into /extensions/plugins/ directory
2. Restart Sonar Web server
3. Launch a new quality analysis and the metrics will be fed

