尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
Introduction to
Software Cost
Estimation
How Time
and Effort
Differ
The first questions typically asked by those
looking to have software developed is, “How
long will it take and how much will it cost?”
But from a pure cost standpoint, that answer
is all based on how much effort is required.
To answer the question of How Much Effort?
– we need to make a distinction between
effort and time. Effort is how many hours of
work need to go into a project; Time is how
long something takes from start to finish.
Determining - “How Much Effort?”
• The first part of pricing comes down to how much effort is needed to
achieve the desired outcome. i.e. how many engineers and how many of
their hours per day will be required to get the job done.
• Once we know how much effort a project will take in a perfect world, we
then must consider what circumstances outside of our control may come
into play like
• the ability of a client to dedicate staff to work with the project team for
requirements analysis, design checks and user testing
• what needs to be done to get a cloud-based solution approved
• what is the deployment process?
• These types of issues can exaggerate the difference between effort and
timeline – and the longer the timeline extends, the more project
management effort is needed to keep everything on track.
ESTIMATION
Estimation is the process of finding an estimate, or
approximation, which is a value that can be used
for some purpose even if input data may be
incomplete, uncertain, or unstable. It determines
how much money, effort, resources, and time it will
take to build a specific system or product.
Estimation is based on −
• Past Data/Experience
• Available Documents/Knowledge
• Assumptions
• Identified Risks
The four basic steps in Software Project Estimation
are −
• Estimate the size of the development product.
• Estimate the effort in person-months or
person-hours.
• Estimate the schedule in calendar months.
• Estimate the project cost in agreed currency.
COMMON ATTRIBUTES
ESTIMATION
PROCEDURES
For any new software project, it is necessary to
know how much it will cost to develop and how
much development time will it take. These
estimates are needed before development is
initiated, but how is this done? Several estimation
procedures have been developed and are having
the following attributes in common.
• Project scope must be established in advanced.
• Software metrics are used as a support from
which evaluation is made.
• The project is broken into small PCs which are
estimated individually.
• Used symbol decomposition techniques to
generate project cost and schedule estimates.
• Acquire one or more automated estimation
tools.
WHAT IS THE
SOFTWARE
COST
ESTIMATION?
• Software cost estimation is the process of
predicting the effort required to develop a software
system. It forecast the financial and other resources
needed to complete a project within a defined scope. As
a number of these models rely on a software size
estimate as input, we first provide an overview of
common size metrics. We then highlight the cost
estimation models that have been proposed and used
successfully.
• Cost estimation accounts for each element required
for the project—from materials to labor—
and calculates a total amount that determines a
project's budget.
What is difference between estimating and costing?
Estimating and Costing are closely the same things.
The estimate is defined as the process of calculating or
computing the various quantities and the expected
expenditure to be incurred on a particular work or
project. The estimate gives the probable cost of the
work.
USES OF
COST
ESTIMATION
1. In monitoring the project's progress, one needs to
access whether the project is progressing
according to the procedure and takes corrective
action, if necessary.
2. The purpose of cost estimation is to predict the
quantity, cost, and price of the resources required
to complete a job within the project scope. Cost
estimates are used to bid on new business from
prospective clients and to inform your job and
budget planning process.
3. In project management process, in order to enable
the time, money and work within the scope of
the resources to get the best use of, people
developed many cost estimation method, in order
to try to get a better estimate. Precise software
cost estimate is an indispensable part as an
effectively software management.
Factors of Software Costing
There are 3 main factors that most affect software development effort/pricing:
1. Type of Software Project
2. Size of Software Project
3. Development Team Size
1. Type of Software Project
Depending upon the types of projects, different team makeup and requires a different amount of
development effort that may reflect to determine the final estimate. E.g.
• New Software Development – new software, involving custom development.
• Software Modification – Enhancement of existing software.
• Software Integration – Custom code to add capability or integrate existing software into other
processes.
• Web Development – custom web-based software development
Factors of Software Costing
2. Size of Software Project
The next step is to determine the size of a project. Generally, project sizes fall into the following
categories:
• Small - A small project usually involves minor changes. Typically, things like tweaks to the user
interface or bug fixes that are well defined with a known cause.
• Medium - Projects such as a small mobile application or a web interface to an existing inventory
system would fall into this category. The external requirements for interaction with a client are more
robust than small projects. This might include a few design sessions, weekly check-ins, and milestone
sign-offs.
• Large - Large projects may require integration with multiple systems, have a database component, and
address security and logging features. An underlying framework and a module-based design are
common, taking into consideration scalability and maintainability. The external requirements for
interaction with the client are very robust, i.e daily calls and interactions with technical team members
followed by weekly status calls with higher-level management are standard.
• Enterprise - Enterprise-level projects are almost exclusively built upon an underlying
framework. They have much more rigorous security, logging, and error handling. Data integrity
and security are paramount to these business-critical applications.
Factors of Software Costing
3. Development Team Size (per Project)
Once the project is defined in terms of type and size, the next factor to be
determined is the team size. Every project requires at least 3 roles – a Project
Manager, a Developer, and a QA Tester. However, that does not mean that every
role equates to one team resource. Some resources can fulfill more than one role.
For example, In a small project, a Developer may also fill the role of Tester. In a
small/medium project, the Project Manager may also fulfill the role of Business
Analyst, and so forth. For larger, complex projects – team resources usually fulfill
only one role to effectively move the project forward.
Scheduling and maintaining a dedicated project team is instrumental in
completing the project most efficiently. There is nothing more detrimental to a
project than continually stopping and starting- it can be hard to regain the
momentum to get the project back on track.
Techniques
used in cost
estimation
In project management process, in order
to enable the time, money and work within
the scope of the resources to get the best
use, people developed many cost estimation
method, in order to try to get a better estimate.
Precise software cost estimate is an
indispensable part as an effectively software
management.
There is an abundance of techniques and
models which help in cost estimation in the
software industry. Here's a brief outline of the
various techniques with a mention of their
specialties and limitations.
Methods of Cost
Estimation
1. Algorithmic (Parametric) model
2. Expert Judgment (Expertise
Based)
3. Top - Down
4. Bottom - Up
5. Estimation by Analogy
1. Algorithmic (Parametric) Model
• This software cost estimation technique use the mathematical equations to perform the
software estimation. The mathematical equations are based on historical data or theory. SLOC
(source line of code), function points, and other cost drivers are the inputs. For most
algorithmic model, calibration to the specific software environment can be performed to
improve the estimation. Examples of the parametric models are COCOMO (COnstructive COst
MOdel), COCOMO II, Putnam's software life-cycle model (SLIM).
• Advantages:
• Generate repeatable estimations
• Easy to modify input data
• Easy to refine and customize formulas
• Objectively calibrated to experience
• Disadvantages:
• Unable to deal with exceptional conditions
• Some experience and factors can not be quantified
• Sometimes algorithms may be proprietary
2. Expert Judgement Model
• This technique captures the experience and the knowledge of the estimator who
provides the estimate based on their experience from a similar project to which they
have participated. Examples are the Delphi, Wideband Delphi and Work Breakdown
Structure (WBS).
• Advantages:
• Useful in the absence of quantified, empirical data.
• Can factor in differences between past project experiences and requirements of the
proposed project
• Can factor in impacts caused by new technologies, applications and languages.
• Disadvantages:
• Estimate is only as good expert’s opinion
• Hard to document the factors used by the experts
3. Top-Down Model
• This technique is also called Macro Model, which utilize the global view of the product
and then partitioned into various low level components. Example of this technique is
the Putnam model.
• Advantages:
• Requires minimal project detail
• Usually faster and easier to implement
• Focus on system level activities
• Disadvantages:
• Tend to overlook low level components
• No detailed basis
4. Bottom-Up Model
• The cost of each software components is estimated first and then the results are
combined to derive the final cost estimation for the project. An example is the
COCOMO’s detailed model.
• Advantages:
• More stable
• More detailed
• Allow each software group to hand an estimate
• Disadvantages:
• May overlook system level costs
• More time consuming
5. Estimation by Analogy Model
• This technique utilize the actual data that is extrapolated from a previous
completed project and compare that with the proposed project in the same
application domain to derive the cost estimate.
• Advantages:
• Based on actual project data
• Disadvantages:
• Impossible if no comparable project had been tackled in the past.
• How well does the previous project represent this one
z
1. Algorithmic (parametric) model: A model is developed using historical cost information which relates
some software metric (usually its size) to the project cost.
2. Expert Judgement: This method of cost estimation makes use of the tenure-based project experience
gained by the estimator. All the domain-based knowledge achieved by working in similar projects is
brought to the fore in arriving at an estimated figure. This technique has been found to be very useful
where there is a lack of quantifiable data.
3. Estimation by analogy : In this method, merely uses information and experience gained by a previously
executed project. Using the tool of extrapolation, this data is compared with the information derived
from the proposed project with similar area of expertise, to conclusively arrive at a rough cost
estimate.
4. Top down approach: Also called as the Macro model, this 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. Following this, distinct labour categories are created
relevant for each segregated task. 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.
5. 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.
Techniques used in cost estimation
Cost
Estimation
Models
A model may be static or dynamic. In a static model, a
single variable is taken as a key element for calculating
cost and time. In a dynamic model, all variable are
interdependent, and there is no basic variable.
 Static, Single Variable Models: When a model makes use
