Future computer-aided-design (CAD) systems will be not only smart, but also efficient in terms of solution strategies as well as time costs. The authors present a problem-solving paradigm, namely case-based reasoning (CBR), and show 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. They illustrate how these issues can be solved and how to design a case-based reasoning system for such design problems. They present the theory as it is applied to the area of assembly sequence planning