Metrics Used
Metrics from 4 different levels including method level, class level, package level, and project level help identify where large code changes occurred as well as where exceptional or if exceptional locations exist. Finding exceptional locations by comparing to results to average values allowed easy access to metrics results without having need a great deal of understanding of tools used to gather metrics. Any group member can quickly look code and compare results to averages and decide where unit testing, refactoring, and code review is necessary. Note that there is some intentional overlap since RMS and JMT seem to count differently. RMS and JMT contain many other metrics that may be useful in the future. Therefore the metrics data is stored within CVS for future use.
Project Level Metrics
JMT
Number of classes
Number of methods
Average number of methods per class
Average number of attributes per class
Average number of parameters per class
jMetra
Lines of code
Method count
Class count
Package Level Metrics
JMT
Average coupling between objects
Average response set for a class
Average methods per class
Average fields per class
jMetra
Lines of code
Method count
Class count
RMS
Average fields per class
Average methods per class
Average parameters per method per package
Average weighted methods per class
Class
Level Metrics
RMS
Fields per class
Weighted methods per class
Max weighted methods per class
Average parameters per method per class
JMT
Coupling between objects
Fields per class
Public interface for class
Response set for class
Weighted method per class
jMetra
Lines of code
Method count
Jmetric
Cyclomatic complexity
Lines of code
Method count
Method Level Metrics
RMS
Max parameters per
method
Average paramters per method
JMT
Lines of code
Number of parameters
Access Type