Index of /~billard/se/cs4320/ex8
Name Last modified Size Description
Parent Directory 20-Apr-2008 08:49 -
print.bat 19-May-2009 09:03 1k
setpaths 19-May-2009 09:03 1k
CS 4320 Software Testing and QA: Ex8 METRICS
============================================
Platform: UNIX
Given: source code
Goal: Examine various software metrics. Metrics allow the engineer
to view the software in a variety of dimensions. These metrics
can help the engineer understand the software in both design
and implementation.
a. Examine the various metrics in:
http://www.semdesigns.com/Products/Metrics/JavaMetrics.txt
b. Use the CCCC metric tool to examine the b-tree sources:
% source setpaths
% cccc ../ex7/btree.c
This does not work on the new sun machines in lab:
% netfile .cccc/cccc.html
Instead, click on the "globe" at the lower part of the screen.
Then Open File in netscape and browse to your ex21 directory.
Then open file: .cccc/cccc.html
If you are working at home, then ftp this file home and apply your
browser to it.
Examine the Cyclometic Complexity, etc.
Exit from netscape.
c. Do an investigation of the OO metrics of the Java implementation:
% ls /apps/jdk1.1.4/src/java/lang/*.java | cccc -
% netfile .cccc/cccc.html
d. Fill-out report.txt with answers to the following questions:
QUESTION 1: a) What is the Cyclometric (Cyclomatic) Complexity for the entire package?
b) What is the significance of the Cyclometric Complexity?
QUESTION 2: a) What is the Cyclometric Complexity for FloatingDecimal.java?
b) Per Line of Comment?
c) What is the relevance of the Cyclometric Complexity with respect to comments?
QUESTION 3: a) What is the Depth of the Inheritance Tree for LinkageError.java
b) What is the Number of Children?
QUESTION 4: a) What is the Coupling of String.java with other modules.
b) Visible Fan-in?
c) Visible Fan-out?
d) What is the meaning of coupling in software engineering?
e. project notebook (see print.bat):
README
report.txt