Do you require a development firm to build a solution that can be clearly defined based on pre-existing models or do you require a development firm to craft a solution to a pre-existing problem for which there is no known solution that meets all of your needs?
Occasionally, we come across projects that are so small in scope that one person can reasonably hold the entirety of the solution in mind at one time. In this rare case, one person has a good idea of what tasks need to be executed, how long it will take and what it will cost.
Most of the time, the problems we are asked to solve can be clearly defined in the beginning though the solution to these problems are not yet clear. The solution is something that will need to be invented. A group of professionals from various disciplines will need to collaborate to craft a solution.
When these types of projects go poorly it is usually because they are treated as if an end solution already exists. It is easy to presuppose that labor, time and money are already known in advance. In a situation where a solution will need to be invented, it is not reasonable to expect that any one person can know what the project will cost or require in hours of labor. That is because there is no comprehensive solution on which to base time and money.
That isn’t to say that money and/or time can’t be criteria for a complex project. Instead of the development firm providing a time and money quote (for which there is no existing solution to base it on) it may make more sense for the client to dictate what the budget and time constraints will be for the project. The development team will need to work within these parameters as they craft a solution. The client will need to understand that less time and money means less available resources in crafting a solution.
This can be a difficult concept for clients to swallow. Business owners and managers like to get quotes from various vendors and pit them against each other. The problem with this is that it presupposes that a solution exists and it presupposes that the development team is being hired to merely assemble the parts. In reality, the stakeholders should understand that they are not hiring a development firm to merely assemble parts based on a predefined solution. The real value of the development firm is the inventing of an effective and elegant solution based on project criteria.