(C) victorinox
 tools


[home]...[tools]...[links]...[gallery]...


Here you can find a set of tool I'm working on, related to support software evolution analysis and development...

miners

Miners are a set of CVS/SVN extraction tools... not well documented but quite simple to use.

download: miners.tgz (v. 0.1)

Differencing Algorithm

Unix diff command shows the difference between two text files as a set of added and deleted hunks. It is not obvious that such hunks are really additions and deletions performed by a developer, as some of them could be the changed version of another. The linediff tool is a perl script that finds such changed lines by using a two step algorithm based on coarse and fine grained similarity measures.

download (from SourceForge): ldiff.pl Support ldiff Project

references:

  • Gerardo Canfora, Luigi Cerulo, Massimiliano Di Penta. "Tracking Your Changes: a Language-Independent Approach", IEEE Software - special issue "Mining Software Archives", 26(1), January/February 2009, pages 50-57
  • Gerardo Canfora, Luigi Cerulo, Massimiliano Di Penta. "Identifying Changed Source Code Lines from Version Repositories", In MSR 2007
  • Jimpa

    Jimpa, i.e. Java-impact, is an Eclipse plug-in which identifies the impacted source code from a given change request. The approach implemented in Jimpa starts from a textual description of a change request and exploits information retrieval algorithms to link such description with the set of historical source file revisions impacted by similar past change requests.

    Eclipse update site: http://rcost.unisannio.it/cerulo/jimpa
    doc: README

    references:

  • Gerardo Canfora and Luigi Cerulo. "Jimpa: An Eclipse Plug-in for Impact Analysis", In CSMR 2006
  • Gerardo Canfora and Luigi Cerulo. "Fine grained indexing of software repositories to support impact analysis", In MSR 2006
  • Gerardo Canfora and Luigi Cerulo. "Supporting change request assignment in open source development", In SAC 2006
  • Gerardo Canfora and Luigi Cerulo. "Impact analysis by mining software and change request repositories", In METRICS 2005
  • xmlDiff

    xmlDiff is an algorithm implemented in Java that computes the similarity between two XML documents considering their maximum common XML subtrees. The output is a measure which consider separately the content, structure, and positional similarity.

    download: xmldiff.tgz

    references:

  • Gerardo Canfora, Luigi Cerulo, Rita Scognamiglio. "Measuring XML document similarity: a case study for evaluating information extraction systems", In METRICS 2004