Revolution in programming: an overview

Daniel D. McCracken · Yourdon Press eBooks · 1979

In December 1973, Datamation devoted its entire issue to the subject of structured programming. The issue included five interrelated papers covering top-down design, Programmer Teams, structured programming, and related subjects. I have selected four of those papers for inclusion in this collection, and will discuss each of them in this single introduction. McCracken's article, Revolution in Programming: An Overview, probably attracted more attention than the others, largely because of its dramatic title. More important, however, than the content of the article was the emphasis given to a relatively unfamiliar subject by a man known throughout the industry for his FORTRAN and COBOL textbooks. After structured programming had been discussed for years at computer conferences and in scholarly journals, the well-known Daniel McCracken announced in the most popular computer magazine that: Structured programming is a major intellectual invention, one that will come to be ranked with the subroutine concept or even the stored program concept. Aside from such attention-getting comments, there's not a great deal of technical detail in McCracken's paper, which clearly was intended primarily to be an overview introduction to the other papers in that issue. Donaldson's article, entitled Programming, presents the subject in somewhat more detail than McCracken, although considerably less detail than most of the other papers presented in this book. This is understandable, of course. Datamation caters to an audience of managers and senior technical people who are interested in concepts and trends, but who usually have neither the time nor the interest to wade through highly technical details. Although the paper is significant for its inclusion in a popular magazine, there are two crucial weaknesses: First, the paper gives the impression that structured programming is a simple, straightforward matter in FORTRAN and COBOL --- an impression that probably led to a great deal of disillusionment on the part of innocent programmers who took Donaldson at his word. Second, the example chosen by Donaldson to compare the virtues of structured code with the ugliness of unstructured code is not at all convincing, because the example is not one of a real program. This second weakness is remedied in the third Datamation pa' per, entitled Programming: A Top-Down Approach, by Miller and Lindamood. This paper presentsan excellent example of the disadvantages of writing unstructured code in FORTRAN, as well as a distinctly improved structured version in IFTRAN. The authors give most of the credit to Dijkstra for popularizing the concept of structured programming, a tribute that is well-deserved and that continues to this day. However, as Knuth points out in his with go to Statements [Paper 20], a number of others in addition to Dijkstra actually contributed to the popularization of the subject within the academic community. Baker and Mills collaborated on the final of the Datamation papers selected for this collection. In many ways, Chief Programmer summarizes the discussion in Baker's Chief Programmer Team Management of Production Programming and System Quality Through Structured Programming presented as the seventh and eleventh papers in this book, respectively. Baker and Mills's paper is interesting in that it provides historical perspective on IBM's evolving interest in the subject of structured programming. Baker's earlier papers were published in January and September of 1972. The Datamation paper, as we have seen, appeared in December 1973. By late 1973, as is apparent from the Datamation paper, IBM had begun considering the application of Programmer Teams to larger --- that is, to teams of teams, and had used the chief programmer approach on additional projects The Skylab support system is mentioned briefly by Baker and Mills as an example of a 400,000-statement system developed with the same approach as that used on the original New York Times system.

Read the paper · More papers on PaperTik