Information models of software productivity: Limits on productivity growth
Abstract This article reports research into generalized information-metric models of software process productivity to establish quantifiable behavior and theoretical bounds. The models establish a fundamental mathematical relationship between software productivity and the human capacity for information traffic, the software product yield (system size), information efficiency, and tool and process efficiencies. The article then derives an upper bound that quantifies average software productivity and the maximum rate at which it may grow. This bound reveals that, ultimately, when tools, methodologies, and automated assistants have reached their maximum effective state, further improvement in productivity can only be achieved through increasing software reuse. The reuse advantage is shown not to increase faster than logarithmically in the number of reusable features available. The reuse bound is further shown to be somewhat dependent on the reuse policy: a general “reuse everything” policy can lead to a somewhat slower productivity growth than a specialized reuse policy.