We propose a new backtracking algorithm called constraint- directed backtracking (CDBT) for solving general constraint-satisfaction problems (CSPs). CDBT searches for an assignment to variables in a variable set from a given constraint posed on that variable set and appends it to an existing partial solution, in contrast with the naive backtracking (BT) which searches for an assignment of one variable from its domain. In this way, CDBT has a more limited search space and it actually visits fewer nodes than BT. Like BT, CDBT can be improved by incorporating other tree seach techniques such as backjumping or forward checking and consistency techniques such as the ω-consistency algorithm.[/ p]