Estimation is an indispensable process of software development. It is a future forecasting of the project cost and project duration and this relates to scope, cost and effort calculation. Proper estimation is essential to plan for calculating productivity matrix, effort distribution and controlling project and planning for testing phase beforehand. Any misinterpretation or poor calculation could result into project delays, it affects the ROI and hence the bottom line. The overall impact would mean shaking the customer’s loyalty and goodwill of the company as a whole.
The science of estimation can never be exact and 100% correct in results. However, the focus and aim of the estimators should be to arrive at the best possible results – the closest and most accurate estimates in quickest time possible. The aim can be met by avoiding chaos, duplicity in estimation and standardizing the estimation process through some technique or tool which could provide crisp and detailed results for analysis.
Non Standard Approaches are not the Best Option
Many companies still rely on estimation through a non-standardized and conventional methodology to make things work and arrive at their final numbers. Although, the process might have developed over time in a continuous fashion out of past project experience, accounting and accommodating unknown variables, risk factors and the prevailing environment for specific application or market, the process cannot be a standard. It might not just be calculation intensive, tough and lengthy, but also it may also risk the chances of high inaccuracy with different analysts arriving at different numbers. Chaos might prevail or re-estimation would be required further delaying the process. The entire task might take 3-6days depending on the scope of the project , or even more if re-estimation is required. A standardized methodology should be adopted by organizations with mature operation model.
Using A Non Standard Approach Has Issues
It is true that sooner or later, rigorous and repeatable processes of estimation undertaken by organizations would result in more or less accurate estimates without a standard technique or tool. But there are issues associated with a non standard estimation technique.
- Different estimators are involved with different level of experience which coupled with bias can undermine the potential of achieving accurate and valid estimates.
- Ad hoc process is complicated as there is absence of a well defined step by step procedure.
- It gets difficult to improve upon the calculated estimate as doubt hovers over the uncertainty surrounding the type of estimation practice which resulted in inaccurate estimates.
- In the absence of a well defined process, it makes it nearly impossible to revisit the steps to assess the efficiency and effectiveness of the path followed for future undertakings.
Standardized Estimation Process
Standardized estimation technique or using a standard tool for estimation helps to establish firm steps. The knowledge of these steps can help the company repeat successes and prevent failures both in present context as well as in future projects.
Inexperience of estimators and bias can be limited through a standardized estimation process thereby increasing estimation integrity. Well defined templates can be used to itemize tasks and ensure that the information gathering is complete and the subsequent analysis follows a well documented and well structured process.
A standardized process/tool can help analyze the effectiveness of the estimates in terms of:
- Accuracy of estimates and whether the final estimates were well within the defined range.
- The tool would help check the effectiveness of the defined range as in whether it was wide enough and could the range be further narrowed and still account for the observed variability.
- Presence of any sources of bias that affected estimates can be ascertained.
- It would help ascertain whether re-estimation was done at the correct timing, if there were too few or too many re-estimates and if the re-estimates were in the right number.
- It could be checked if the estimation process was more elaborate than required and whether it can be done in a quicker way.
- Estimation tools offer high degree of standardization and process oriented structure to the overall estimation technique.
Quick FPA -The estimation tool launched by Intelekit comes in handy here. Capable of accommodating and incorporating all phases of the software life cycle, Quick FPA is based on the software life cycle and uses implementation type as the primary unit for itemizing the most minimal tasks which would trigger the system to generate a response. Hence the standard approach to estimation through this tool is capable of generating highly accurate estimates. The client just needs to accurately account for all their requirements to arrive at most accurate estimates.
The tool allows a thorough breakdown of the software development tasks of the organization as per the phases, allows adjusting complexity levels and adjustments and trade-offs for reuse factor. Thus all tasks and processes follow a step by step approach irrespective of the experience level of the estimator or bias of any kind.
This highly standard software also allows variation in programming languages and application function uniquely as per the environmental setting and cost drivers. Adjustments in estimates can be done depending on the cost drivers.
Daniel D. Galorath, Michael W. Evans.
“Estimation Tools; Organizing the Estimation Process.” Daniel D. Galorath, Michael W. Evans. Software Sizing, Estimation, and Risk Management. Auerbach Publications, 2006. 86.
“Improving Your Standardized Procedure.” McConne, Steve. Software Estimation: Demystifying the Black Art. Dreamtech Press, 2011.