Communications of the ACM · 1971 · 959 citations · 2 references
ComputingComputer ScienceBuilding Information ModelingDecision Support SystemsInformation RetrievalCitation NetworksCitation PracticesStepwise Refinement
The creative activity of programming--to be distinguished from coding--is usually taught by examples serving to exhibit certain techniques. It is here considered as a sequence of design decisions concerning the decomposition of tasks into subtasks and of data into data structures. The process of successive refinement of specifications is illustrated by a short but nontrivial example, from which a number of conclusions are drawn regarding the art and the instruction of programming.
2
A constructive approach to the problem of program correctness
E. Dijkstra · BIT Numerical Mathematics · 1968 · 238 citations
Programming by action clusters
Peter Naur · BIT Numerical Mathematics · 1969 · 100 citations