1. A method of selecting program patches for installation by human or machine patch recipients into computer systems, where the patches are organized into patch chains each having a root, the method comprising the steps of: searching for a patch that corrects a particular defect or that has a particular property or both; examining additional patches, if any, sharing the same patch chain as any such patch found as a result of the search and occupying a position on the shared patch chain between that of any such patch found and the root of the patch chain; and presenting one or more patches, including any such patch found and examined patches that satisfy one or more specified conditions determined by the nature of each patch and the identity of the patch recipient.