[comp.software-eng] summary of Metrics Responses

ncmagel@ndsuvax.UUCP (ken magel) (01/05/88)

     In December I sent a request for comments on use of software complexity
metrics and what demonstrations people would require to cause them to use
metrics.  This message summarizes the nine responses I have received.
     Before summarizing the responses, let me define some vocabulary.  A program
complexity metric is a single number or small set of numbers which represents
how difficult some task is with the source code of a program.  The most common
metric is the number of lines of code.  Tasks might include debugging, program
modification, or program understanding.  A software complexity metric is a 
single number or small set of numbers which represents how difficult some task 
is with the source code of a complete software system, usually consisting of 
several programs.  A system complexity metric is a single number or small set of
numbers which predict or measure how difficult some task is when done on either
system requirements or specifications.  
     Now to summarize the responses.  Some people are using the cyclomatic 
complexity metric proposed by McCabe in the mid-1970's.  Those people use the
cutoff of 10 in the cyclomatic complexity which McCabe proposed.  That is, if
a program has a cyclomatic complexity greater than 10, the program must be 
rewritten.  Several people requested system complexity metrics rather than 
program or software complexity metrics.  They stated that the payoff would be
much greater with system complexity metrics.  The most common response, however,
was a request to find out what complexity metrics were.