As the conversion of legacy systems continues, the ability to understand embedded business rules becomes more and more critical. This ability is directly related to the structure of the programs within those systems. We also see the need to teach structured programming to a new generation of programmers who must maintain the billions of lines of existing COBOL code. The ultimate purpose of this text is to discuss how to judge the level of structure of a program. We do this by defining structured programming and then discussing how a structured program can be built through the application of the concepts of coupling and cohesion. We also show how embedded business rules of the program can be separated from the data and presentation functions. The reader will be able to use to these skills to judge and to improve the structure of a new program or an existing program.