A depuração é um processo de encontrar e reduzir o número de erros num programa de computador ou qualquer material electrónico, fazendo comportar conforme o esperado. Debugging tende a ser mais difícil quando vários subsistemas estão ligados, como estas mudanças em um, pode causar erros a surgir em outro.
É um processo necessário em quase todos os softwares novos ou processo de desenvolvimento de hardware, se um produto comercial ou uma empresa ou programa de aplicação pessoal. Para produtos mais elaborados, a depuração é feita como o resultado do teste de unidade para a menor unidade de um sistema, mais uma vez no teste do componente quando as partes se reúnem.
O produto é usado com outros produtos existentes, e novamente durante o teste beta do cliente, quando os usuários experimentar o produto em uma situação real. Porque a maioria dos programas de computador e muitos dispositivos de hardware programados contêm milhares de linhas de código, qualquer produto novo é susceptível de conter alguns bugs. Invariavelmente, os erros nas funções que começam a maioria de uso são encontrados e corrigidos em primeiro lugar. Uma versão inicial de um programa que tem muitos erros.
Esquema do debugging :