jCT stands for Java Code Tomograph. jCT is a powerful framework for metrics extraction and processing. jCT offers an extensible measurement infrastructure with built-in support for the curated repositories Qualitas Corpus and Helix. With jCT, large-scale empirical studies of code within the same software system or across different software systems become feasible.
We have developed jCT framework specifically to help understand software systems from empirical data. In order to be effective, we require it to
- process non-trivial software systems,
- support the addition of new measures easily, and
- yield a natural and adaptive approach for meaningful interpretation of metrics data.
jCT is a stand-alone Java application and it operates on bytecode rather than source code. Java class files, which contain simultaneously both IL-bytecode and meta data, yield nearly the same information as source files. Bytecode can, therefore, be considered isomorphic to source code. Moreover, due to the absence of any source-level syntactic sugar and auxiliary information, bytecode provides a more direct access to the information we seek.
By design, the extraction engine of jCT does not provide any default measures