Debugging is an important process in software development life cycle. Debugging is easier in case of sequential processes as compared to that in concurrently executing processes. The challenges and approaches in the design of a concurrent debugger are discussed in this paper.