Case-Based Reasoning (CBR) has emerged from research in cognitive psychology as a model of human memory and remembering. It has been embraced by researchers of AI applications as a methodology that avoids some of the knowledge acquisition and reasoning problems that occur with other methods for developing knowledge-based systems. In this paper we propose that, in developing knowledge based systems, knowledge engineering addresses two tasks. There is a problem analysis task that produces the problem representation and there is the task of developing the inference mechanism. CBR has an impact on the second of these tasks but helps less with the first. We argue that in some domains this problem analysis process can be significant and propose an iterative methodology for addressing it. To evaluate this, we describe the application of case-based reasoning to the problem of aircraft conflict resolution in a system called ISAC. We describe the application of this iterative methodology and assess the knowledge engineering impact of CBR.