3.2 Inputs to AppSleuth
AppSleuth takes one or more source code files as inputs and
locates delinquent design patterns as well as forms the intra- and
inter-file call graph. For example, in our running travel
application case study, AppSleuth for PL/SQL reads in all the
source code files, analyzes the structure in each file and finds the
inter-file calling relationships between them. After viewing the
inter-file call graph, the tuner can zoom into one specific file to
look at its internal structures and intra-file call graph which
illustrates nested subprogram calling logic. AppSleuth for TSQL
works in a similar but more straightforward way because in TSQL
all the subprograms are standalone. It doesn’t have PL/SQL’s
packaged or nested subprograms.
AppSleuth locates the relevant programming language code by
comparing the database trace against programming language files
that issue SQL statements as well as stored procedures. The parser