Top 7 Reasons Software Projects Fail
Did you know that in a recent study fifty percent of companies had an IT project fail in the last 12 months? Did you know that the failure rate of software projects with budgets over $1M is 50% higher than the failure rate of projects with budgets below $350,000? Or that a Harvard Business Review study found that all but one in six projects had a cost overrun of 200% on average and a schedule overrun of almost 70%?
What’s going on here? Isn’t software development supposed to be more advanced with new tools, technologies and the mass acceptance of the Agile methodology?
According to an HP online survey two-thirds of companies are either pure Agile (16%), leaning Agile (51%) or hybrid (24%). Despite the mass adoption, Agile is different for every company and is not a panacea. One thing Agile doesn’t improve is helping executives with the economics of a software project. It turns out that the same old culprits are still responsible for project failure.
Defining Software Project Failure
I define software project failure as a project that does not achieve its stated business outcomes. Significant cost and time overruns also mean failure if they preclude profitability or miss windows of opportunity. Poor quality, a high cost of maintenance or limiting designs are also considered a failure.
7 Reasons Software Projects Fail
1. Business and Technology Alignment
Based on the definition of failure above, misalignment of technology and business is the number one cause. To achieve desired business outcomes, the business unit(s) must be intimately involved in the process. Projects that have a strong collaboration between the business and the software team ensure greater success.
2. The bigger the project, the greater the risk
With project failure rates fifty percent higher for projects over $1M than projects less than $350k it makes sense to think Minimum Viable Product (MVP) and limit the feature set, integrations and scope and tackle a project in stages if possible.
3. Scope Creep
Yes, we’re still facing issues with scope creep. Somehow, it’s still not apparent that adding more work means a higher cost and longer time. The disconnect ties back to a poor understanding of software economics. The solution for that is highly visible metrics, and transparency built into the development process.
4. Poor software estimates
Software estimates made in the early phase of a project are typically off (under) by a factor of 200 percent. As the project progresses, this error margin begins to tighten. However, for many reasons, there is a tendency to deny the reality. Project leaders are often reluctant to deliver bad news. Project mandates by management are also frequent (making it no longer an estimate).
5. Project Execution Risk
Many factors affect project implementation. Team size, skill sets, familiarity with technologies used, availability of resources due to paid time off, meeting time, holidays and daily fires. Losing 3 or 4 hours a day can set a project back 35-40 percent.
6. Underestimating Data, Quality & Integration Testing
Data quality issues for projects that use existing data sources are notoriously challenging. If the quality of the legacy data varies significantly from the test data, hidden problems may arise late in the project.
Integration testing is potentially an even bigger challenge for projects that have multiple touch points with other systems. The more combinations, the greater the risk, often requiring more time and effort than the development itself. The complexity of multiple environments, subject matter expert availability and validation can sink a project without prior consideration.
7. The hidden overhead of your Software Process
Hidden in your software development and deployment process is one of the most often overlooked project time bombs. Manual builds, QA and deployments are error-prone and burdensome. Not only do the inefficiencies slow the team down daily but the repetitive, mundane tasks are an immense frustration to the team. Automating your environment with Continuous Delivery and Deployment reduces the overhead and improves quality. If automation is not possible, be sure to take the cost into account in your project effort.
Although the advancement of technology, tools and methodologies software has considerably improved the risk of project failure has remained high. Front and center are the same culprits of the past that have plagued the software industry. Your best defense, is still awareness and understanding these seven issues and taking early action to head them off.
Mr. Barbato brings over 35 years of experience in the software and technology industries to Third Wave. He has invested over 20 years in banking and highly regulated environments. He guides Third Wave’s expert team in software development and applying Continuous Delivery Solutions to reduce risk and increase ROI. Follow on twitter: @frankjbarbato