Patent ID: 9299045
Filing Date: 2016-03-29
CPC Classification: G06F,G06Q

Claim Text:
1. A computer program product comprising: a non-transitory computer readable storage medium; and computer usable code stored on the non-transitory computer readable storage medium, where, when executed by a processor, the computer usable code causes a computer to: create a plurality of versions of a software component including a raw program text version of the software component and a normalized program text version of the software component; compress each of the plurality of versions including the raw program text version and the normalized program text version to provide a compressed version corresponding to each of the plurality of versions including a compressed raw program text version and a compressed normalized program text version; determine a length of each of the compressed versions including a length of the compressed raw program text version and a length of the compressed normalized program text version; calculate a software complexity metric based on a ratio between the lengths of at least two of the compressed versions including a ratio of the length of the compressed raw program text version to the length of the compressed normalized program text version; and use the software complexity metric based at least on the ratio of the length of the compressed raw program text version to the length of the compressed normalized program text version to determine complexity of the software component.