Let\'s say you have a bug that was found in functional testing of a fairly complex part of the software. It could stem from bad/unexpected data in the database, middle-tier cod
I suggest reading Debugging By Thinking.
Andreas Zeller has also done some work in systematic debugging studies.