It’s no secret that companies are always looking for ways to save money, whether through reduced payroll, increased automation or whatever makes sense given their situation and industry. But regardless of which industry a company is in, there are always projects that need to be done. Having been in IT for nearly 20 years now, I have been involved with and witness to many such projects. With every project it is always the same story, there is a deadline and a budget that the project is not to exceed, which is to be expected. With many of the projects that was accomplished, but there were several projects that did not end that well.
Usually when a project runs over its target date or budget the first thought falls to the people doing the work, e.g. laborers, developers, installers, etc. The natural assumption is that the people tasked with doing the work simply were not able to achieve the goals set for them. And while that is the case in some scenarios, it is certainly not the norm, in my experience. In some cases the issues exist before a project even starts and those are the issues that can cost a company the most.
In my experience, I have found that many projects are bound to exceed dates and/or budget limits due to a lack of understanding of the proposed solution, a lack of communication about the project’s base requirements or failure to identify and include key stakeholders in the preliminary stages. All of these missteps can and have caused projects to miss key details during planning, design and development phases that ultimately extended the life, and by virtue the cost, of those projects.
Take for example a project that from a high level concept seemed very simple so the powers that be determined that this project required only 90 days to complete and on a limited budget. Due to a lack of understanding about the project, the components involved, and various boundaries required to be crossed for this to work the list of stakeholders was not fully identified. The project progressed quickly and all looked to be on track for the work to complete on time. During the development phase developers began asking questions around some of the requirements because their previous projects had additional requirements for similar details. It was at this point that the management team realized that a key stakeholder had not been included so when the question was raised to that individual it sparked a requirements review for the entire project. All development work was suspended for three days while the review was conducted. It didn’t take long to discover that the majority of requirements were incomplete or in some cases just wrong or missing. This took the project back to the initial phase of collecting requirements at which there was no possible way to start over and still make the original deadline. After everything was said and done the 90 day project that management had hoped for ended up being an 18 month project because before developers ever started coding, the requirements were wrong. That mistake of the project stakeholders cost the company over a year in resource allocation and nearly one million dollars in budget.
Too many projects today operate under the banner of “do it quicker, do it cheaper” and while that is certainly a motto I can understand the realization is that its only achievable if the project is built upon a solid foundation. This includes proper planning up front. If your company seeks to bring in assistance from an external resource, like IDMWorks, it is in your best interest to make sure that all, or at least the majority, of your requirements are well defined and that the project timeline is adequate for the amount of work being tasked. Even if you are doing the work in-house the same rules should still apply. In most cases developers are not aware of the inner workings of a company, the various departments thats are required to weigh-in on things like network security, information security, DNS/firewall requirements, etc. so it is up to the management team to identify and include these groups or these processes in a project’s requirements and planning. As a consultant I rarely know the internal processes for a new client so I have to rely on the client to tell me what is needed and to be prepared for such things.
Failure to plan a project correctly can be more costly than a developer not completing work on time and sadly it happens more often than people think.