For this project, you need to use existing tools to calculate software complexity metrics (i.e., LOC, Cyclomatic Complexity, Halstead's metrics, Information Flow metrics, Maintainability Index (MI)). You need to use at least three different complexity metrics and apply them to the source code of at least three different Java programs. [login to view URL] has both software complexity projects that you may consider using and Java source code. Additionally, JHawk provides a demo version.
After analyzing the code, write a one-page report summarizing your findings. Introduce each program analyzed and instructions on how to obtain it. Include graphs and/or charts in your report to help present your results. Be sure to discuss any unintuitive results (e.g., a single class Java program having a value higher than a major open source project).