DocumentCode
3169853
Title
Diff/TS: A Tool for Fine-Grained Structural Change Analysis
Author
Hashimoto, Masatomo ; Mori, Akira
Author_Institution
Nat. Inst. of Adv. Ind. Sci. & Technol., Tokyo
fYear
2008
fDate
15-18 Oct. 2008
Firstpage
279
Lastpage
288
Abstract
This paper reports on a tool for fine-grained analysis of structural changes made between revisions of programs. The tool, called Diff/TS, calculates, visualizes and classifies edit operations including "moves\´\´ that will change one revision into another by means of detailed tree structural analysis on source code. Such analysis tends to be time consuming and inflexible. We have extended a general tree comparison algorithm with heuristics driven control configurable for multiple programming languages and have achieved both processing speed and analysis precision needed for investigating large-scale software projects. The tool is capable of processing Python, Java, C and C++ projects. We present several applications including software "archaeology\´\´ on a widely known open source software project and automated "phylogenetic\´\´ malware classification based on control flows. These examples suggest that tree differencing is useful for measuring distance or dissimilarity between tree structured artifacts, and offer good precision tests of the method.
Keywords
configuration management; data flow graphs; invasive software; pattern classification; program diagnostics; program visualisation; software maintenance; text editing; tree data structures; C project; C++ project; Diff/TS tool; Java project; Python project; control flow graph; fine-grained structural change analysis; large-scale software project; open source software project; phylogenetic malware classification; program edit operation; program revision; program visualization; programming language; software archaeology; source code tree structural analysis; Algorithm design and analysis; Automatic control; Classification tree analysis; Computer languages; Heuristic algorithms; Java; Large-scale systems; Open source software; Software algorithms; Visualization;
fLanguage
English
Publisher
ieee
Conference_Titel
Reverse Engineering, 2008. WCRE '08. 15th Working Conference on
Conference_Location
Antwerp
ISSN
1095-1350
Print_ISBN
978-0-7695-3429-9
Type
conf
DOI
10.1109/WCRE.2008.44
Filename
4656419
Link To Document