Software
process improvement (SPI) has been on the agenda of both academics and
practitioners. Many companies have invested large sums of money in improving
their software processes, and several research papers document SPI's
effectiveness. SPI aims to create more effective and efficient software
development and maintenance by structuring and optimizing processes. SPI
assumes that a well-managed organization with a defined engineering process is
more likely to produce products that consistently meet the purchaser's
requirements within schedule and budget than a poorly managed organization with
no such engineering process. Like any change in an organization, SPI is an
investment for which the benefits should exceed the cost. One frequent argument
in software practice is that measuring SPI's benefits is impossible, or at
least difficult. Organizations find it relatively easy to measure cost by
measuring effort but have trouble measuring benefits. However, this is owing to
a serious misunderstanding of cost measurement: costs are much broader than
effort alone. Making explicit return on investment (ROI) calculations is
therefore crucial for SPI because it's an investment with significant cost and
sometimes invisible benefits. The ROI should therefore be visible as well to
avoid incorrect intuitive evaluations.