Exploring trends and developments
in project management today.
Why Software Projects Fail and How to Make Them Succeed
Let's start with a worrying statistic. According to the Standish Group in 1995, only 16% of software projects were successful, 53% challenged (that is cost overruns, budget overruns or content deficiencies) and 31% cancelled.
Further, they say the average software project runs 222% late, 189% over budget and delivers only 61% of the specified functions. Evidence suggests little has changed since then.
Failure has become the IT industry norm. So what can we do about it?
A good starting point is by addressing some of the key reasons software projects fail.
Not Enough Time
Often the deadline date is decided before the project starts and is non-negotiable. This results in a headlong rush to get started on the assumption, the sooner you begin coding the sooner you'll finish.
This is almost always the wrong approach. It is important to spend time to create a good design. Not having a good design leads to continuing changes throughout the development phase. When this happens time and budget are consumed at a rapid rate.
Solution: Make time to create a good design. Don't be tempted to jump straight in and begin coding. Assign time to this task and the rest of the project will run much better. It will improve your reputation when you deliver something that fulfils the customers' expectations and works properly first time.
Insufficient Budget
Many projects have a "lowest price most successful candidate" policy, or an unrealistically low budget, not based on the true requirements. When this happens everything slows down. Resources are slow to arrive, or never arrive, corners are cut and quality suffers.
Solution: Be realistic about the budget and make sure it is based on the full requirements. Avoid basing selection of a supplier solely on lowest price. Go with a supplier or team that has a proven track record of delivery within budget.
Poor Communication
There's an old saying, "never assume anything", and this is especially true for software projects. Good communication with the customer, users and especially the development team is important for project success. Does everyone in the team understand you? Do they know exactly what is expected of them or have you assumed they know? Do they communicate well with one another, with users and with other departments?
Solution: Identify potential communication breakdowns now. These can lead to confusion and complications later in the project. Never assume that everyone understands. Take time to create an environment that will bring the project in on time, on budget and to the customers' expectations.
Never Reviewing Project Progress
As a project progresses things change and these changes can have a significant impact. It is important to review progress regularly so challenges can be overcome early, and stakeholders warned of possible delays and changes to the product.
Solution: Set frequent milestones during the project when you can review progress with your team and adjust as necessary to stay on course. Stay close to your team so you understand what is going on, and what challenges they face.
Inadequate Testing
When the pressure to deliver is on, it is often testing that suffers. All the testing is left until the end of the development cycle and only lip service paid to it. Often, the result is a product filled with bugs and an unhappy customer.
Solution: Carryout testing throughout the development life cycle, testing each module or component as it's developed. This leaves just the integration testing to be carried out at the end of the development life cycle.
Testing in the Production Environment
It's surprising how many organisations test products in their production environment. This is a high-risk strategy that can lead to security breaches and release without testing, disrupting the production environment.
Solution: Develop a process for quality assurance and release of new software products. Provide an environment separated from production for testing.
Lack of Quality Assurance
Often in the haste to deliver the software, quality assurance suffers. Documentation is not completed for code changes, the design contains flaws, and implementations can be incomplete. These all lead to rework, lost time and eventually unhappy customers.
Solution: Take time to quality check and document software before it is released.
Not Conforming to Industry Standards
Conforming to industry standards in your software projects can prove effective by ensuring accessibility, portability, usability, robustness and reducing problems now and in the future. Bodies such as the International Organisation for Standardisation (ISO) and World Wide Web Consortium (W3C) have developed open standards that when used are hard to challenge.
Solution: Take time to introduce standards for your projects. Identify what works well and keep doing it and what doesn't, and change it. Review and update your standards regularly.
Next time you run a software project, review this list first and remind yourself what is needed to ensure your success. You'll be surprised at the difference it makes.
Related Articles
Most IT Projects Fail. Will Yours?
Studies on project failure are easy to find and make depressing reading. Gartner studies suggest that 75% of all US IT projects are considered to be failures by those responsible for initiating them. But what do they mean by failure?
Must Project Managers Be Technically Savvy?
Must project managers be technically savvy? This topic always seems to cause quite a stir. While some believe that all you need to manage a project is a PMP certification, others are convinced that you can't successfully manage a software development project unless you truly understand the intricacies of the product.
Eight Easy Steps to Managing Your Website Development
Managing your website development need not cause you sleepless nights providing you learn the secrets of successful project management. Perform the best practices in project management and give your project the best chance of success.
Reducing Risk and Increasing the Probability of Project Success
IT systems are at the heart of modern business and the development of new software applications and maintenance of existing systems are critical to productivity and profitability. Advances in software technology over the last 20 years have allowed progressively more complex business solutions to be created enabling companies to offer their customers exciting new services and products. And yet, software development projects still suffer from similar problems and characteristics, regardless of the technologies being used, that they suffered from more than ten years ago.
21 Ways to Excel at Project Management
The popular project management eBook now fully updated and available as a website for the first time.

Sometimes users find themselves jumping between applications constantly to reference project information, only to find that these apps they spend top dollar for lack efficiency due to lack of integration.
If you look at WORKetc, it combines multiple tools together directly and integrates them, so you can do things like attach items to projects, such as to-dos, invoices, contacts, support cases, calendar events, etc. This helps simplify the collaboration process and make things easier for workers.