Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 25 Next »

Name

Total Quality Plugin

Author

Martin Martin

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

http://svn.codehaus.org/sonar-plugins/trunk/total-quality/

Download jar

sonar-total-quality-plugin-1.0.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.

Metrics

Architecture

Architecture measure is composed of two metric, PTI based on cyclic dependencies, and ADI obtained from the distance.

  • PTI, inverse of package tangle index core metric.
  • ADI TODO.

Default architecture formula coefficients

Architecture = 100 * PTI + 0 * ADI

Design

Design is more complete than Architecture, combines five metrics, NOM, LCOM4, RFC, CBO, and DIT.

  • NOM, decorates functions and classes complexities (50% each one). Reads global weight (aceleration value) and default limits (function 2.5 and class 12). Code sample,
    AbstractDesignDecorator.java
  • LCOM4, based on lcom4 with global acel and 1.0 as default limit.
  • RFC, based on rfc core metric with global acel and 50.0 as default limit.
  • CBO, based on cbo core metric with global acel and 5.0 as default limit.
  • DIT, based on dit core metric with global acel and 5.0 as default limit.

Default design formula coefficients

Design = 0.15*NOM + 0.15*LCOM + 0.25*RFC 0.25*CBO + 0.20*DIT

Code

Code quality combines rule violations, public api documentation, and dryness (duplicate code inverse).

Code = 0.15*DOC + 0.45*RULES + 0.40*DRYNESS

Test

Testing quality is based on coverage metric family (coverage, and test success).

Test = 0.80*COV + 0.20*SUC

Total Quality

Total quality default threshold,

TQ = 0.25*CODE + 0.25*ARCH + 0.25*DESIGN + 0.25*TEST

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

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

Changelog

Loading

TQ 1.0 (6 issues)

  • No labels