Case-based reasoning (CBR) is widely applicable to the diagnosis of problems and the identification of solutions to them. This review of the literature identifies key papers relating to this use of CBR. The stages in diagnosing and troubleshooting a problem are considered and the elements of a CBR system for achieving this are described. Five systems are discussed that have frequently been cited in the literature and illustrate the use of CBR in diagnosis and troubleshooting applications.