The testability metric proposed in this paper can be used to estimate the effort that is required in the testing phase of the developmental cycle. Typically the parameters that are considered during effort estimation, include data due to metrication , maturity of the software developmental process within the company and the actual resources that are available for the project.
We propose that the effort that is needed to test a class hierarchy is the sum of all the resources expended in the testing phase of the project life cycle. One of the important factors that determine the effectiveness of testing cycle is the coverage of the testcases i.e the reach of the testcases in determining/verifying the set of objects that have changed states during execution. It is of statistical significance that the testing coverage is proportional to the number of test cases defined in the test plan. It is often the case that an increased activity of state changes within a method often correlates to an increase in the number of testcases to validate that method.
The proposed metric estimates, although conservatively, the number of objects that have the ability to change their states in a method. It is therefore logical to investigate the correlation between static and dynamic measures by measuring the actual objects that have changed states in a method.