CASE BASED REASONING
Case based reasoning is a method of storing observations on previous projects. Such as effort required to implement the project, programming platform and so forth. When faced with a new observation it is then possible to retrieve the closest stored observations. See figure 5 for illustration of this method.
Figure 5 Case Based Reasoning
Assessment of CBR systems
The performance of CBR systems have shown encouraging results. An experiment conducted by [MUKHOPADHYAY et al.] compared the performance of a CBR system against experts, function points and COCOMO. The performance of the CBR system exceeded both algorithmic models and was extremely close to the level of the expert. As CBR systems use stored cases, it is apparent that as observations are built up the CBR system would have a large knowledge base to compare new observations against. This would suggest CBR systems will get more accurate than experts, as experts have an inability to recall all of their experience and are potentially biased.
Case-base reasoning systems are intended to mimic the process of an expert making decisions based on their experience. The CBR technique is therefore very similar to the analogy software cost estimation technique.