Modern debugging: the art of finding a needle in a haystack
a survey of unit testing practices .