Improving computer program readability to aid modification

@article{Elshoff1982ImprovingCP,
  title={Improving computer program readability to aid modification},
  author={J. L. Elshoff and M. Marcotty},
  journal={Commun. ACM},
  year={1982},
  volume={25},
  pages={512-521}
}
The modification of computer programs is a costly and constant job. An informal survey conducted at General Motors and reported on by Elshoff [6] concluded that about 75 percent of all programmer/analysts' time in a commercial data processing installation is spent on program modification. This conclusion agrees with independent assessments made by Liu [16], Boehm [2], and Lientz and Swanson [15]. Moreover, the reasons for modifying programs will not disappear. As pointed out by Lehman [14], all… Expand
Designing Maintainable Software
TLDR
This book argues for a new way of thinking about maintaining software, proposing the use of a set of human factors principles that govern the programming-software-event world interactions and form the core of the maintenance process. Expand
System structure and software maintenance performance
TLDR
Results indicate that system improvements lead to decreased total maintenance time and decreased frequency of ripple effect errors, which suggests that improving old systems may be worthwhile and may yield benefits over the remaining life of the system. Expand
Redocumentation: addressing the maintenance legacy
TLDR
This paper outlines a conceptual approach to the allocation of software maintenance resources and the role of automated tools in this process and argues that software maintenance tools cannot be simply purchased or built and then used indiscriminately. Expand
Automatic Segmentation of Method Code into Meaningful Blocks to Improve Readability
TLDR
A heuristic solution to the automatic blank line insertion problem is presented, by leveraging both program structure and naming information to identify “meaningful blocks”, consecutive statements that logically implement a high level action. Expand
Commenting source code: is it worth it for small programming tasks?
TLDR
The results indicate that comments seem to be considered more important in previous studies and by participants than they are for small programming tasks, while other mechanisms, such as proper identifiers, are considered more helpful by participants and they also emphasize the necessity of comments in certain situations. Expand
Exploring action unit granularity of source code for supporting software maintenance
TLDR
This dissertation explores the feasibility of automatically identifying high level actions towards improving software maintenance tools and program understanding and develops techniques to automatically identify actions for loop-based action units. Expand
A comprehensive model for code readability
TLDR
The results demonstrate that (1) textual features complement other features and (2) a model containing all the features achieves a significantly higher accuracy as compared with all the other state‐of‐the‐art models. Expand
A simpler model of software readability
TLDR
This work presents a simple, intuitive theory of readability, based on size and code entropy, and shows how this theory leads to a much sparser, yet statistically significant, model of the mean readability scores produced in Buse's studies. Expand
Removing the emphasis on coding in a course on software engineering
TLDR
This paper describes a course that shifted the emphasis from coding by having students perform supporting activities and maintenance on a large Ada project. Expand
Empirical Validation Of MSR-SM Framework
The readability of a program is concerned with its maintainability. The maintenance of software generally stands for evolving software, and even customizing existing code is a significant practice ofExpand
...
1
2
3
4
5
...

References

SHOWING 1-10 OF 28 REFERENCES
The Translation of 'Go To' Programs to 'While' Programs
TLDR
The subject of the Ashcroft and Manna paper is the translation of unstructured programs into equivalent structured programs, and Wulf's paper sets forth a more practical, step-by-step mechanism for such translations, giving an extremely detailed, extremely theoretical presentation. Expand
Letters to the editor: go to statement considered harmful
TLDR
My considerations are that, although the programmer's activity ends when he has constructed a correct program, the process taking place under control of his program is the true subject matter of his activity, and that his intellectual powers are rather geared to master static relations and his powers to visualize processes evolving in time are relatively poorly developed. Expand
The Influence of Structured Programming on PL/I Program Profiles
  • J. L. Elshoff
  • Computer Science
  • IEEE Transactions on Software Engineering
  • 1977
TLDR
The time and training required to introduce structured programming techniques will begin paying dividends within six months and further alterations can make the programs still better. Expand
Go to statement considered harmful
TLDR
In form and content, Dijkstra's letter is similar to his 1965 paper, and the last few paragraphs underscore once again why the subject of structured programming stayed out of the mainstream of the data processing industry for so long. Expand
On the use of the cyclomatic number to measure program complexity
TLDR
In this paper another well-structured versions of the program is presented for which the cyclomatic complexity is reduced to that of the original unstructured version, and some of the shortcomings of the cycl automatic number as a complexity measure are revealed. Expand
An extension to the cyclomatic measure of program complexity
TLDR
A graph-theoretic measure of program complexity, where a program's complexity is assumed to be only a factor of the program's decision structure, is described and a simple extension to the measure is described to eliminate anomalies. Expand
Softwear Reliability
TLDR
Focuses on the unreliability of computer programs and offers state-of-the-art solutions in software development, software testing, structured programming, composite design, language design, proofs of program correctness, and mathematical reliability models. Expand
Measuring Improvements in Program Clarity
  • R. D. Gordon
  • Computer Science
  • IEEE Transactions on Software Engineering
  • 1979
TLDR
The ability to objectively assess the clarity of a program is essential in order to rationally develop useful engineering guidelines for efficient software production and language development. Expand
An Analysis of Some Commercial PL/I Programs
  • J. L. Elshoff
  • Computer Science
  • IEEE Transactions on Software Engineering
  • 1976
TLDR
The source code for 120 production PL/I programs from several General Motors' commercial computing installations has been collected and some data from the scanning process are presented and interpreted. Expand
Modern Coding Practices and Programmer Performance
The late 70' s find structured programming increasingly popular—this and other techniques are programming's future. But what does experimental evaluation say about their actual effects on programmerExpand
...
1
2
3
...