Software Engineering has shown us that it is much cheaper to find errors in code as early as possible, and that found early, they are much easier to fix [4]. This has led to the development of many compile-time tools for finding bugs early. This paper compares some of the tools provided on sourceforge.net. Student projects were tested with each of the tools to see if the tool was helpful. Of the tools discussed, PMD was the most powerful. It allows the creation of custom code rules. PMD also allows the code to be checked for duplicate code. Student projects from CS 301, Fall 2005, were tested with PMD and analyzed for duplicate code, and trends were scrutinized. PMD found many bugs in the code, showing its usefulness.
[1]
Jeffery von Ronne,et al.
SafeTSA: a type safe and referentially secure mobile-code representation based on static single assignment form
,
2001,
PLDI '01.
[2]
Robert E. Noonan,et al.
A course in software development
,
2007,
SIGCSE '07.
[3]
Frederick P. Brooks,et al.
No Silver Bullet: Essence and Accidents of Software Engineering
,
1987
.
[4]
Alfred V. Aho,et al.
Compilers: Principles, Techniques, and Tools
,
1986,
Addison-Wesley series in computer science / World student series edition.
[5]
K. Rustan M. Leino,et al.
Extended static checking
,
1998,
PROCOMET.