of single variables to calculate desired values such as cost,
time, efforts, etc. is said to be a single variable model. The
most common equation is:
C=aLb
Where C = Costs; L= size ; a and b are constants
 The Software Engineering Laboratory established a model
called SEL model, based on data and analysis from previous
cleanroom efforts within the SEL and is tailored to serve as a
guideline in applying the methodology to future production
software efforts. This model is an example of the static, single
variable model.
E=1.4L0.93
DOC=30.4L0.90
D=4.6L0.26
Where E= Efforts (Person Per Month)
DOC=Documentation (Number of Pages)
D = Duration (D, in months)
L = Number of Lines per code
STATIC,
SINGLE
VARIABLE
MODELS
• In some model, several variables are needed to describe the
software development process, and selected equation
combined these variables to give the estimate of time &
cost. These models are called multivariable models.
• WALSTON and FELIX develop the models at IBM provide the
following equation gives a relationship between lines of
source code and effort:
E=5.2L0.91
• In the same manner duration of development is given by
D=4.1L0.36
The productivity index uses 29 variables which are found to
be highly correlated productivity as follows:
Where Wi is the weight factor for the ith variable and
Xi={-1,0,+1} the estimator gives Xi one of the values -1, 0 or
+1 depending on the variable decreases, has no effect or
increases the productivity.
STATIC,
MULTIVARIA
BLE
MODELS
Compare the Walston-Felix Model
with the SEL model on a software
development expected to involve 8
person-years of effort.
1. Calculate the number of lines of
source code that can be produced.
2. Calculate the duration of the
development.
3. Calculate the productivity in
LOC/PY
4. Calculate the average manning
EXAMPLE
STATIC,
MULTIVARIA
BLE
MODELS
SOLUTION
The amount of manpower involved = 8PY=96persons-months
(1) Number of lines of source code can be obtained by reversing equation to give:
Then
L (SEL) = (96/1.4)1⁄0.93=94264 LOC
L (SEL) = (96/5.2)1⁄0.91=24632 LOC
(2) Duration in months can be calculated by means of equation
D (SEL) = 4.6 (L) 0.26
= 4.6 (94.264)0.26 = 15 months
D (W-F) = 4.1 L0.36
= 4.1 (24.632)0.36 = 13 months
SOLUTION
(3) Productivity is the lines of code produced per persons/month (year)
(4) Average manning is the average number of persons required per month in the
project

