CyVis Software Metrics Collection, Analysis and Visualisation Tool Logo

About CyVis

CyVis is a free software metrics collection, analysis and visualisation tool for java based software.

Features at a Glance

  • 100% Java Application with Java 1.5 support
  • Collects Metrics from class files (hence there's no need for the source code).
  • CyVis Ant Task, to integrate with your build.
  • Multi-threaded for better performance(extraction of metrics).
  • Detailed Metrics at Project, Package and Class Levels.
  • Metrics shown in tables and charts.
  • Customizable coloured highlighting in charts for better data visualisation.
  • In depth analysis with the Project Tree Viewer.
  • Capable of batch operation.
  • Command Line option.
  • HTML & Text Reports generation, or raw metrics export in XML format.

What does it do?

CyVis collects data from java class or jar files. Once the raw data is collected, certain metrics like number of lines, statements, methods, classes and packages are obtained. Other metrics like cyclomatic complexity etc. are also be deducted.

Once the metrics are collected, the statistical information can be viewed as charts, graphs and tables. Lots of importance has been given to how the information is shown on the charts. They are drawn in such a way, that the user immediately knows where something might be wrong or bad in their software. Alternatively, HTML & Text reports can also be produced. Raw metrics can be exported in XML format, as the user chooses.

You can also integrate the CyVis Ant Task to produce reports for each build. Or there is the command line option which also supports batch processing.

Are there other such tools? If so how is CyVis different?

Yes, there other such tools, each with their own purpose. Some limitations in these tools are:

  • Some collect metrics from the source files. What if you only have the class files?
  • Some can only be used along with build tools.
  • Some display metrics in tabular form alone, which makes it very hard to find what you are looking for.
  • Some of these tools, have no support for java 1.5.

Though CyVis is written in java it has only been tested for windows machines, so we do know how it might behave on other platforms.

Inner class files are omitted, in this version. They will be included in the next version.

Please feel free to post any Issues that you happen to come across here.

  • Increased support for enterprise applications by allowing *.war and *.ear files to be directly used.