1. A computer-implemented method for extracting business rules from an existing program using coverage analysis reporting which statements of the program logic have and have not been executed, wherein the business rules are associated with one or more constraints on the creation, updating and deletion of persistent data, comprising: generating a coverage analysis report of the execution of the existing program; identifying and selecting a portion of the program's source code containing one or more business rules from the program's source code statements shown as having been executed in the coverage analysis report; analyzing the selected portion of the program's source code to identify one or more business rules; grouping the program's source code statements that are relevant to each business rule identified from the selected portion of the program's source code; documenting each identified business rule with the algorithmic sequence of program logic steps from the grouped program source code statements that are relevant to that identified business rule; creating an additional coverage analysis report for the existing program using a different set of data conditions for the purpose of at least one of: identification of additional algorithmic steps relevant to each identified business rule and identification of additional business rules; and continuing to iterate this process until all active business rules have been identified and until all algorithmic steps identified with each of these identified business rules have been documented.