More Related Content

What's hot

ONLINE SHOPPING SYSTEM -SEPM
ONLINE SHOPPING SYSTEM -SEPMONLINE SHOPPING SYSTEM -SEPM
ONLINE SHOPPING SYSTEM -SEPM
Aantariksh Developers
 
Inventory management system
Inventory management systemInventory management system
Inventory management system
Hamzakhan803
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
Fáber D. Giraldo
 
Web engineering - MVC
Web engineering - MVCWeb engineering - MVC
Web engineering - MVC
Nosheen Qamar
 
Need for Software Engineering
Need for Software EngineeringNeed for Software Engineering
Need for Software Engineering
Upekha Vandebona
 
Library Management System
Library Management SystemLibrary Management System
Library Management System
Martins Okoi
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
Rupesh Vaishnav
 
E-Commerce Project Management
E-Commerce Project ManagementE-Commerce Project Management
E-Commerce Project Management
Janette Toral
 
Quality & Reliability in Software Engineering
Quality & Reliability in Software EngineeringQuality & Reliability in Software Engineering
Quality & Reliability in Software Engineering
SivaRamaSundar Devasubramaniam
 
Spm unit1
Spm unit1Spm unit1
Spm unit1
Naga Dinesh
 
Assumptions, applicable measures, er diagram
Assumptions, applicable measures, er diagramAssumptions, applicable measures, er diagram
Assumptions, applicable measures, er diagram
jandrewsxu
 
Non-functional requirements
Non-functional requirements Non-functional requirements
Non-functional requirements
Rohela Raouf
 
Reconstructing Software Architecture
Reconstructing Software ArchitectureReconstructing Software Architecture
Reconstructing Software Architecture
Himanshu
 
System engineering
System engineeringSystem engineering
System engineering
Lisa Elisa
 
Furniture Management System
Furniture Management SystemFurniture Management System
Furniture Management System
WeTheCoders
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
Dikshyanta Dhungana
 
CMS (CONTENT MANAGEMENT SYSTEM)
CMS (CONTENT MANAGEMENT SYSTEM)CMS (CONTENT MANAGEMENT SYSTEM)
CMS (CONTENT MANAGEMENT SYSTEM)
Aaina Katyal
 
Bank Management System
Bank Management SystemBank Management System
Bank Management System
Vinoth Ratnam Sudalaimuthu
 
Online Library management system proposal by Banuka Dananjaya Subasinghe
Online Library management system proposal by Banuka Dananjaya SubasingheOnline Library management system proposal by Banuka Dananjaya Subasinghe
Online Library management system proposal by Banuka Dananjaya Subasinghe
BanukaSubasinghe
 
Oosd shopping (1)
Oosd shopping (1)Oosd shopping (1)
Oosd shopping (1)
shaj13
 

What's hot (20)

ONLINE SHOPPING SYSTEM -SEPM
ONLINE SHOPPING SYSTEM -SEPMONLINE SHOPPING SYSTEM -SEPM
ONLINE SHOPPING SYSTEM -SEPM
 
Inventory management system
Inventory management systemInventory management system
Inventory management system
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
 
Web engineering - MVC
Web engineering - MVCWeb engineering - MVC
Web engineering - MVC
 
Need for Software Engineering
Need for Software EngineeringNeed for Software Engineering
Need for Software Engineering
 
Library Management System
Library Management SystemLibrary Management System
Library Management System
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
 
E-Commerce Project Management
E-Commerce Project ManagementE-Commerce Project Management
E-Commerce Project Management
 
Quality & Reliability in Software Engineering
Quality & Reliability in Software EngineeringQuality & Reliability in Software Engineering
Quality & Reliability in Software Engineering
 
Spm unit1
Spm unit1Spm unit1
Spm unit1
 
Assumptions, applicable measures, er diagram
Assumptions, applicable measures, er diagramAssumptions, applicable measures, er diagram
Assumptions, applicable measures, er diagram
 
Non-functional requirements
Non-functional requirements Non-functional requirements
Non-functional requirements
 
Reconstructing Software Architecture
Reconstructing Software ArchitectureReconstructing Software Architecture
Reconstructing Software Architecture
 
System engineering
System engineeringSystem engineering
System engineering
 
Furniture Management System
Furniture Management SystemFurniture Management System
Furniture Management System
 
Functional and non functional
Functional and non functionalFunctional and non functional
Functional and non functional
 
CMS (CONTENT MANAGEMENT SYSTEM)
CMS (CONTENT MANAGEMENT SYSTEM)CMS (CONTENT MANAGEMENT SYSTEM)
CMS (CONTENT MANAGEMENT SYSTEM)
 
Bank Management System
Bank Management SystemBank Management System
Bank Management System
 
