Beyond structured programming

Structured programming principles are not strong enough to control complexity and guarantee high reliability of software at the module level. Stronger organizing principles and stronger properties of components are needed to make significant gains in the quality of software. Practical proposals, based on the definition of normal forms which have a mathematical/logical foundation, are suggested as a vehicle for constructing software that is both simpler and of higher quality with regard to clearly defined and justifiable criteria.