Discovery Projects for Custom Development
A discovery project investigates existing software or a website that allows project managers to offer a more detailed estimate before any coding begins or the requirement analysis phase begins. When there is existing software or a website that we don’t know enough about yet, it’s challenging to make an accurate estimate for the length and cost of a proposed project. This is where a discovery project comes into play. It allows us to better understand how an application or website works first, so we can estimate the work that needs to be done, how long it will take, and how much it might cost.
If we try to estimate a significant software or website update that we don’t know much about, the estimate is just not as accurate as we’d like it to be. We don’t know what the developers will find when they start working and getting into the application’s code. If the software is outdated or has poorly written code, it can be difficult for developers to begin immediately. A discovery project allows developers to give a more accurate estimate.
Sometimes a client has only a portion of an application, and in these cases, we sometimes need to determine any extra pieces or databases it needs. Occasionally, we need to track down these additional items to get the software to work. If we don’t do a discovery project phase before diving into the code, we may not know that we need those things, causing the expected finish date of the project to be pushed back as we track down the missing pieces. We don’t want our clients to become frustrated by changes to the project timeline. Therefore, the discovery phase is beneficial as it helps explain how long an update will take and why thereby providing the client with a clearer understanding of the process.
A discovery project allows developers to give a more accurate estimate. Click to Tweet
A discovery project can take a few days to several weeks, depending on the size of the project. During the discovery process, no coding takes place. Still, the developers are gaining familiarity with the software and a better understanding and breadth of knowledge about the project in its entirety. The knowledge isn’t wasted because it will be used for the proposed tasks and in the future for additional jobs.
A discovery project may conclude with the presentation of a document that outlines how the current software is structured and estimates how long desired tasks might take. Following the discovery project phase, we meet with the client to review the findings and discuss how they would proceed. The discovery project belongs to the client and can be used by Unidev, or any other developers, to work on software development in the future.
The time and money spent on a discovery project are never wasted. Learning how a system works will need to be done anyway. By approving it to be done upfront, clients receive a more accurate estimate of how long the actual project will take so they know what to expect before their custom development project begins.
For more information on development phases, learn about our project management process and customer delivery directors.