Online Library management system proposal by Banuka Dananjaya Subasinghe
Online Library management system proposal by Banuka Dananjaya SubasingheOnline Library management system proposal by Banuka Dananjaya Subasinghe
Online Library management system proposal by Banuka Dananjaya Subasinghe
 
Oosd shopping (1)
Oosd shopping (1)Oosd shopping (1)
Oosd shopping (1)
 

Similar to Cost estimation

How to Estimate Software Development Project Cost.pdf
How to Estimate Software Development Project Cost.pdfHow to Estimate Software Development Project Cost.pdf
How to Estimate Software Development Project Cost.pdf
Vrinsoft Technology
 
SE-Lecture-5.pptx
SE-Lecture-5.pptxSE-Lecture-5.pptx
SE-Lecture-5.pptx
vishal choudhary
 
Software
SoftwareSoftware
Software
Parul Gupta
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software Engineering
Muhammad Yousuf Abdul Qadir
 
SWE-401 - 3. Software Project Management
SWE-401 - 3. Software Project ManagementSWE-401 - 3. Software Project Management
SWE-401 - 3. Software Project Management
ghayour abbas
 
A Review of Agile Software Effort Estimation Methods
A Review of Agile Software Effort Estimation MethodsA Review of Agile Software Effort Estimation Methods
A Review of Agile Software Effort Estimation Methods
Editor IJCATR
 
Project Management (2).pdf
Project Management (2).pdfProject Management (2).pdf
Project Management (2).pdf
ShivareddyGangam
 
CH. 5.pdf
CH. 5.pdfCH. 5.pdf
CH. 5.pdf
RajniSavaliya
 
Computing Project
Computing Project Computing Project
Computing Project
Er. Nawaraj Bhandari
 
Guide to Software Estimation
Guide to Software EstimationGuide to Software Estimation
Guide to Software Estimation
Santosh Ramachandran
 
Lect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost EstimationLect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost Estimation
Mubashir Ali
 
Software project scheduling
Software project schedulingSoftware project scheduling
Software project scheduling
lokareminakshi
 
Chapter7 database management system.pptx
Chapter7 database management system.pptxChapter7 database management system.pptx
Chapter7 database management system.pptx
MohammedNouh7
 
Software Metrics, Project Management and Estimation
Software Metrics, Project Management and EstimationSoftware Metrics, Project Management and Estimation
Software Metrics, Project Management and Estimation
Bulbul Agrawal
 
A Pattern-Language-for-software-Development
A Pattern-Language-for-software-DevelopmentA Pattern-Language-for-software-Development
A Pattern-Language-for-software-Development
Shiraz316
 
SE_Lec 12_ Project Planning
SE_Lec 12_ Project PlanningSE_Lec 12_ Project Planning
SE_Lec 12_ Project Planning
Amr E. Mohamed
 
Proj Mgmt.ppt
Proj Mgmt.pptProj Mgmt.ppt
Proj Mgmt.ppt
NikhilDudka
 
SE18_Lec 13_ Project Planning
SE18_Lec 13_ Project PlanningSE18_Lec 13_ Project Planning
SE18_Lec 13_ Project Planning
Amr E. Mohamed
 
5_6134023428304274682.pptx
5_6134023428304274682.pptx5_6134023428304274682.pptx
5_6134023428304274682.pptx
gamingpro22
 
Software_project_managemen t and development of softwares with websites know...
Software_project_managemen t  and development of softwares with websites know...Software_project_managemen t  and development of softwares with websites know...
Software_project_managemen t and development of softwares with websites know...
AnshumanShukla42
 

Similar to Cost estimation (20)

How to Estimate Software Development Project Cost.pdf
How to Estimate Software Development Project Cost.pdfHow to Estimate Software Development Project Cost.pdf
How to Estimate Software Development Project Cost.pdf
 
SE-Lecture-5.pptx
SE-Lecture-5.pptxSE-Lecture-5.pptx
SE-Lecture-5.pptx
 
Software
SoftwareSoftware
Software
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software Engineering
 
SWE-401 - 3. Software Project Management
SWE-401 - 3. Software Project ManagementSWE-401 - 3. Software Project Management
SWE-401 - 3. Software Project Management
 
A Review of Agile Software Effort Estimation Methods
A Review of Agile Software Effort Estimation MethodsA Review of Agile Software Effort Estimation Methods
A Review of Agile Software Effort Estimation Methods
 
Project Management (2).pdf
Project Management (2).pdfProject Management (2).pdf
Project Management (2).pdf
 
CH. 5.pdf
CH. 5.pdfCH. 5.pdf
CH. 5.pdf
 
Computing Project
Computing Project Computing Project
Computing Project
 
Guide to Software Estimation
Guide to Software EstimationGuide to Software Estimation
Guide to Software Estimation
 
Lect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost EstimationLect-5: Work Breakdown Structure and Project Cost Estimation
Lect-5: Work Breakdown Structure and Project Cost Estimation
 
Software project scheduling
Software project schedulingSoftware project scheduling
Software project scheduling
 
Chapter7 database management system.pptx
Chapter7 database management system.pptxChapter7 database management system.pptx
Chapter7 database management system.pptx
 
Software Metrics, Project Management and Estimation
Software Metrics, Project Management and EstimationSoftware Metrics, Project Management and Estimation
Software Metrics, Project Management and Estimation
 
A Pattern-Language-for-software-Development
A Pattern-Language-for-software-DevelopmentA Pattern-Language-for-software-Development
A Pattern-Language-for-software-Development
 
