Why Do Software Projects Fail: 5 Biggest Reasons
Why do software projects fail is a question with many answers.
Surprising is that the software development industry is one of the fastest-growing industries. According to data from the U.S.Department of Labor, it is also an industry with the fastest-growing job creation. However, that doesn’t prevent more than 50% of projects to fail.
Project Management Institute stated 6 factors to define the successful project. They are:
1. Delivery on time
2. Cost is within budget limits.
3. It matches the design.
4. Customers use it.
5. It meets the funder’s wishes.
6. It fulfilled the goal of the project.
Yet, growth and many successful projects don’t mean there aren’t lots of challenges. Developers worldwide in 2015, claimed that one of the biggest problems in software project management is insufficient documentation.
Other than that, there is also underfunding and dealing with delays. In the next paragraphs, we will approach these problems and answer why most software projects fail.
Short funding
Funding new projects can be challenging, especially if you don’t know where project phases will lead you. Wrong calculation of needed resources and short funding is the first reason why software projects fail.
To start, let’s say that part of the problem is in the nature of software projects. Before you invest in the project, you want to know what value will that project bring. Since a lot of things are changing while working on software projects, sometimes it is difficult to predict the final value. Then, the development team is responsible for the differences between the estimated features and the ones that are made.
Changes in customers’ wishes and unpredictability of some processes result in changes in projects and needed funding. Except for features, teams rarely measure the value. Without knowing the value, it is impossible to know whether the delivered project brought wanted results.
The more information a customer gives in the beginning, the less risk of changes the project will have. When you gather the information, you can check crowdfunding platforms for early stages like Crowdcube, Syndicate room, and many other kinds.
You can also raise a fund on your website using tools like 123 Form Builder. After getting the fundings so as before it, you need to face other reasons for project management fail:
Poorly Documented Requirements
Poorly documented requirements are the reason why you can’t estimate fundings properly. It is also one of the biggest reasons why software projects fail. Over 48% of project management employees cited that poor requirements are reason number one why their project failed.
Software development teams forget why it is important to have written requirements in all project stages. Moreover, there are a lot of bad habits while documenting requirements.
One of the possible reasons for insufficient documentation is the Agile approach. Agile supports more meetings and flexibility instead of big documentation. For some, that sounds like an easy way out of boring documentation.
Since the documentation is both necessary and a struggle, some believe Agile is insufficient.
Why Teams Make Bad Documentation?
To explain where teams fail in documentation requirements, here are three points:
- All team members should read and understand the documentation. In reality, that doesn’t happen often. There is someone who doesn’t read complete documentation or doesn’t understand it.
- The next thing is to continuously update all the changes that happened in progress. To explain, some team members fail to update their part of work in documentation and tasks. Most project managent tools dont provide option for including documentation directly in tasks. That is why updating changes both in documentation and tasks requires effort of finding specific parts of them. Solution for that is JadeALMs feature of automatic syncronisation of updates. Once you update changes in one part, they are updated in all the other parts of your project.
- Third, someone should transfer it to other people included in the project, such as customers and stakeholders. This is one more space to lose the part of information.
To avoid misunderstandings of the documenting process, teams choose to focus on communication instead of formal documentation. Documentation gets even more important when it comes to the size of the project. For bigger projects, it is easier to lose track of the tasks and they also have a bigger percentage of failures.
Source: Gartner Survey
Focus is not on end-user
Another reason why software projects fail is the focus. Companies tend to focus on the product or service, instead of the customer. They work on upgrading the features and efficiency of the product. The tendency to make the best product, they forget who it is for.
In terms of marketing, this approach would be called marketing myopia. In terms of software development, we could say that the developers don’t understand the end-user.
Another thing is that development teams want to deliver as soon as possible. That also does not leave space for continuous improvements in user experience.
Delays of Software Projects
It is not a delay if you change the deadline, right? Jokes aside, delays are one of the most common negative sides of projects. There are many causes of delays in software projects.
One of the reasons for delays might be a change in project scope. If the definition of goals or deliverables changes, the team will need more time to adjust to new priorities. Other things that can change and result in delays are internal and external resources. Technology from the inside or suppliers from the outside while changing can cause overall delay of the project.
Lack of testing
As we mentioned before, developers want to deliver as soon as they can. When they want to shorten the processing time, the first thing to cut is testing. There are three mistakes development teams do with testing:
- There is no test plan or test strategy for the project. The test plan should define the scope, objective, approach, and goals of testing. It should include objectives, estimations, deadlines, and resources. It defines what input to use while testing. Test strategy is a testing approach to software development. It defines how the testing needs should be done.
- Team values improvement over the testing. The goal is to reach a better product. With many feedbacks and bugs, it is difficult to track which features are already tested. The difficulty appears when team members can’t recognize which tasks are essential. As a result that, many tests are overlapping while others stay untested.
- When the deadline is closed and the project still isn’t finished, the team cuts planned tests. Even with a good test plan and organized priorities of testing, the team skips some tests.
That means that features might not work as they were supposed to.
Examples of failed software
Many of the software projects failed in one or more characteristics above. Some of the famous failed software are:
- Qantas – Australia’s national airline quit its project for airplane mechanics. The software solution was so poorly created that they canceled it. The problem appeared because they didn’t ask the mechanics what exactly they needed. As a result, the company spent three extra years making a better solution.
- HealthCare.gov – US government project for buying health insurance at a discounted rate. Soon after launching the website, the site showed dysfunction. Only 1 percent of people were able to purchase. The main reasons for this failure were poor communication and poor stakeholder participation.
- Canada.ca – software whose purpose was to consolidate 1500 websites into a single portal. During the first three years, only 10 000 of 17 million pages were migrated.
- TSB Bank – In April 2018, the upgrade of the software led to a banking outage. After releasing a new system, customers had issues with logging in. Some of the users could access other users’ account details or even report credits. The outage lasted two weeks.
- CareFusion Alaris Pump – software for automation of delivery fluids and medicine to hospital patients had errors. Error caused the pump to delay infusion.
Wrapping up
Failure of software projects can also happen because of the orientation. Software development teams are oriented to the present instead of the future. Some big names such as Nokia, Kodak, and HMT experienced the same scenario. They didn’t lack the quality of process but the orientation.
If you are oriented to the present, when you develop the product, release it and increase the sales, it will already be 10 years behind the market. You should know your SWOT analysis well and focus on the future of market needs. Let us know how did it go.