Over the years we’ve seen just how important a quality estimate is in the overall success of a custom software project. A good project estimate sets forth realistic expectations for budgeting and timeline milestones, makes plain all risks and assumptions that underpin the success of the solution, and can build the basis for a partnership between clients and solution vendors. A poorly prepared project estimate can cause severe project overruns, delays, and ultimately jeopardizes the underlying value proposition of the solution.
If you are pursuing a custom software project, there are steps you can (and should) take to ensure that you get the best estimate possible, and thus best position your custom software project for success. So whether you are considering your first custom software project – or you’re a seasoned IT Manager – here are five tips for making sure you get a quality estimate for your custom business solution.
When looking for a custom software solution from a vendor you typically begin by discussing what unmet needs you would like to address or what opportunities you want to pursue. This may involve multiple meetings and an exchange of documentation and mockups, part of a process that we call discovery. Depending on the circumstances and the degree of research required, the discovery may either be cost-free or paid. Regardless, the discovery process should result in deliverables such as a statement of work, a detailed features estimate, and a proposed project plan. This will include the expected cost of the project as well as the delivery date, among other things.
An example of an itemized features estimate
The goal of the initial meeting with any solution vendor is to communicate clearly what you want in a proposed custom software project. The best way to do this is to come prepared with a list of requirements or features, mockups, wireframes, and any other material that demonstrate what you are looking to have built. If you don’t have a specific sense of what you want, most solution providers will work with you to translate business objectives or a “product vision” into solid system features that can be itemized in an estimate. However, this process is usually time consuming and often is done in a paid discovery. If you haven’t pursued custom software solutions before, this may result in a cost that is higher than expected. In most cases, presenting materials that clearly communicate what you want in a solution leads to the most cost-effective estimate you can get.
Quality solution providers are likely to have a backlog of work before there is an opening for new projects. If a person capable of approving a project budget does not attend the meetings where features and estimates are discussed, this could lead to delays in getting your solution started. Also, most custom software solutions have multiple ways they can meet business objectives, and often there are a number of cost-value trade-offs involved with different variations of a solution. It is important to have a decision maker available to decide which trade-offs work favorably for your business.
An early objective of a great custom software estimate is to determine whether the proposed solution will meet your budgetary and timeline expectations. The only way to make that determination is to have considered the business value of the solution you are pursuing and to know what budget you have for the opportunity. If there are strict budget or timeline considerations then a solution can often be altered to meet those objectives with acceptable trade-offs.
You may have a vision of what a solution will do once it comes to complete fruition, but there is often an opportunity to begin receiving business value sooner by identifying a subset of the solution that can stand alone to provide value. This involves taking a whole solution and breaking it into phases, where different parts of the solution are worked on and delivered over time. This can be a great way to reduce initial cost, receive value sooner, and reduce the overall risk of the project. Sometimes this may involve some trade-offs where, for example, you build a website that focuses on the customer experience but has minimally-functional administrative and reporting features. After the first phase of the solution is delivered, the next phase would then focus on improving the usability of the remaining features. By phase two, you will have the advantage of knowing what administrative functions are most necessary because they are being used in real-world scenarios, instead of having to speculate. When this plan is communicated upfront to a solution provider special care can be taken to design and build a system that will allow an easy transition from one phase to the next.
Great custom software estimates include a budget for frequent communication between all project stakeholders during the entire duration of the project. This is a key tenet of the Agile Software Methodology, where software is built and reviewed over many short cycles---often around 2 weeks long. This can be a substantial time commitment on your part but is crucial to making sure that the project is aligned with your needs every step of the way. If any of the project stakeholders have restricted availability it’s important to discuss this with the software provider early in the process.
A quality custom software estimate can go a long way in paving the path for a successful custom software solution. The tips above will help to make sure you get the best, most accurate, most cost-effective estimate for your time so you can plan your business around your project’s success.
If you are interested in obtaining an estimate for a custom solution, or would like to discuss whether a custom solution is right for your business needs, fill out the form below – or contact us at 1.866.Pick.ITS.