Ted Bozarth has a good post on what (in his opinion) keeps people from being successful.
1) Incomplete Picture of Who the Customers Are — Unless you have a complete understanding of who the customers of the objective are, you have no access to how they collectively define success.
2) Lack of Understanding of What Success Means — Knowing who your customers are is only a step towards understanding how they define success. You must then understand the explicit expectations as well as "soft expectations." You must discover and make explicit these soft expectations to fully understand the meaning of success.
3) Lack of Awareness of the Total Context of the Objective — Understanding what success looks like is defining where the Path ends. But defining how to get to the end of the Path requires understanding the barriers and enablers that lay quietly within the context of the objective. You must understand these hidden elements to define the Path.
The only problem with a clear path to success is that, as they say, the greatest barrier to change is… success. Like Ted says, you always have to re-evaluate what you are doing, even if you are successful.