A formalization and explication of the Michael Jackson method of program design
J. W. Hughes · Software Practice and Experience · 1979
Abstract The key to Jackson's Program Design Method is the definition of the inputs and outputs of a program as labelled trees and the recognition of a correspondence between them. This paper gives a more formal definition of the trees and the correspondence. These definitions are then used to explain his basic method and methods for ‘structure clashes’ by reference to formal language theory.