SE_Lec 12_ Project Planning
SE_Lec 12_ Project PlanningSE_Lec 12_ Project Planning
SE_Lec 12_ Project Planning
 
Proj Mgmt.ppt
Proj Mgmt.pptProj Mgmt.ppt
Proj Mgmt.ppt
 
SE18_Lec 13_ Project Planning
SE18_Lec 13_ Project PlanningSE18_Lec 13_ Project Planning
SE18_Lec 13_ Project Planning
 
5_6134023428304274682.pptx
5_6134023428304274682.pptx5_6134023428304274682.pptx
5_6134023428304274682.pptx
 
Software_project_managemen t and development of softwares with websites know...
Software_project_managemen t  and development of softwares with websites know...Software_project_managemen t  and development of softwares with websites know...
Software_project_managemen t and development of softwares with websites know...
 

Recently uploaded

Literature review for prompt engineering of ChatGPT.pptx
Literature review for prompt engineering of ChatGPT.pptxLiterature review for prompt engineering of ChatGPT.pptx
Literature review for prompt engineering of ChatGPT.pptx
LokerXu2
 
SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )
Tsuyoshi Horigome
 
🚺ANJALI MEHTA High Profile Call Girls Ahmedabad 💯Call Us 🔝 9352988975 🔝💃Top C...
🚺ANJALI MEHTA High Profile Call Girls Ahmedabad 💯Call Us 🔝 9352988975 🔝💃Top C...🚺ANJALI MEHTA High Profile Call Girls Ahmedabad 💯Call Us 🔝 9352988975 🔝💃Top C...
🚺ANJALI MEHTA High Profile Call Girls Ahmedabad 💯Call Us 🔝 9352988975 🔝💃Top C...
dulbh kashyap
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
gapboxn
 
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
IJCNCJournal
 
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
sonamrawat5631
 
AN INTRODUCTION OF AI & SEARCHING TECHIQUES
AN INTRODUCTION OF AI & SEARCHING TECHIQUESAN INTRODUCTION OF AI & SEARCHING TECHIQUES
AN INTRODUCTION OF AI & SEARCHING TECHIQUES
drshikhapandey2022
 
Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine, Issue 49 / Spring 2024Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine
 
Call Girls Goa (india) ☎️ +91-7426014248 Goa Call Girl
Call Girls Goa (india) ☎️ +91-7426014248 Goa Call GirlCall Girls Goa (india) ☎️ +91-7426014248 Goa Call Girl
Call Girls Goa (india) ☎️ +91-7426014248 Goa Call Girl
sapna sharmap11
 
Call Girls Nagpur 8824825030 Escort In Nagpur service 24X7
Call Girls Nagpur 8824825030 Escort In Nagpur service 24X7Call Girls Nagpur 8824825030 Escort In Nagpur service 24X7
Call Girls Nagpur 8824825030 Escort In Nagpur service 24X7
sexytaniya455
 
Basic principle and types Static Relays ppt
Basic principle and  types  Static Relays pptBasic principle and  types  Static Relays ppt
Basic principle and types Static Relays ppt
Sri Ramakrishna Institute of Technology
 
Call Girls Chandigarh 🔥 7014168258 🔥 Real Fun With Sexual Girl Available 24/7...
Call Girls Chandigarh 🔥 7014168258 🔥 Real Fun With Sexual Girl Available 24/7...Call Girls Chandigarh 🔥 7014168258 🔥 Real Fun With Sexual Girl Available 24/7...
Call Girls Chandigarh 🔥 7014168258 🔥 Real Fun With Sexual Girl Available 24/7...
shourabjaat424
 
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdfFUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
EMERSON EDUARDO RODRIGUES
 
🔥 Hyderabad Call Girls  👉 9352988975 👫 High Profile Call Girls Whatsapp Numbe...
🔥 Hyderabad Call Girls  👉 9352988975 👫 High Profile Call Girls Whatsapp Numbe...🔥 Hyderabad Call Girls  👉 9352988975 👫 High Profile Call Girls Whatsapp Numbe...
🔥 Hyderabad Call Girls  👉 9352988975 👫 High Profile Call Girls Whatsapp Numbe...
aarusi sexy model
 
An In-Depth Exploration of Natural Language Processing: Evolution, Applicatio...
An In-Depth Exploration of Natural Language Processing: Evolution, Applicatio...An In-Depth Exploration of Natural Language Processing: Evolution, Applicatio...
An In-Depth Exploration of Natural Language Processing: Evolution, Applicatio...
DharmaBanothu
 
Technological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdfTechnological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdf
tanujaharish2
 
CSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdfCSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdf
Ismail Sultan
 
Sri Guru Hargobind Ji - Bandi Chor Guru.pdf
Sri Guru Hargobind Ji - Bandi Chor Guru.pdfSri Guru Hargobind Ji - Bandi Chor Guru.pdf
Sri Guru Hargobind Ji - Bandi Chor Guru.pdf
Balvir Singh
 
Microsoft Azure AD architecture and features
Microsoft Azure AD architecture and featuresMicrosoft Azure AD architecture and features
Microsoft Azure AD architecture and features
ssuser381403
 
Update 40 models( Solar Cell ) in SPICE PARK(JUL2024)
Update 40 models( Solar Cell ) in SPICE PARK(JUL2024)Update 40 models( Solar Cell ) in SPICE PARK(JUL2024)
Update 40 models( Solar Cell ) in SPICE PARK(JUL2024)
Tsuyoshi Horigome
 

