Principles of program design. - Jackson, M. A.