advantages and disadvantages of debugging