fusemetrics - Build Metrics Dashboard
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.
- Login or register to post comments
- 5141 reads
- Printer-friendly version
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)










Comments
chist 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: 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: johnbr
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: 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/
sunrise1 replied on Sun, 2009/10/25 - 8:46am
sunrise1 replied on Sun, 2009/10/25 - 8:51am