When an enterprise solution is planned, there are always big ambitions. You have great minds coming together to achieve benefits for the company in the long run. It's not a small project to help someone to replace Excel macros or a small part of the daily business problem. Enterprise solution is all about addressing the disconnected business processes, and it requires experts across the board from different domains. Usually, companies put tremendous effort into ensuring that the right people are there to build this solution.
However, in spite of all these efforts, we hear that an initiative to make something bigger and better is called off after almost spending millions of dollars. It is not just about money; it is also the efforts going in.
Let’s look at what some basic reasons behind enterprise failures.
Legacy Doesn’t Work
I am sure that every company has someone who believes in the technology of the ape age. According to old apes, everything can be done using one weapon that's as old as they are. There is a reason behind every evolution. There is a reason why we don’t live like apes anymore so as there is a reason for technology being what it is today. Either upgrade or leave space for those who can afford to upgrade. Keep your preachings like "old is gold" at charities and public speaking; don’t use them at work. We are building solutions for the problem you've lived with for ages.
Ego and Not Compromising Your Business Processes
Enterprise is about connecting different business process and points but it is unfortunate that every business is just not ready to embrace the change. Always expectation from business is build what they want and not "what business needs?". This is the first area of correction and if you are not convincing your business team for a bigger change then please don’t try to build something that is going to address the bigger problem and it is better you build solution that suits the business team which doesn’t want embrace the change. Business has to be convinced about how enterprise is going to help otherwise for business folks technology is nothing but cutting their jobs.
I (or My Team) Can Do Everything
The fact is you can’t do everything; you need experts and that you need to admit you might not have. Always focus on giving what you are best at and don’t try to build the knowledge overnight — if you think you can, then good luck. For example, if you lack in integrating big data solutions or you don’t have that expertise, then always look for integrators who could do it. Everything under one roof is not always true, and if you are trying to get everything under one roof, then you are losing out on the best.
You Can't Move a Mountain in One Day
No matter what software methodology you use, some things require a good amount of time to build. There are no shortcuts. Often, technical teams will come together under pressure to "show progress" and build something to impress your top management. A Barbie doll is not a good prototype or POC of a robot. Set proper milestones and tollgates; don’t hurry up to show small progress, because it is going to fail miserably in the bigger picture.
Don't Assume Just to Show Progress
I am sure that many would argue to the point that sometimes it is necessary to assume and just begin, but this is will haunt you in a big way. It is always good to document your assumptions and ensure they are right. In my experience, most of the time, assumptions have been made about data and its source of truth, only for the developers to realize that it was not the true source of data. If data integration is not with the right source, then you are using data that is being changed, which may have a different meaning. Chances are high that data meaning will change as it moves from system to system. It is very important to decide on the data integration points.
Somehow, We Will Make This Work
What I hate to hear is projects being called off after burning millions of dollars. I always had this question: When did you start to realize that this project would not work — just before few weeks before the "go live" date? This is insane. This is where key technology groups will play a big role. No sponsor or leadership team would like to hear the words, "we shouldn’t go ahead with this project," but in the interest of the company and project, it is better that you call out loud saying, "this attempt will fail." It is OK to pause, understand, and then go.