If you've interviewed much, you've probably been asked this question. Art Vandalay examines some of the potential answers and their outcome on his blog. There's also an interesting conversation in the comments over there. The consensus of those being interviewed seems to be that it is a no-win question. The managers seem to find it useful. Which is it?
I've spoken to people who use this question and asked them what they get out of it. Their answer is usually "You'd be amazed what some people will say." True, but if they're really that badly behaved and that intelligent, couldn't you find out some other way? If you ask a question only to weed out the most incompetent, perhaps there are better uses for that time in the interview.
I see little value in this question. As Art points out, there are four possible answers:
Given these 4 choices, the best possible answer is #4. The first will often upset an interviewer looking for "honesty". Unfortunately, this question is designed to get you to be dishonest so the interviewer should avoid the question. The second is lame and probably runs into the same problems as #1. The third will probably end the interview. Everyone has weaknesses and without context, your biggest weakness will often dominate the mind of the interviewer. Game over. The fourth has some honesty to it but isn't enough to get you thrown out of the interview room.
As an interviewer, I don't want to put my future employees in a position where they are struggling to find the answer I want to hear rather than the truth. Why should I put them in a position where lying by avoidance is the best answer?
What are your thoughts? Is there value in this question?