Patent ID: 7596778
Filing Date: 2009-09-29
Classification: G06F

Abstract:
1. A method for automatically preventing errors in computer software having a plurality of different life cycle phases, the method comprising: storing source code of the computer software in a code repository; providing a plurality of software verification programs to verify the computer software, wherein each of the plurality of software verification programs relates to a respective lifecycle phase of the computer software, and automatically generates one or more test cases from the source code of the computer software, and wherein each of the plurality of software verification programs is an independent verification tool including a user interface and is capable of being executed in a batch process; executing a first software verification program relating to a first lifecycle phase of the computer software, wherein the first software verification program automatically generates one or more test cases from the source code of the computer software; executing a second software verification program relating to a next lifecycle phase of the computer software different from the first lifecycle phase, wherein the second software verification program automatically generates one or more test cases from the source code of the computer software; generating verification results for the first and the next lifecycle phase of the computer software, responsive to executing the first and second software verification programs and the automatically generated test cases; processing the verification results for generating a representation of functional behavior of the computer software; and providing a common configuration file for the plurality of verification programs; customizing a verification scope of one or more of the verification programs by modifying the common configuration file responsive to an objective criterion of quality of the computer software wherein the objective criterion of quality is a quality rating of the entire computer software that takes into account the verification results of each of the verification programs, the number of test cases executed, and the success or failure of the test cases.