Tuesday 10 June 2014

Review of Cost Benefit Analysis Techniques

Cost benefit Analysis is an art consisting of a series of techniques useful for decision making (Radice, 2002). The cost benefit analysis of SPI is important because it is process of determining the money to be gained by following the process. It can be also used to determine how much money is lost from creating and using a new and improved software process.

In his book, Rico (2004) explains techniques to do cost benefit analysis for different SPI techniques; such as Benefit/Cost ratio (B/CR), Return On Investment (ROI) and Net Present Value (NPV); with different SPI models and strategies such as Software Inspections, Personal Software Process (PSP), Team Software Process (TSP), Capability Maturity Model (CMM), ISO 9001 and Capability Maturity Model Integration (CMMI). O’Neil (2005) has also explained to calculate return on investment using Net Present Value (NPV) formula.

Benefit is the amount of money which results from a SPI method. Benefit is the economic value resulting from a new and improved software process. Cost is the amount of money that is spent on a SPI method. Cost is the amount of money you must spend to get something back. Benefit/cost ratio (B/CR) is simply the ratio of benefits to costs. B/CR is a measure of how much money is gained from using a SPI method. For example, a B/CR ration of 2:1 means that for every pound we spent, two pounds is returned.

ROI (Return on Investment) is the amount of money that is gained after spending an amount of money. That is, ROI refers to the amount of money gained. For example, an ROI of 10% means that for every pound you invest, 10 cent is returned.


Net Present Value (NPV) is what money is worth in the future. NPV is the economic value of today’s money in the future less inflation. For example, if we assume inflation rate of 5% per year, £10 today will be worth £9.52 a year from now.

At first, these techniques look quite easy, essential and simplistic in the field of software process improvement as they do not involve more than one or two significant terms or inputs; and also support core of cost benefit analysis that benefits do exist, and costs must be counted.

However, these techniques might not be good for a variety of reasons. Firstly, they all are inadequate for expressing the depth of detail necessary to describe software processes. These techniques offer a formula, but using them early for cost benefit analysis of SPI techniques is not possible. They also make no attempts to describe the relationship between the variables other than the statistical relationship. They cannot also work with incomplete data when some metrics data is missing. One must wait until later in the life cycle to be able to use them, thus predictions not available when needed.

Also that, SPI decisions are primarily taken by humans, and therefore the outcome is often uncertain. Uncertainty arises in many situations. For example, experts may be uncertain about their own knowledge. Uncertainty can be either caused by the unpredictability of future events, or it can also be caused by limitations on the accuracy of the data. Available cost benefit analysis techniques do not include any explicit analysis of risk or uncertainty. They either assume that all future costs and benefits are known or assume that there is no reasonable way to include uncertainty in the calculations. Such assumptions are obviously unrealistic, and it is clear that decisions would benefit from more explicit consideration of the uncertainties affecting future costs and benefits.

Organisations want to improve their existing processes, but they do not know exactly what to change. They cannot predict with certainty what will be the future output and how many defects the work-product will have after following certain processes. It is because they are not sure which inputs they have not yet executed, would produce a failure if executed. If they could know this, they could use the information for defect prevention or process improvement.

There is necessity of the approach to recognise the uncertainty and factor it into the cost benefit analysis, which clearly offers following advantages:

  • The explicit recognition of uncertainties helps decision makers understand the quality of process used to support a particular decision and gives them an idea of potential problems in the analysis.
  • Analysing the impacts of uncertainty on a cost benefit analysis often highlights factors for which better information is needed.
  • This also reveals factors that have the greatest influence on the possible results of the project. Once these factors are recognised, it may be possible to modify them to get maximum return on investment.
  • If uncertainties are analysed before the project is begun, it is frequently possible to suggest conditions that indicate when particular process should be terminated.

No comments:

Post a Comment