Patent ID: 8601446

Claim:
A method for determining an efficient testing scheme, comprising: analyzing, with a data processing system, a computer program, the analyzing comprising identifying a plurality of modules together comprising at least a portion of the computer program, identifying one or more dependencies of one or more of the modules, and determining one or more cyclic blocks including one or more of the modules based on the dependencies; obtaining, with the data processing system, an execution time for each of the modules and determining at least one execution time for each of the cyclic blocks based on the execution times for each of the modules included in each of the cyclic blocks; sorting, with the data processing system, the identified cyclic blocks in a traversal order prior to generating a compressed dependency structure matrix; generating, with the data processing system, the compressed dependency structure matrix based on the cyclic blocks and the dependencies, at least one leveling table based on the compressed dependency structure matrix, and at least one compressed partition matrix based on the at least one leveling table and the dependencies; identifying, with the data processing system, one or more value threads based on the at least one compressed partition matrix; generating, with the data processing system, timing information for the computer program based on the identified one or more value threads and the obtained and determined execution times; and outputting, with the data processing system, the generated timing information for the computer program.