SML@b


Community
Publications
Metrics Tools Experience
Research Projects
Teaching


GI Fachgruppe Metriken (2.1.10)
Software Measurement and Evaluation:
  • News
  • Next Workshops
  • Intentions
  • Workgroups
  • Publications
  • Conferences
  • Links
  • Leadership Board
  • Members
READ MORE
Copyright 2005 SML@b
Software Measurement Laboratory SML@b
JMT
 
Table of Contents Index References
 

Application domain: component measurement

Description:

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

Download (Freeware!):

 

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.

Known Problems:

Classes with nested classes and interfaces can cause incorrect results.

 

 

Screenshot from the JavaMeasurement Tool (JMT)

 

Otto-von-Guericke University Magdeburg/FIN, IVS, AG Software Engineering/P.O. Box 4120/39016 Magdeburg/GERMANY
Home | Sitemap | Legal Notice | Contact Us IVSFINUniversity

Free Web Templates