Recently uploaded (20)

Literature review for prompt engineering of ChatGPT.pptx
Literature review for prompt engineering of ChatGPT.pptxLiterature review for prompt engineering of ChatGPT.pptx
Literature review for prompt engineering of ChatGPT.pptx
 
SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )SPICE PARK JUL2024 ( 6,866 SPICE Models )
SPICE PARK JUL2024 ( 6,866 SPICE Models )
 
🚺ANJALI MEHTA High Profile Call Girls Ahmedabad 💯Call Us 🔝 9352988975 🔝💃Top C...
🚺ANJALI MEHTA High Profile Call Girls Ahmedabad 💯Call Us 🔝 9352988975 🔝💃Top C...🚺ANJALI MEHTA High Profile Call Girls Ahmedabad 💯Call Us 🔝 9352988975 🔝💃Top C...
🚺ANJALI MEHTA High Profile Call Girls Ahmedabad 💯Call Us 🔝 9352988975 🔝💃Top C...
 
一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理一比一原版(UO毕业证)渥太华大学毕业证如何办理
一比一原版(UO毕业证)渥太华大学毕业证如何办理
 
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
Particle Swarm Optimization–Long Short-Term Memory based Channel Estimation w...
 
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
🔥Young College Call Girls Chandigarh 💯Call Us 🔝 7737669865 🔝💃Independent Chan...
 
AN INTRODUCTION OF AI & SEARCHING TECHIQUES
AN INTRODUCTION OF AI & SEARCHING TECHIQUESAN INTRODUCTION OF AI & SEARCHING TECHIQUES
AN INTRODUCTION OF AI & SEARCHING TECHIQUES
 
Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine, Issue 49 / Spring 2024Better Builder Magazine, Issue 49 / Spring 2024
Better Builder Magazine, Issue 49 / Spring 2024
 
Call Girls Goa (india) ☎️ +91-7426014248 Goa Call Girl
Call Girls Goa (india) ☎️ +91-7426014248 Goa Call GirlCall Girls Goa (india) ☎️ +91-7426014248 Goa Call Girl
Call Girls Goa (india) ☎️ +91-7426014248 Goa Call Girl
 
Call Girls Nagpur 8824825030 Escort In Nagpur service 24X7
Call Girls Nagpur 8824825030 Escort In Nagpur service 24X7Call Girls Nagpur 8824825030 Escort In Nagpur service 24X7
Call Girls Nagpur 8824825030 Escort In Nagpur service 24X7
 
Basic principle and types Static Relays ppt
Basic principle and  types  Static Relays pptBasic principle and  types  Static Relays ppt
Basic principle and types Static Relays ppt
 
Call Girls Chandigarh 🔥 7014168258 🔥 Real Fun With Sexual Girl Available 24/7...
Call Girls Chandigarh 🔥 7014168258 🔥 Real Fun With Sexual Girl Available 24/7...Call Girls Chandigarh 🔥 7014168258 🔥 Real Fun With Sexual Girl Available 24/7...
Call Girls Chandigarh 🔥 7014168258 🔥 Real Fun With Sexual Girl Available 24/7...
 
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdfFUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
FUNDAMENTALS OF MECHANICAL ENGINEERING.pdf
 
🔥 Hyderabad Call Girls  👉 9352988975 👫 High Profile Call Girls Whatsapp Numbe...
🔥 Hyderabad Call Girls  👉 9352988975 👫 High Profile Call Girls Whatsapp Numbe...🔥 Hyderabad Call Girls  👉 9352988975 👫 High Profile Call Girls Whatsapp Numbe...
🔥 Hyderabad Call Girls  👉 9352988975 👫 High Profile Call Girls Whatsapp Numbe...
 
An In-Depth Exploration of Natural Language Processing: Evolution, Applicatio...
An In-Depth Exploration of Natural Language Processing: Evolution, Applicatio...An In-Depth Exploration of Natural Language Processing: Evolution, Applicatio...
An In-Depth Exploration of Natural Language Processing: Evolution, Applicatio...
 
Technological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdfTechnological Innovation Management And Entrepreneurship-1.pdf
Technological Innovation Management And Entrepreneurship-1.pdf
 
CSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdfCSP_Study - Notes (Paul McNeill) 2017.pdf
CSP_Study - Notes (Paul McNeill) 2017.pdf
 
Sri Guru Hargobind Ji - Bandi Chor Guru.pdf
Sri Guru Hargobind Ji - Bandi Chor Guru.pdfSri Guru Hargobind Ji - Bandi Chor Guru.pdf
Sri Guru Hargobind Ji - Bandi Chor Guru.pdf
 
Microsoft Azure AD architecture and features
Microsoft Azure AD architecture and featuresMicrosoft Azure AD architecture and features
Microsoft Azure AD architecture and features
 
Update 40 models( Solar Cell ) in SPICE PARK(JUL2024)
Update 40 models( Solar Cell ) in SPICE PARK(JUL2024)Update 40 models( Solar Cell ) in SPICE PARK(JUL2024)
Update 40 models( Solar Cell ) in SPICE PARK(JUL2024)
 

