Patent ID: 8146058

Claim:
A method for identifying degree of modularization of software source code comprising: receiving source code; measuring modularization quality of the source code; and generating results of the source code modularization quality evaluation; wherein measuring modularization quality of the source code comprises: determining a size-based metric which measures uniformity of module sizes based at least on a deviation from a uniform size constraint; determining an architectural metric which measures organization of modules into hierarchical partitions, wherein determining the architectural metric comprises determining a layer organization index comprising dividing a number of calls made from an upper layer of modules to modules of a lower layer by a number of calls made to the modules of the lower layer excluding interlayer calls; determining at least one more metric, wherein the at least one more metric comprises: a structural metric which measures function-call traffic through an Applications Programming Interface (API) of at least one module; or a similarity of purpose metric which measures similarity of purpose of groupings within the source code.