This paper reviews McCabe's cyclomatic complexity and Halstead's laws; it discusses studies in current literature relating the metrics to software. The studies are reproduced using data obtained from a large software project developed in a major electronics firm. Problems that occur when deriving the metrics are discussed; the result of...
This paper reports the findings of two studies conducted at Oregon State University. The first set of studies compares use of header comments versus mnemonic procedure and function names by programmers performing tasks relating to modification tasks. The second study compares the use of header comments versus in-line comments when...
Recently several minimal perfect hashing functions far small static word sets have been developed. However, they are limited to sets of 50 words or less. In this paper, a Two Level Minimal Perfect Hash Function for large data sets is given. It partitions a large static set into small sets...
This study describes the software metrics analysis of IO releases of an embedded real-time telephone switching system developed by a German telecommunications firm. The micro-controlled application was written in a C-like macro assembly language. We developed a metrics program that computes the standard complexity metrics plus a number of information...
Program comprehension is important in program testing, debugging, and maintenance. Programming style impacts program understanding. However, there has not been any systematic identification of individual style factors and their contribution to program comprehension. In this thesis we present a programming style taxonomy composed of three classes: typographic (program layout and...
Programming style is a highly individualistic and important part of programming. Yet, there is no general agreement on the definition of programming style nor even the qualities that make up programming style. Existing automated programming style analyzer programs either produce a battery of numbers, leaving the weight and/or importance of...
Since its introduction in 1995 by Sun Microsystems, the Java programming language has been widely accepted by the software development community. Besides being a natural fit for Internet and World Wide Web (WWW) based applications, Java is also being used in other diverse application areas due to its simplicity, reduced...
There has been concern voiced for a number of years about the problem of program plagiarism. A number of SIGCSE Bulletin articles have discussed the issue. However, it is not at all clear as to what behavior we are actually referring, nor to what extent it is occurring. How do...
The practice of literate programming is not widespread because existing literate programming systems have some undesirable characteristics such as programming language and text processor dependence and lack of flexible tools for viewing and manipulation of the source file. This dissertation describes the literate programming system AOPS (Abstraction Oriented Programming System)...