Predictive modeling of resource consumption during the programming phase of software development

D. McNicholl · 1982

Most of the software development resource estimation models which have been developed in the past have either been designed to be applied during pre-programming phases of the software life cycle using subjective estimates of the complexity of the software, or have been designed for use in post-programming phases of the life cycle using objective measurements of the complexity of the system. The disadvantage of the former models, as demonstrated by an experiment in this dissertation, is that the perceived complexity of software development is highly subjective, and therefore the reliability('1) of these models is relatively low. The disadvantage of the latter models is that they are applied too late in the software life cycle to be used for development planning('2). The goal of the research reported in this dissertation is to^demonstrate the feasibility of constructing predictive models of^resource consumption during the programming phase of software^development which are based on only objective measurements of^program complexity. The programming phase is one phase earlier^than the phase for which most existing objective models have been^designed('3) and it was believed that objective measurements could be^obtained from the input to this phase, i.e. the program specifications.^An experiment using student programmers was performed to:^(1) show the need for a stochastic model of individual resource^consumption; and (2) construct a model of individual resource^consumption during the programming phase of software^development. Evidence from this experiment demonstrates that the^Log-Normal distribution is a reasonable one to adopt for explaining^the probabilistic behavior of individual resource usage. In addition,^a possible theoretic rationale for the appropriateness of the Log-^Normal distribution can be constructed based on a proportional^effects model of program growth. Furthermore, the mean and^variance of the Log-Normal distribution are shown to be predictable, within a reasonable degree of accuracy, given certain objective measurements of the program specifications. ^^('1)Reliability is used here in the sense that measurements from different individuals will not be consistent.^('2)Their major use has been in planning for the testing and maintenance phases of the software life cycle.^('3)Most objective models have been designed to be applied to the source program available at the end of the programming phase.

Read the paper · More papers on PaperTik