We have many Cost Estimation methods to estimate the cost of our project. Here we will be seeing these things:
COCOMO model:
Cocomo (Constructive Cost Model) is a regression model. It is a procedural cost estimate model for software projects and is often used as a process of reliably predicting the various parameters associated with making a project such as size, effort, cost, time and quality.
It talks about two important things that are Effort and Schedule. The Effort is related to how many people or say labour is required by you to complete the task and the Schedule talks about the time is needed in the completion of the project.
COCOMO model can be categorized into three models:
Basic:
It can be used for small projects and when the team is small. It will provide you with transparency in the result.
Intermediate:
It assesses software development effort as a function of program size and a set of cost drivers, which include a subjective assessment of goods, hardware, employees, and project characteristics.
Detailed:
It is designed for large-scale projects. The cost drivers are determined by requirements, analysis, design, testing, and maintenance as per the software requirements. The team is rather big. It includes one important thing others don’t and that is the evaluation of the cost drivers at every phase of the project.
COCOMO-II:
It is the revised version of the original Cocomo (Constructive Cost Model) and is developed at the University of Southern California. It is the model that allows one to estimate the cost, effort and schedule when planning new software development.
It has three main sub-models namely end-user programming, Intermediate sector, and Infrastructure sector. It is a three-stage process.
Top-Down Estimation:
Macro Model is another name for top-down estimation. The overall cost estimate for the project is obtained from the global attributes of the software project using the top-down estimating approach, and then the project is partitioned into several low-level mechanisms or components. The Putnam model is the most popular technique that employs this strategy. When only global attributes are known, this technique is better appropriate for an early cost estimate. Because there is no precise information accessible in the early stages of software development, it is quite valuable.
Bottom-Up Method of Estimation:
The cost of each software component is calculated using the bottom-up estimating approach, and the findings are then combined to arrive at an estimated cost of the total project. Its goal is to build a system estimate using the information gathered about minor software components and their interactions. COCOMO’s detailed model is the most popular technique that employs this methodology.
Analogy-based estimation:
Estimating by analogy is comparing the planned project to a comparable project that has already been completed and where the project development information is available. To estimate the planned project, actual data from completed projects is extrapolated. This strategy may be used at both the system and component levels. The following are the stages for estimating using this method
Learn about the proposed project’s qualities.
Choose the most comparable completed projects from the historical database based on their qualities.
By analogy, calculate the cost of the proposed project using the cost of the most comparable completed project.
Top-Down Estimation:
The Macro version is any other call for top-down estimation. The overall cost estimate for the challenge is acquired from the global attributes of the software venture using the pinnacle-down estimating approach, after which the challenge is partitioned into numerous low-stage mechanisms or additives. The Putnam version is the most popular approach that employs this strategy. when simplest global attributes are acknowledged, this technique is better appropriate for an early cost estimate. due to the fact, that there are no unique facts accessible in the early tiers of software program improvement, it’s miles quite precious.
The following are the main parameters on which the cost estimation of the for a software development project:
Travel and training costs
Travelling costs includes the expenditure you are having in travelling from one place to another for the research and the other things as well. You need to travel for the meeting, research and get the hardware and the software requirements fulfilled.
Training expenses should also be taken into account to train the team to get a certain skill that they don,t know already but needed in your project. Training also means that you are investing in the skills of a person so that you can cash in that in future.
Hardware and software costs:
Hardware requirements cover the large chunks of the cost in the software development process. You need many things that you already have and some things that you need to spend on. Some software demand the specific requirements of the systems and you may need to upgrade it and spend money on it.
For a large team, we need a large number of hardware so that every team member can work at the same time and develop their part of the software and reduced the time needed to complete the software.
There are many paid software that a team need to develop the required software and you need to buy it by paying a cost for it. Multiple software will be needed for accomplishing the tasks. Paid software can be used for designing purposes, animation purposes, and simulation purposes.
Effort costs:
It includes many things that are listed below:–
It includes the salaries of each team person.
It includes the rent or the buying out of a workspace.
It also includes the maintainability of the workspace, hardware and machines.
It might include insurance for the employee, or any kinda bonus or pension.
It can include some unknown expenditures that may come to notice during the process.
Algorithmic Code Modelling:
A formulaic approach based on historical cost Information and which is generally based on the size of the software.
Expert Judgement:
One or more experts in both software development and the application domain use their experience to predict software costs. Process iterates until some consensus is
reached.
Estimation by Analogy:
The cost of a project is computed by comparing the project to a similar project in the same application domain.
Parkinson’s Law:
Parkinson’s Law states that work expands to fill the time available. The cost is determined by available resources rather than by an objective statements.
Example: Project should be delivered in 12 months and 5 people are available. Effort = 60 p/m
Top down approach: Also called as the Macro model, the top down approach initiates with coming down to every major detail related to the software product or project. Thereafter, the product/project is divided into components belonging to lower levels.The product of the costs incurred and the number of tasks involved is calculated to get to the final figure for the total labour costs incurred in the project.
Bottom up approach:In this method, the project managers add on to their costs upwards initiating from the lowermost levels. The process is time consuming as every possible expense be it labour related or equipment based is added up starting from the foundation levels. This approach is well suited to large multi faceted projects.
We have many Cost Estimation methods to estimate the cost of our project. Here we will be seeing these things:
COCOMO model:
Cocomo (Constructive Cost Model) is a regression model. It is a procedural cost estimate model for software projects and is often used as a process of reliably predicting the various parameters associated with making a project such as size, effort, cost, time and quality.
It talks about two important things that are Effort and Schedule. The Effort is related to how many people or say labour is required by you to complete the task and the Schedule talks about the time is needed in the completion of the project.
COCOMO model can be categorized into three models:
It can be used for small projects and when the team is small. It will provide you with transparency in the result.
It assesses software development effort as a function of program size and a set of cost drivers, which include a subjective assessment of goods, hardware, employees, and project characteristics.
It is designed for large-scale projects. The cost drivers are determined by requirements, analysis, design, testing, and maintenance as per the software requirements. The team is rather big. It includes one important thing others don’t and that is the evaluation of the cost drivers at every phase of the project.
COCOMO-II:
It is the revised version of the original Cocomo (Constructive Cost Model) and is developed at the University of Southern California. It is the model that allows one to estimate the cost, effort and schedule when planning new software development.
It has three main sub-models namely end-user programming, Intermediate sector, and Infrastructure sector. It is a three-stage process.
Top-Down Estimation:
Macro Model is another name for top-down estimation. The overall cost estimate for the project is obtained from the global attributes of the software project using the top-down estimating approach, and then the project is partitioned into several low-level mechanisms or components. The Putnam model is the most popular technique that employs this strategy. When only global attributes are known, this technique is better appropriate for an early cost estimate. Because there is no precise information accessible in the early stages of software development, it is quite valuable.
Bottom-Up Method of Estimation:
The cost of each software component is calculated using the bottom-up estimating approach, and the findings are then combined to arrive at an estimated cost of the total project. Its goal is to build a system estimate using the information gathered about minor software components and their interactions. COCOMO’s detailed model is the most popular technique that employs this methodology.
Analogy-based estimation:
Estimating by analogy is comparing the planned project to a comparable project that has already been completed and where the project development information is available. To estimate the planned project, actual data from completed projects is extrapolated. This strategy may be used at both the system and component levels. The following are the stages for estimating using this method
Learn about the proposed project’s qualities.
Choose the most comparable completed projects from the historical database based on their qualities.
By analogy, calculate the cost of the proposed project using the cost of the most comparable completed project.
Top-Down Estimation:
The Macro version is any other call for top-down estimation. The overall cost estimate for the challenge is acquired from the global attributes of the software venture using the pinnacle-down estimating approach, after which the challenge is partitioned into numerous low-stage mechanisms or additives. The Putnam version is the most popular approach that employs this strategy. when simplest global attributes are acknowledged, this technique is better appropriate for an early cost estimate. due to the fact, that there are no unique facts accessible in the early tiers of software program improvement, it’s miles quite precious.
The following are the main parameters on which the cost estimation of the for a software development project:
Travelling costs includes the expenditure you are having in travelling from one place to another for the research and the other things as well. You need to travel for the meeting, research and get the hardware and the software requirements fulfilled.
Training expenses should also be taken into account to train the team to get a certain skill that they don,t know already but needed in your project. Training also means that you are investing in the skills of a person so that you can cash in that in future.
Hardware requirements cover the large chunks of the cost in the software development process. You need many things that you already have and some things that you need to spend on. Some software demand the specific requirements of the systems and you may need to upgrade it and spend money on it.
For a large team, we need a large number of hardware so that every team member can work at the same time and develop their part of the software and reduced the time needed to complete the software.
There are many paid software that a team need to develop the required software and you need to buy it by paying a cost for it. Multiple software will be needed for accomplishing the tasks. Paid software can be used for designing purposes, animation purposes, and simulation purposes.
It includes many things that are listed below:–
It includes the salaries of each team person.
It includes the rent or the buying out of a workspace.
It also includes the maintainability of the workspace, hardware and machines.
It might include insurance for the employee, or any kinda bonus or pension.
It can include some unknown expenditures that may come to notice during the process.
Algorithmic Code Modelling:
A formulaic approach based on historical cost Information and which is generally based on the size of the software.
Expert Judgement:
One or more experts in both software development and the application domain use their experience to predict software costs. Process iterates until some consensus is
reached.
Estimation by Analogy:
The cost of a project is computed by comparing the project to a similar project in the same application domain.
Parkinson’s Law:
Parkinson’s Law states that work expands to fill the time available. The cost is determined by available resources rather than by an objective statements.
Example: Project should be delivered in 12 months and 5 people are available. Effort = 60 p/m
Top down approach: Also called as the Macro model, the top down approach initiates with coming down to every major detail related to the software product or project. Thereafter, the product/project is divided into components belonging to lower levels.The product of the costs incurred and the number of tasks involved is calculated to get to the final figure for the total labour costs incurred in the project.
Bottom up approach:In this method, the project managers add on to their costs upwards initiating from the lowermost levels. The process is time consuming as every possible expense be it labour related or equipment based is added up starting from the foundation levels. This approach is well suited to large multi faceted projects.