- Andrew Jack
How to Know When Your Software Project is Headed For Failure
Is your software project headed for trouble? - Introduction to ‘THE CPU SYSTEM’
A software project is like a CPU. It requires an individual to move data around the system; like a Control Unit or a project manager. It requires the eyes of experts to calculate and decide on whether the future of the project would be a success or a total mess; like an Arithmetic Logic Unit (ALU) or the upper management team. Also required is for there to be just the right number of hard-working developers on the job for greater instructions to be carried out; like the Clock pulse of a CPU or the diligent developers; whilst trying to avoid ‘overclocking’ and long-term damage to the CPU, or the software project.
In other terms, a software project needs to be handled with care. They all begin with cheerful, excited faces ready to get down to business, until said ‘business’ drags them and their cheerful, excited faces down. The quiet before the storm. Thus, I have formulated ‘The CPU system’, consisting of three components: communicating, planning and understanding…
COMMUNICATING: EVERYONE DOES IT… SO SHOULD YOU!
The time that you spend on the phone to your project manager, with your colleague or on your computer with your emails open is the time to be honest, complain, seek help, assess your progress- use it! The Talent Conference hosted in 2020 announced the fact of: 97% of employers agreed that soft skills are essential. These soft skills include networking and teamwork which can make or break a software project.
A study held by Joel Basgall in 2017, the CEO of Geneca mentions that 75% of respondents deem that projects are ‘doomed’ initially. This is due to poor communication and overlaps with the notion of poor planning. Finally, Basgall’s survey also reveals that 23% state that they agree with the conclusion of the project. The lack of a project's completion to the 77% of developers ultimately sacrifices the integrity of the company due to the lack of honest communication.
A team with huge personalities is not going to get the job done quick enough, remember, time is money! Your team should not be debating about the white space. Instead, encourage more persuasion than contestation through communication. Encourage your team to be honest with you and also, as a project manager, be honest with the client, communicate your thoughts on the progress and give them updates, these builds trust and assures the client that you are fully immersed into the project.
PLANNING: PLAN FOR PROJECT PERFECTION
According to a survey by Innotas in 2016, 55% of projects failed due to inadequate planning. The problem lay where the staff, time and a lack of budget were not taken into thorough consideration. If you aren’t giving thought to the logistics, you are setting yourself up to lose. Firstly, in terms of staff, according to Joel Basgall’s survey, only 55% of professionals believe that their business objectives are clear to them.
Alongside this is the idea that there is a ‘dominating mind’ within the team who everyone leeches onto for support extracting all the knowledge they can from their colleague. What happens if said ‘dominating mind’ decides to change companies, falls ill or even leaves the company to pursue a career in the arts? The whole project fails, distorts and meets its inevitable doom; in this case the project manager would have more to stress about and then a multiplier effect of other events occur…
Basgall’s survey declares that 80% of professionals spend half of their precious time on rework. Why? Poor planning, a lack of a risk assessment and little to no research on the rapidly changing market. In terms of budget, researching the changes in the market and providing solutions for problems initially using a risk assessment can save both money and time which may allow you to veer away from the path to failure!
UNDERSTANDING: KNOWLEDGE IS POWER
A common mistake companies make is hiring too much. Have you heard of the expression: too many cooks in the kitchen spoil the broth? Firstly, egos and large personalities come into play again, adding stress for the project manager to deal with and less productivity which means that the end goal for your project will most likely not be achieved on time or efficiently and the project will be a complete failure.
Moreover, as a project manager, you have the responsibility to make sure that everyone understands the objectives and requirements of the program. Understand that everyone is human, and everyone wants to be successful in some way, so, motivation and trust in them is key. Understand that you are their leader, and they expect for you to organise, be honest and allow them to be honest with you! Vulnerability can be considered a skill as a lot of people forget that this is important for humans to succeed.
Further, when you are given expert advice, whether you are a developer or a manager, take it and run with it, experts are genuinely trying to help you, they are giving you the formula to success on a silver plate. In addition to this, as a developer, you should limit the complexity of your project as your software may be used by real-life users; the more complex it is to use the less interest a user may have, and thus, a higher chance of failure. Finally, as a company, the most damaging quality of them all would be expecting a light at the end of the tunnel. Life hands you opportunities to be great. Take them! Strive to ignite the spark you wish to see at the end of that tunnel.
CONCLUDING ‘THE CPU SYSTEM’
So, that’s ‘The CPU system’! The CPU is considered to be the brain of a computer and, as mentioned in the beginning, a software project is like a CPU. No matter what position you are in this project, you contribute to being the heart of your organisation. Every company is different, but these facts are consistent through each company. If you feel that your company is headed for failure, just remember that the heart cannot function without the brain, and the brain cannot function without the heart- so, take care of both!
Written by Priya Kainth