We address the problem of scheduling a set of parts with given processing times and tool requirements on m identical parallel machines. The problem is to find an allocation of the machines to the parts, a proper sequence for the parts assigned to each machine, and a corresponding tool-switching plan for each machine so as to minimize the makespan. It is demonstrated that this problem is np-hard, and three heuristic procedures are proposed for solving it. The first procedure is a multi-start local improvement procedure, and various neighborhood structures and search strategies are discussed in this context. The second procedure is a variation of the list-processing routine that is commonly used for the parallel machine problem. Finally, the last procedure is an adaptation of a well-known constructive procedure for the k-travelling salesman problem. Results of a limited computational experiment are also presented in which the makespan obtained via each heuristic procedure is compared with a proposed lower bound and with other reference values.