Elements of Software Science (Operating and programming systems series)
Elements of Software Science (Operating and programming systems series)
An experimental investigation of the effect of program structure on program understanding
Proceedings of an ACM conference on Language design for reliable software
A measure of mental effort related to program clarity.
A measure of mental effort related to program clarity.
Factors affecting computer program comprehension.
Factors affecting computer program comprehension.
On control constructs for constructing programs
ACM SIGPLAN Notices
The influence of color on program readability and comprehensibility
SIGCSE '86 Proceedings of the seventeenth SIGCSE technical symposium on Computer science education
Hi-index | 0.00 |
While improved programming methodologies, better computer languages and more sophisticated programming aids have helped alleviate some problems associated with software development, a software crisis continues to exist. The software crisis continues partly because many of the suggested improvements in software development have emphasized the role of the computer, rather than the programmer, in the development process. Researchers are beginning to realize that the ultimate resolution of the software crisis will come only when we understand the human processes involved in software development. Computer program comprehension has been one of the human processes which has been studied by researchers. Two basic approaches have been used to study program comprehension. Using the first approach, an objective measure of comprehension is proposed based on the author's suppositions about the sources of complexity. A second approach used in the study of program comprehension is to empirically investigate factors which might affect comprehension. In the next section, a methodology is proposed to measure the comprehension of statements and programs. It is applied to study expression complexity in section three and selection statement complexity in section four. Implications for teaching programming are described in section five and the paper is concluded in section six.