IT projects fail when the complexity of your organization exceeds your capability to manage it. Large and complicated software systems must necessarily be built by large teams in order to deliver in a reasonable time. There are two approaches to managing the complexity of large organizations: Managing the development approach and managing the interfaces.
You can get developers to understand the need for common interfaces, so the difficulty of managing a large set of interfaces will level off once you have developed an approach that works for your team. But with increasing team size, you will get an increasing number of mavericks refusing to follow common development standards.
Simply standardizing the interfaces between teams harvests 80-90% of the integration benefits without the drama of forcing developers to work in a way they don’t want.
There is more about this in this weeks Technology That Fits newsletter.