If I ask someone why they think they would be good at the job for which they're interviewing, the very same set of answers can be either poor to adequate depending on the job.
For example, if I'm interviewing someone for unskilled or quick-learn semi-skilled positions and I ask them that question and they say, "I'm a fast learner and I work really hard. I have a lot of energy," that can be a great answer, particularly if their work record and/or records suggest it's true.
However, if I'm asking the same question of someone for an engineering position or for an exempt level Employee Relations role, that's a poor answer. In fact, I see a failure to answer with more specificity, especially after prompted or closely examined with follow up questions, as a deal breaker in that context.
That's one of my favorite questions. However, it's highly context sensitive and requires good knowledge of the job and the ability to think on your feet to use it effectively. The reason you have to have good job knowledge and the ability to think on your feet is because the question itself is not that important. It's what comes after: if the candidate is any good, the conversation should be pretty rich. The follow up questions you ask as you struggle to help someone giving rehearsed and safe answers to be genuine and shine and tell you what yuo need to know about them are what drive the value of this line of investigation.