Cost estimation

  • 2. How Time and Effort Differ The first questions typically asked by those looking to have software developed is, “How long will it take and how much will it cost?” But from a pure cost standpoint, that answer is all based on how much effort is required. To answer the question of How Much Effort? – we need to make a distinction between effort and time. Effort is how many hours of work need to go into a project; Time is how long something takes from start to finish.
  • 3. Determining - “How Much Effort?” • The first part of pricing comes down to how much effort is needed to achieve the desired outcome. i.e. how many engineers and how many of their hours per day will be required to get the job done. • Once we know how much effort a project will take in a perfect world, we then must consider what circumstances outside of our control may come into play like • the ability of a client to dedicate staff to work with the project team for requirements analysis, design checks and user testing • what needs to be done to get a cloud-based solution approved • what is the deployment process? • These types of issues can exaggerate the difference between effort and timeline – and the longer the timeline extends, the more project management effort is needed to keep everything on track.
  • 4. ESTIMATION Estimation is the process of finding an estimate, or approximation, which is a value that can be used for some purpose even if input data may be incomplete, uncertain, or unstable. It determines how much money, effort, resources, and time it will take to build a specific system or product. Estimation is based on − • Past Data/Experience • Available Documents/Knowledge • Assumptions • Identified Risks The four basic steps in Software Project Estimation are − • Estimate the size of the development product. • Estimate the effort in person-months or person-hours. • Estimate the schedule in calendar months. • Estimate the project cost in agreed currency.
  • 5. COMMON ATTRIBUTES ESTIMATION PROCEDURES For any new software project, it is necessary to know how much it will cost to develop and how much development time will it take. These estimates are needed before development is initiated, but how is this done? Several estimation procedures have been developed and are having the following attributes in common. • Project scope must be established in advanced. • Software metrics are used as a support from which evaluation is made. • The project is broken into small PCs which are estimated individually. • Used symbol decomposition techniques to generate project cost and schedule estimates. • Acquire one or more automated estimation tools.
  • 6. WHAT IS THE SOFTWARE COST ESTIMATION? • Software cost estimation is the process of predicting the effort required to develop a software system. It forecast the financial and other resources needed to complete a project within a defined scope. As a number of these models rely on a software size estimate as input, we first provide an overview of common size metrics. We then highlight the cost estimation models that have been proposed and used successfully. • Cost estimation accounts for each element required for the project—from materials to labor— and calculates a total amount that determines a project's budget. What is difference between estimating and costing? Estimating and Costing are closely the same things. The estimate is defined as the process of calculating or computing the various quantities and the expected expenditure to be incurred on a particular work or project. The estimate gives the probable cost of the work.
  • 7. USES OF COST ESTIMATION 1. In monitoring the project's progress, one needs to access whether the project is progressing according to the procedure and takes corrective action, if necessary. 2. The purpose of cost estimation is to predict the quantity, cost, and price of the resources required to complete a job within the project scope. Cost estimates are used to bid on new business from prospective clients and to inform your job and budget planning process. 3. In project management process, in order to enable the time, money and work within the scope of the resources to get the best use of, people developed many cost estimation method, in order to try to get a better estimate. Precise software cost estimate is an indispensable part as an effectively software management.
  • 8. Factors of Software Costing There are 3 main factors that most affect software development effort/pricing: 1. Type of Software Project 2. Size of Software Project 3. Development Team Size 1. Type of Software Project Depending upon the types of projects, different team makeup and requires a different amount of development effort that may reflect to determine the final estimate. E.g. • New Software Development – new software, involving custom development. • Software Modification – Enhancement of existing software. • Software Integration – Custom code to add capability or integrate existing software into other processes. • Web Development – custom web-based software development
  • 9. Factors of Software Costing 2. Size of Software Project The next step is to determine the size of a project. Generally, project sizes fall into the following categories: • Small - A small project usually involves minor changes. Typically, things like tweaks to the user interface or bug fixes that are well defined with a known cause. • Medium - Projects such as a small mobile application or a web interface to an existing inventory system would fall into this category. The external requirements for interaction with a client are more robust than small projects. This might include a few design sessions, weekly check-ins, and milestone sign-offs. • Large - Large projects may require integration with multiple systems, have a database component, and address security and logging features. An underlying framework and a module-based design are common, taking into consideration scalability and maintainability. The external requirements for interaction with the client are very robust, i.e daily calls and interactions with technical team members followed by weekly status calls with higher-level management are standard. • Enterprise - Enterprise-level projects are almost exclusively built upon an underlying framework. They have much more rigorous security, logging, and error handling. Data integrity and security are paramount to these business-critical applications.
  • 10. Factors of Software Costing 3. Development Team Size (per Project) Once the project is defined in terms of type and size, the next factor to be determined is the team size. Every project requires at least 3 roles – a Project Manager, a Developer, and a QA Tester. However, that does not mean that every role equates to one team resource. Some resources can fulfill more than one role. For example, In a small project, a Developer may also fill the role of Tester. In a small/medium project, the Project Manager may also fulfill the role of Business Analyst, and so forth. For larger, complex projects – team resources usually fulfill only one role to effectively move the project forward. Scheduling and maintaining a dedicated project team is instrumental in completing the project most efficiently. There is nothing more detrimental to a project than continually stopping and starting- it can be hard to regain the momentum to get the project back on track.
  • 11. Techniques used in cost estimation In project management process, in order to enable the time, money and work within the scope of the resources to get the best use, people developed many cost estimation method, in order to try to get a better estimate. Precise software cost estimate is an indispensable part as an effectively software management. There is an abundance of techniques and models which help in cost estimation in the software industry. Here's a brief outline of the various techniques with a mention of their specialties and limitations.
  • 12. Methods of Cost Estimation 1. Algorithmic (Parametric) model 2. Expert Judgment (Expertise Based) 3. Top - Down 4. Bottom - Up 5. Estimation by Analogy
  • 13. 1. Algorithmic (Parametric) Model • This software cost estimation technique use the mathematical equations to perform the software estimation. The mathematical equations are based on historical data or theory. SLOC (source line of code), function points, and other cost drivers are the inputs. For most algorithmic model, calibration to the specific software environment can be performed to improve the estimation. Examples of the parametric models are COCOMO (COnstructive COst MOdel), COCOMO II, Putnam's software life-cycle model (SLIM). • Advantages: • Generate repeatable estimations • Easy to modify input data • Easy to refine and customize formulas • Objectively calibrated to experience • Disadvantages: • Unable to deal with exceptional conditions • Some experience and factors can not be quantified • Sometimes algorithms may be proprietary
  • 14. 2. Expert Judgement Model • This technique captures the experience and the knowledge of the estimator who provides the estimate based on their experience from a similar project to which they have participated. Examples are the Delphi, Wideband Delphi and Work Breakdown Structure (WBS). • Advantages: • Useful in the absence of quantified, empirical data. • Can factor in differences between past project experiences and requirements of the proposed project • Can factor in impacts caused by new technologies, applications and languages. • Disadvantages: • Estimate is only as good expert’s opinion • Hard to document the factors used by the experts
  • 15. 3. Top-Down Model • This technique is also called Macro Model, which utilize the global view of the product and then partitioned into various low level components. Example of this technique is the Putnam model. • Advantages: • Requires minimal project detail • Usually faster and easier to implement • Focus on system level activities • Disadvantages: • Tend to overlook low level components • No detailed basis
  • 16. 4. Bottom-Up Model • The cost of each software components is estimated first and then the results are combined to derive the final cost estimation for the project. An example is the COCOMO’s detailed model. • Advantages: • More stable • More detailed • Allow each software group to hand an estimate • Disadvantages: • May overlook system level costs • More time consuming
  • 17. 5. Estimation by Analogy Model • This technique utilize the actual data that is extrapolated from a previous completed project and compare that with the proposed project in the same application domain to derive the cost estimate. • Advantages: • Based on actual project data • Disadvantages: • Impossible if no comparable project had been tackled in the past. • How well does the previous project represent this one
  • 18. z 1. Algorithmic (parametric) model: A model is developed using historical cost information which relates some software metric (usually its size) to the project cost. 2. Expert Judgement: This method of cost estimation makes use of the tenure-based project experience gained by the estimator. All the domain-based knowledge achieved by working in similar projects is brought to the fore in arriving at an estimated figure. This technique has been found to be very useful where there is a lack of quantifiable data. 3. Estimation by analogy : In this method, merely uses information and experience gained by a previously executed project. Using the tool of extrapolation, this data is compared with the information derived from the proposed project with similar area of expertise, to conclusively arrive at a rough cost estimate. 4. Top down approach: Also called as the Macro model, this 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. Following this, distinct labour categories are created relevant for each segregated task. 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. 5. 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. Techniques used in cost estimation
  • 19. Cost Estimation Models A model may be static or dynamic. In a static model, a single variable is taken as a key element for calculating cost and time. In a dynamic model, all variable are interdependent, and there is no basic variable.
  • 20.  Static, Single Variable Models: When a model makes use of single variables to calculate desired values such as cost, time, efforts, etc. is said to be a single variable model. The most common equation is: C=aLb Where C = Costs; L= size ; a and b are constants  The Software Engineering Laboratory established a model called SEL model, based on data and analysis from previous cleanroom efforts within the SEL and is tailored to serve as a guideline in applying the methodology to future production software efforts. This model is an example of the static, single variable model. E=1.4L0.93 DOC=30.4L0.90 D=4.6L0.26 Where E= Efforts (Person Per Month) DOC=Documentation (Number of Pages) D = Duration (D, in months) L = Number of Lines per code STATIC, SINGLE VARIABLE MODELS
  • 21. • In some model, several variables are needed to describe the software development process, and selected equation combined these variables to give the estimate of time & cost. These models are called multivariable models. • WALSTON and FELIX develop the models at IBM provide the following equation gives a relationship between lines of source code and effort: E=5.2L0.91 • In the same manner duration of development is given by D=4.1L0.36 The productivity index uses 29 variables which are found to be highly correlated productivity as follows: Where Wi is the weight factor for the ith variable and Xi={-1,0,+1} the estimator gives Xi one of the values -1, 0 or +1 depending on the variable decreases, has no effect or increases the productivity. STATIC, MULTIVARIA BLE MODELS
  • 22. Compare the Walston-Felix Model with the SEL model on a software development expected to involve 8 person-years of effort. 1. Calculate the number of lines of source code that can be produced. 2. Calculate the duration of the development. 3. Calculate the productivity in LOC/PY 4. Calculate the average manning EXAMPLE STATIC, MULTIVARIA BLE MODELS
  • 23. SOLUTION The amount of manpower involved = 8PY=96persons-months (1) Number of lines of source code can be obtained by reversing equation to give: Then L (SEL) = (96/1.4)1⁄0.93=94264 LOC L (SEL) = (96/5.2)1⁄0.91=24632 LOC (2) Duration in months can be calculated by means of equation D (SEL) = 4.6 (L) 0.26 = 4.6 (94.264)0.26 = 15 months D (W-F) = 4.1 L0.36 = 4.1 (24.632)0.36 = 13 months
  • 24. SOLUTION (3) Productivity is the lines of code produced per persons/month (year) (4) Average manning is the average number of persons required per month in the project
  翻译: