Another look at software design methodology

Meir Manny Lehman, V. Stenning, Władysław M. Turski · ACM SIGSOFT Software Engineering Notes · 1984

Software design - from 'topmost' specification down to final implementation - is viewed as a chain of uniform steps, each step being a transformation between two linguistic levels. A canonical form of the step is discussed and it is argued that all rational design activities are expressible as a combination of canonical steps. The role of backtracking in software design is explained and a mechanism for introducing changes, both indigeneous and exogeneous, is proposed, again entirely by a combination of canonical steps. The main tenet of the 'canonical step approach' is that a design step contains a degree of unconstrained, creative invention and a calculable part which is the actual transformation effected.

Read the paper · More papers on PaperTik