Every web development requires an accurate quote to identify the scope of the project with a better understanding between client and vendor. The better estimate would lay a stronger ground for the project’s objectives, deadlines, and resource allocation to be met successfully. This project cost estimate also builds a foundation of trust between the client and the vendor with a better planning of project revenue and expenses.
There are certain project techniques and processes which should be considered indirectly in project estimation as these could strengthen the project foundation with a smoother flow of its process. More detailed articles could be deliberated on these components but it suffices here to get a quick understanding of these potentially beneficial techniques and processes on project estimation.
6 steps you should follow
1) Project Requirements Organization
A successful project comes about with an accurate estimate that reflects the depth of understanding of the problem where an apt solution is at hand. This happens only if the project team gathers the essential project requirements with a well-structured organization to prepare the project foundation.
Every project would have its share of challenges which the client wishes to eliminate with a plausible solution. A well-structured business acquisition process promotes greater creativity in better project requirements; and hence, better estimates.
2) Requirements Communication
Once the project requirements are well identified and organized, the vendor could be informed even if the details are not finalized. Different means of communication between client and vendor could be deployed; these include face-to-face, tele-conferencing or Internet options.
Clients could fill out a vendor’s questionnaire which collates the necessary information on the impending project before relevant experienced and qualified designers, business managers and project leaders meet up for further deliberation to determine the actual scope and depth of the project. This would generate better solutions while an appropriate expanded specification document could be formulated.
3) Use Case Diagrams
When the preliminary requirements are on hand, a further detailed processing is to be executed by the skilled analyst to identify and develop missing components. The Use Case component formulates document functional requirements via stick figures and arrows to represent specific interactions with the system.
Such an approach positions the system as a black box that captures functional requirements alone without detailed internal processes. The Use Case could document the adding of a product process to the cart and order placement.
4) Entity Relationship Diagrams
Another dynamic project tool is the Entity Relationship Diagram. This is a conceptual diagram without specific data types or implementation-specific details to represent a generic project idea with potential or possible relations. The ERD contains only the essential planned entities in the project.
5) Mind Maps
Mind maps are excellent in presenting the concept or project using graphical representation that displays precise and concise information and ideas for easy understanding. Major categories are linked to the primary component with each category itemized until all important information is contained on the diagram like a giant spider.
There must be a balance between how much detail to be included and keeping the graph simple to be clear. Mind maps have proven to be highly effective in collating important requirements from various channels including RFP, ERDs, Use-Cases, email strings, meeting reports and even task management services.
This mode of data collation captures both the functional and non-functional requirements which refer to processes and usability respectively.
Below is a sample mind map of a simple shopping cart project:
XMind proves to be a highly popular mind map editor which is readily available to users for free.
6) Estimation Task
With these requirement documents available, the project analyst could now proceed with the project estimation. A preferred approach is to divide the work scope into clear categories with every department leader working out their estimate portion.
Hence, the project structure and design could be estimated by the appointed design team while prototyping could be estimated by an architect. Every category would identify its relevant work volume with sub-tasks identified where each subtask submits initial requirement documents to minimize discrepancies that formulate the final document.
The final estimate is usually reviewed by a trained and skilled analyst who may include time estimates for project management, Q/A, trials and testing as well as other supporting activities.
Some useful estimating tips should be considered for the best of project estimation.
5 tips for best project estimation
1) Experience-based estimation
Good estimates could be procured through experience as many website projects include similar components such as login, mailing, storage, signup forms, user management and image processing services. The experienced analyst could reuse successful past estimations on new tasks, but caution must be exercised over the development of the actual cost based on the estimated cost at the end of the day for an accurate evaluation.
2) Rounded Values per Task
An estimate need not be precise as it is merely an evaluation of the end in mind. This would eliminate unnecessary effort on estimating small time spans that take hours of elaboration without the desired results.
Cases as in using Agile on numbering matches, various sets or patterns could generate different lists of numbers which could reduce estimate inaccuracy, but there is no urgency to be precise to the minute or half-hour. Microsoft applies such rounded values through its half-days and full-days in its process of evaluation.
3) Fixed Percentage Applied to Q/A and Project Management
Some project evaluations could readily be determined empirically. It could be easy to estimate the project cost when these are manipulated appropriately as in a project management component that commonly enjoys 10%-20% of the total estimate.
The exact percentage depends on the negotiation powers of the client and the vendor.
4) Capped-hour Buckets
A big project is expected to lock in more effort on every involved task with a higher estimate. It is better to break down the big component into smaller portions to ensure a complete covering of every task required in the success of the project.
5) Evaluation Refining
A feature could be deemed too basic to be included in the project estimation, but more of these seemingly negligible costs could amount to a great value that could disadvantage the vendor. Hence, these basic features could be enhanced with appropriate layers of complexity to warrant their cost estimation in the overall project cost.
It may take a couple of hours to send out a contact-us form by a client from the site, but added features could be included to enhance that service feature to allow a higher cost estimate. The added feature to the basic feature could be options to direct the contact-us form to the specific department for a quicker response and action to the message. It is viable to add on that extra cost as extra service is rendered to benefit the client.
More time could be added with options to search the database or saving newfound information to the database. The design could be improved with a more dynamic admin panel or user interface that would satisfy the client who would be willing to pay for such services. The vendor would also be happy to earn more with extra features added on to a seemingly trivial task which should not be overlooked.
However, such an approach should be cautiously applied where the estimate should not depend on the best of scenarios as Murphy’s Law applies. It is common for every project to go wayward regardless of the detailed planning activated. With software engineering still evolving, it is rare for any project to operate smoothly from start to finish; even with estimations.
Skilled and competent analysts could offer close predictions with possibly some bumps or challenges along the way. When these are foreseen, the project team is already on the alert to switch gear for continuity with minimal disruption to cost, time and effort as well as desired results.
An estimate on a project only serves to provide a possible cost to be incurred even before the project takes off. There may not be sufficient information or documentation to define the full project scope 100% or even precisely; hence, the estimate or quote outcome is not represented by a mere figure in terms of time or money.
A good project estimate is often presented in a range between the best and worst scenarios as boundaries. The initial estimate of the project usually depends on its complexity and its depth of details required. This brings on a rough order of magnitude (ROM) variance between 25 and 50%. Hence, a wide range of estimates could be quoted for a project, but the figure should reflect the well-defined project requirements with the number of unknowns possible in the system such as 3rd-party integrations and services.
One of the better techniques in defining the project scope without committing fully to the project is wireframing. With an available initial estimate, the vendor could activate the wireframing stage. The highly detailed project scope’s graphic representation at this point could be easily interpreted by all involved teams with the analyst re-evaluating the estimation where necessary using a variance between 15 and 25%.
Different percentages may apply depending on the number of specific components defined in the system. The generated wireframes could now be deployed as the functional specification foundation for a more successful project.
Potential Scope Changes
Wireframing permits changes requested by the client earlier in the project to be accommodated by the vendor. This would result in fewer scope changes during project implementation. Inevitable change requests would be accounted for in proper estimation and separate tracking to be included at the upper boundary of the project estimation when the project completes.
This process is not cast in stone and concrete; relevant adjustments are possible to satisfy the specific particularities of any company. But UBIE could secure more projects which are implemented within the budget; and better customer relations are enhanced with more efficient resource allocation that leads to a more predictable workload and revenue input.