First IEEE International Workshop on Source Code Analysis and Manipulation
Analysis and Manipulation of Distributed Multi-Language Software Code
Florence, Italy
November 10-December 10
ISBN: 0-7695-1387-5
In this paper, we propose a formal model and a platform to deal with distributed multi-language software analysis. These provide a graph representation of the software codes (source codes and byte-codes), a change propagation process based on graphs rewriting, and an automatic profiling tool to measure the contribution of any component to the global performance of the software. The program codes are structured in a multi-graph in which the nodes represent the software components linked by edges representing the meaningful relationships. The software components and their relationships are extracted from the byte-code files, using mocha decompiler tool, and from the source codes files, using Javacc tool. Javacc allows to generate parsers, based on grammars specifications files, which include features to produce an XML (eXtensible Markup Language) representation of the software components. Furthermore, a graph of the software components is constructed on the top of the XML files, providing programs analysis. This is implemented by an integrated platform including the mocha decompiler, a multi-language parsing tool, a software change management module, and a profiling tool.
Index Terms:
Source code analysis, Byte-code, Profiling, Change Propagation, Decompiling.
Citation:
L. Deruelle, N. Melab, M. Bouneffa, H. Basson, "Analysis and Manipulation of Distributed Multi-Language Software Code," scam, pp.0045, First IEEE International Workshop on Source Code Analysis and Manipulation, 2001