I work as an ERP implementation consultant with a large IT firm here in India. In the last 5 years I have had experience in implementing and participating in over 9 implementations. I have worked on both small ERP packages (Scala) as well as Large Packages like Oracle Applications. There is no doubt that ERPs add value to the organization if properly implemented. As you can see the key phrase is 'Properly implemented'. This is a rare case esp. in case of large packages. There are many reasons touted for this. My view is that the following are the key reasons for failure of many implementaions.
1. The package philosophy: Packages like Scala are designed keeping the end user in mind. So it has built in flexibility to handle any kind of user requirements. But packages like oracle follows a top down approach and focus on top management requirements rather than the requirements of the user. One result is that many of user requirements are not met. This leads to excessive customization.
2. Module specialization: Large packages follow a module specialization approach and hence you have multiple consultants implementing the different modules. This requires consultants who are aware of the overall picture of the implementation and has knowledge of the detailed flows. Such consultants are rare to find. It is infact surprising that the ERP packages which aim to integrate the operations of the organization create module 'silos' at the time of implementation. This is more than a Project Management issue. This is an implementation philosophy issue.
Any other broder level issues you can identify that prevents proper implementation of ERP? How do you handle them? Feel free to comment on this.