I've considered my own PM past (and present), the experiences of my colleagues and observations I've made along the way...and below is my list of some of the top underlying reasons projects fail. Of course, there can and will be many others – many that have absolutely nothing with anything on this list or anything we have control over, but this is a solid list...in my opinion...of many key causes of project failures. Please consider your own list and share it.
Poorly documented or missing requirements. Requirements are the lifeblood of the project. If key requirements are missing or are not documented in enough detail then the chances you'll design the proper solution are slim... you'll be leaving success to luck and that's a bad place to be.
Lack of key skills or resources. Do you and your project team members have the right skills for the project? Many projects have failed when a team tries take on a project that the lack the experience or knowledge base for technically. Yes, you can learn along the way - that's how we grow professionally. But when the stretch is too big that's when we miss key requirements, create a bad design or go through expensive and time consuming re-work that can end up killing the project.
Communication breakdown. Communication is the very heart of successful project management. And by communication I mean good, effective, efficient communication. Speaking, listening, emails, meetings, etc. Everything that communication entails. If there is a breakdown in any of those communication, it can leave the project at risk. If meetings aren't happening or are poorly attended...that's can cause project failure. If the project manager to project team and vice versa communication is poor, that can definitely contribute to project failure as project tasks are not delegated properly and requirements are poorly communicated. If project team to project customer communication is poor that can definitely be a problem because that communication has to happen in order for requirements to be properly understood and interpreted, the customer is needed for input to decisions, and the customer is needed for weekly participation to ensure that progress is happening...and the right progress is happening...throughout the engagement.
Technology disconnect. If there is any technology aspect to the project and the tech solution misses the mark – that can be a project disaster. The final solution rolled out to the user community may be unusable. This goes back to not taking on a project that the project team is not technically ready to take on because failure is too likely of an outcome...leaving success to chance or luck is always a bad idea. If your organization and team are not ready for this technology, avoid proceeding.
Summary / call for input
Again, this is just my list from experience and observation. What's your list? Difficult customers? Change in direction from senior management? Everyone's had at least one project failure (if they care to admit it)...what caused yours?