In agile methodologies (e.g. SCRUM), the complexity/effort needed for a user stories are measured in Story points, and story points are used to calculate how many user story a team can take in an iteration. 

What is the advantage of introducing an abstract concept like user stories, where we can just use a concrete measurement, like estimated man-days? We can also calculate velocity, estimate coverage of an iteration, etc. using estimated man-days.

In contrast, story point are harder to use (because it is abstract), and also harder to explain to stakeholder. What advantage does it offer?