Various classes of d.c. programs have been studied in the recent literature due to their importance in applicative problems. In this paper we consider a branch and reduce approach for solving a class of d.c. problems. Seven partitioning rules are analyzed and some techniques aimed at improving the overall performance of the algorithm are proposed. The results of a computational experience are provided in order to point out the performance effectiveness of the proposed techniques.