This directory contains an example of some tools which glom together the
output of various metrics tools into some (potentially) usable databases.
There are two databases produced, one of which is file-based (containing
halstead, change count and line count information) and one of which is
function based (containing mccabe and return information).  Obviously,
there can be one or more functions in a file.

I have only a few printouts left indicating the results of the multiple
regression models I built.  The results from these are presented later in
this file.  The most (statistically) significant variable for the
prediction of errors (SCCS changes) was halstead volume.  Mccabe, returns
and comment counts were also significant, at similar statistical levels.
Kdsi and volume were highly correlated.  The only variable I disbelieve is
the values for mccabe.  See my comments in the doc directory.

The structure of the scripts follows.  They are not easy to read, although
if you lay them all out before you, they are not too bad.

The file pascal_stats is the highest level script.  It actually knows about
the structure of the application's directories.  (But, before trying to use
this file, see the comments about proj_stats below.) It calls gather_stats
to pull stuff together for each directory.  The output from gather_stats is
just appended to the appropriate metrics database.

Gather_stats actually gets the statistics, for the file specification
passed to it.  Note that I have modified it since it was last used.  I
assume that it still compiles.  In addition, some of the commands produce
more and different output than they used to.  I have changed the
specification of the joins to what I think it should be.

I have created a new script proj_stats which employs a different (easier to
read) method than that in "pascal_stats" for naming all of the directories
and files in a project.  It reads a file for the names of the directories
and the patterns which describe files in those directories.  An example
file which should work for the pascal project is in "example_spec".

The other new scripts are altparse.prs and altkdsi.  Altkdsi just post-
processes the output of the kdsi command to strip off the totals line.
Altparse.prs finds the change count from sccs.  It does not count ".1"
deltas, assuming that those are new releases, rather than bug fixes.
