Estimating The process of forecasting or approximating the time and cost of completing project deliverables. A rough calculation of the value, number, quantity, or extent of something. Types of Estimates Bottom-up (micro) :require more effort to develop & rely upon those who understand the work to estimate specific work activities Top-down (macro) : derived from experience to estimate project duration and total cost. Could be made by a manager with no direct experience of the processes to complete the project. Effort Estimation
Software cost and effort estimation will never be an exact science. There are too many parameters, e.g., human, technical, environmental, and political parameters, that affect the actual estimation making it almost impossible to have considered all cases. Effort Estimation
Resources: Resources are required to carry out any project tasks. They can be people, equipment, facilities, funding, or anything else capable of definition required for the completion of a project activity. Times : Time is the most valuable resource in a project. Every project has a deadline to delivery. Human Skills : Human skills mean the knowledge and the experience of the Team members. They affect to your estimation. For example, a team, whose members have low testing skills, will take more time to finish the project than the one which has high testing skills. Cost: Cost is the project budget . Generally speaking, it means how much money it takes to finish the project. Estimate of What?
List of Software Estimation Techniques Top-down Methods Bottom-up Methods Work Breakdown Structure 3-Point Software Estimation Technique Function Point Analysis Multiplication Method Analogy Method How to estimate?
3-Point Software Estimation Technique
Scoping : ” Project scope is the part of project planning that involves determining and documenting a list of specific project goals, deliverables, features, functions, tasks, deadlines ” You need first to scope the project even if you do not have the full detailed requirements but you can assume some of them. Step 1
Decomposition: B reak your software into smaller components and functions, T his is similar to work breakdown structure but only for the software components not all the working activities for the software . You may also collect different data from the project team or the customer to ensure that you have listed all functionalities. Step 2:
Sizing: In this step the actual estimation will be done for each component alone There are different techniques which you can apply to estimate the effort for tasks but we use 3-Point Software Estimation Technique to calculate total effort. Step 3:
Three-Point estimation is one of the techniques that could be used to estimate a task The simplicity of the Three-point estimation makes it a very useful tool for a Project Manager that who wants to estimate . In three-point estimation, three values are produced initially for every task Three Point Estimation
Let’s see how to use the above three values in the following example . The best case: To complete this task is 120 man-hours (around 15 days). In this case, you have a talented team, they can finish the task in smallest time . The most likely case: T o complete this task is 170 man-hours (around 21 days). This is a normal case, you have enough resource and ability to complete the task. The worst case: To complete this task is 200 man-hours (around 25 days). You need to perform much more work because your team members are not experienced. Three Point Estimation
Three Point Estimation
In the above estimation, you just determine a possible and not a certain value, we must know about the probability that the estimation is correct. You can use the other formula.
In above formula, the SD mean Standard Deviation, this value could give you the information about the probability that the estimation is correct. To complete the task , you need 166.6 ± 13.33 Man-hour (153.33 to 179.99 man-hour)
After initial estimate, you will need at some point to ask for expert opinion for some new functionalities you may not aware off, or for considering a review from your peers that you have done the correct estimation. Just to ensure that you are on the correct path. Expert and Peer Review
This can be considered the final step as you aggregate all the estimations from all components and function. You can go another round across the process until reaching the correct estimate which will be approved by the Project team and the Management as well. Estimation Finalization