Agile Zone is brought to you in partnership with:

Meera has posted 70 posts at DZone. You can read more from them at their website. View Full User Profile

fusemetrics - Build Metrics Dashboard

09.29.2008
| 15293 views |
  • submit to reddit

If you have been using CI for quite sometime, you probably have a wide array of metrics for your projects - code coverage, complexity, coupling, bugs, tests, suspicious code, style violations, copy/paste detectors, performance measurements, dependency analysis and more.

And with all those metrics, it can be a struggle to get a single, simple view of what's going on with your project, and, perhaps more importantly, how your project's metrics are changing over time.

That's why we built FuseMetrics. It analyzes your metrics data, and produces a single page view of whichever metrics you find interesting, including trending graphs and some histographic analysis of your entire codebase. It's open source, extendable, and easy to use.

Who are the creators?
FuseMetrics was written primarily by John Brothers and Meera Subbarao, based on original concepts by Andrew Glover.

What does it do?
FuseMetrics produces sparkline graphs of metrics values over time, and histograms of the characteristics of the overall code base. Combines them together to produce a single-page dashboard (screenshot) that you can customize to your heart's content.

FuseMetrics is written in Groovy, and can parse the reports of many of the most common analysis tools:

    * Junit
    * TestNG
    * JDepend
    * Checkstyle
    * PMD
    * JavaNCSS
    * FindBugs
    * Simian
    * Clover
    * Cobertura

And, because of a basic plugin architecture, it can be extended to support just about any other tool, as long as the output is well-formed.

How does it work?
FuseMetrics analyzes the .xml files from your existing metrics - Checkstyle, CPD, PMD, FindBugs, JDepend, JUnit, Clover, Cobertura and many more, and pulls in the top-level metrics from those tools. It uses a plugin architecture, so new metrics and changes to XML structure can be easily supported.

As it gathers metrics, it stores them in memory, so it can produce Sparkline trend graphs and histograms of the overall code base.

Lastly, it builds a simple template-based dashboard HTML page, where all these graphs and metrics can be combined into one view.



It’s completely open source. Download the source code from here. Details about fusemetrics can be found here.  As always, try out and keep us posted if you have any questions.

Published at DZone with permission of its author, Meera Subbarao.

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)

Comments

Anton Chistyakov replied on Mon, 2008/09/29 - 8:11am

It would be nice a  tool. However without maven plugin and database support it can not compete with

http://mojo.codehaus.org/dashboard-maven-plugin/

Meera Subbarao replied on Mon, 2008/09/29 - 8:17am in response to: Anton Chistyakov

[quote=chist]

However without maven plugin and database support it can not compete with

[/quote]

Thanks for your suggestion, we definitely will look into it. 

Meera Subbarao

John Brothers replied on Mon, 2008/09/29 - 8:17am

Some comments on Fusemetrics vs. the Maven dashboard:

 

1. Fusemetrics will work on any project - Maven or non-Maven - in fact it doesn't care how the files are built, as long as it can find them.

2. It does have a simple database for persistence.

 

This is not to take anything away from the Maven dashboard - it seems like a very nice tool.

 

 

 

Andres Almiray replied on Mon, 2008/09/29 - 12:28pm in response to: John Brothers

John & Meera: excellent work! been waiting for something like this (i.e not dependant on maven) to arrive (even though I love maven). Perhaps a fusemetrics-maven-plugin would be helpful? the trick is configuring it to run at the last momentso that it can pick up the data built by the other plugins (perhaps run a missing one if not configured on the pom).

Can't wait to try it ;-)

Meera Subbarao replied on Mon, 2008/09/29 - 4:29pm in response to: Andres Almiray

[quote=aalmiray]

Can't wait to try it

[/quote]

Hi Andres,

Thanks. please try and let us know your comments and suggestions.

Meera Subbarao

Joergen Larsen replied on Sat, 2008/10/18 - 3:49pm

 Something like this:

 http://qalab.sourceforge.net/

john green green replied on Sun, 2009/10/25 - 8:46am

Perhaps a fusemetrics-maven-plugin would be helpful? the trick isnike shoes china configuring it to run at the last momentso that it can pick up the data built by the other plugins (perhaps run a missing one if not configured on the pom).

john green green replied on Sun, 2009/10/25 - 8:51am

Perhaps a fusemetrics-maven-plugin would be helpful? nike shoes chinathe trick is configuring it to run at the last momentso that it can pick up the data built by the other plugins (perhaps run a missing one if not configured on the pom).

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.