Future computer aided design (CAD) systems will be not only smart, but also efficient in terms of solution strategies as well as time costs. This paper presents a problem-solving paradigm, namely case-based reasoning (CBR), and shows how it solves some constraint-oriented design problems efficiently. CBR solves a new problem by retrieving from its case library a solution which has solved a similar problem in the past and then adapting the solution to the new problem. The efficiency of such a system relies on the completeness and compactness (small size) of such a case library. These two characteristics of a case library in turn rely on an indexing scheme for the set of cases in the library. How these issues can be solved and how a case-based reasoning system can be designed for such problems is illustrated here, and the authors' theory is presented as it is applied to the area of assembly sequence planning