think finding out the strength and weaknesses are not the answer as it changes according to the situation. For example who are very hard worker but don't get the suitable environment to perform so how can a hardship will be fruitful.
If any one says I am shy in front of many people as a weakness so it is not useful the organization management as they can't put him/her on public dealing assignments.
It is better to evaluate speaking, thinking and answering skill at the time of interview rather than asking these kind of questions.