Application domain: component measurement
JMT (Java Measurement Tool), was developed at the University of Magdeburg. The Java Measurement Tool realizes a static measurement of Java applications. It analyzes the Java classes and the relations between them. Please have a look at the list of used metrics.
Supported languages: Java
How to use the application:
There are two ways of analyzing Java classes. The first way is to analyze one single Java class (select Analyze a File). There is also the possibility to analyze an entire project consisting of several files (select Analyze a Project). To process an entire project you have to analyze it file by file. Click the button Load File and select a Java file. It must be a source code file. It is impossible to process a compiled class file. After loading the file click the button Analyze File to process it. You will get a message about the success or an occurring error. If you are analyzing a project, continue with the next file.
After processing the files, the results of the measurement are displayed. You can select to have a look at the data of the classes or the data of the methods contained within the project. Please notice the list of the metrics.
List of available metrics:
- Metrics on Class Level
- DIT Depth of Inheritance Tree
Is the maximum length of the way from the class to the root. Classes without a parent class have a DIT of 0.
- NOC Number of Children
Number of direct successor classes.
- WMC Weighted Methods per Class
here: number of methods of the considered class.
- WAC Weighted Attributes per Class
here: number of attributes of the considered class.
- CBO Coupling between Object Classes
Number of classes, which are coupled with this class.
Classes are coupled, if one class uses methods or attributes of the other class.
- PIM Number of Public Methods
- NMI Number of Methods inherited
Number of methods of the direct parent class
- NAI Number of Attributes inherited
Number of attributes of the direct parent class
- NMO Number of Methods overwritten
- RFC Response for a class
Number of methods used by the class plus the methods of the class.
Is the highest possible number of methods, which can be invoked by a message to this class.
- LOC Lines of Code
- Metrics on Method Level
- NOP Number of Parameter
- LOC Lines of Code
- Metrics on Inheritance Level
- MIF Method Inheritance Factor
Relation of inherited methods to total number of methods.
- AIF Attribute Inheritance Factor
Relation of inherited attributess to total number of attributes.
- Metrics on System Level
- COF Coupling Factor
(= (total number of couplings) / (n2-n) ; with n = number
- ANM Average Number of Methods per Class ANM Average Number of Attributes per Class
- ANM Average Number of Parameter per Method
Involved Persons / E-Mails:
This tool was developed by Ingo Patett as his Diplom-Arbeit. The project was supervised by Prof. Dumke and Dr. Köppe. It was improved by Christian Kolbe under supervision of Dipl.-Inf. Wille.
Classes with nested classes and interfaces can cause incorrect results.