This research examines strategies for the integration and testing of large software systems. Experiments will be conducted in which modules from large artificial systems are seeded with defects and then integrated and tested by several different strategies. Measurements of the effectiveness of these strategies will be obtained in terms of the percentage of defects detected at each level of testing and reliability of the completed systems expressed as the percentage of successful runs when test cases are chosen from several hypothetical user distributions. The measurements of defect propagation from the unit level of testing through the systems level should provide quantitative insight into some of the issues involved in current debates about the value of isolated unit tests, top-down vs. bottom-up integration, and the selection of test data and scenarios.