SlideShare a Scribd company logo
1 of 50
SOFTWARE EFFORT
ESTIMATION
Contents
• Introduction
• Difficulties in Estimation
• Where are the estimates done?
• Problems with over and under estimates
• Basis for software estimation
• Software effort estimation techniques
• Function Points Mark II
• COCOMO II: A parametric productivity model
• Cost Estimation
Introduction
• A successful project is one that is delivered
– On time
– Within budget
– With the required functionality
• It means that targets are estimated and set for all
these aspects, and project manager then tries to
meet those targets.
• Real estimates are crucial, because of incorrect
estimates, a project cannot meet its deadline.
Difficulties in Estimation
• Nature of software .
– Complexity and invisibility of software .
• Subjective nature of estimating
– Under-estimating small tasks
– Over-estimating large ones .
• Political pressures
– Different objectives of people in an organization
– Managers may wish to reduce estimated costs in
order to win support for acceptance of a project
proposal
Difficulties in Estimation
• Changing technologies
– Technology is rapidly changing , making the
experience of previous project estimates difficult
to use in new ones .
• Lack of homogeneity of project experience
– Experience on one project may not be applicable
to another.
Where are the Estimates done?
Estimates are carried out at different stages of a
software project for a variety of reasons .
• Feasibility study
– Estimates here conforms that the benefits of the
potential system will justify the costs
• Strategic planning
– Project portfolio management is involved here.
Benefits and costs of new projects are estimated
to allocate priorities .
Where are the Estimates done?
• System specification
– Design of a system shows that how user
requirements will be fulfilled .
– Different design approaches can be considered for
a single requirement specification.
– The effort needed to implement different design
proposals is estimated here.
– Estimates at the design stage will also confirm that
the feasibility study is still valid.
Where are the Estimates done?
• Evaluation of suppliers proposals
– A manager could consider putting development out to
tender.
– Potential contractors would examine the system
specifications and produce estimates ( their bid ).
– The manager can still produce his own estimates why
?
• To question a bid that seems too low which could be an
indication of a bad understanding of the system
specifications .
• Or to compare the bids to in-house development
Where are the Estimates done?
• Project planning
– As the planning and implementation of the project
becomes more detailed, more estimates of
smaller work components will be made. These will
confirm earlier broad estimates.
Problems with over and
under estimates
• An over-estimate is likely to cause project to take
longer than it would otherwise.
• This can be explained by the application of two laws :
– Parkinson’s Law: ‘Work expands to fill the time available’
• Over estimating the duration required to complete a target will
cause staff to work less hard in order to fill the available time .
– Brook’s Law : Putting more people on a late job makes it
later
• If there is an over estimate of the total people required, this could
lead to more staff being allocated than the actual need. And as the
project team grows in size, more effort will be required for
management, coordination and communication.
Problems with over and
under estimates
• Under-estimating a project
– Can cause the project to not be delivered on time or cost
– But still could be delivered faster than a more generous
estimate
• On the other side the danger of underestimating a project
is the effect on the quality.
– Staff, particularly those with less experience, could response to
pressing deadlines by producing substandard work.
– Substandard work might only become visible at the later
(testing) phases of a project, where extensive re-work can easily
delay project completion.
– Motivation is also decreased when targets are always
unachievable.
Activity 1
• Calculate the productivity (SLOC / work per
month) of each of the projects and also for
the organization as a whole. If the project
leaders for projects a and d had correctly
estimated the SLOC and then used the
average productivity of the organization to
calculate the effort needed to complete the
projects, how far would their estimates have
been from the actual effort?
Activity 1
Project Effort (pm) SLOC
A 16.7 6050
B 22.6 8363
C 32.2 13334
D 3.9 5942
E 17.3 3315
F 67.7 38988
G 10.1 38614
H 19.3 12762
I 59.5 26500
Basis for software Effort Estimation
The need for
historical data
Parameters to
be estimated
Measure of
work
Measure of
effort
The need for historical data
• Most estimating methods need information
about past projects.
• Care has to be considered when applying past
performance to new projects because of possible
differences in factors such as :
– Different programming languages
– Different experience of staff
• There are international Data Base containing data
about thousands of projects that can be used as
reference.
Parameters to be estimated
• Two project parameters are to be estimated
for carrying out project planning.
– Duration: It is usually measured in months,
– Effort: Popular unit for effort measurement is
person-month (pm)
• One pm is the effort an individual can typically
put in a month.
Measure of Work
• Work can be measured in terms of cost
required in accomplishing the project and the
time over which it is to be completed.
• Direct calculation of time and cost to
implement software is difficult in early stages
as they both depend on :
– The developer’s capability and experience
– The technology that will be used
Measure of Work
• It is therefore a standard practice to first
estimate the project size, and by using it, the
effort and time taken to develop the software
can be computed.
• At present, two metrics are being popularly
used to measure size
– Source lines of code (SLOC)
– Function point (FP)
Measure of effort
• Person-month (pm) is a popular unit for effort
estimation.
• It quantifies the effort that can be put in by
one person over one month.
• Effort that has been put in by a team can be
measured in units of pm based on the number
of persons deployed and the number of
months that they have worked.
Software effort estimation techniques
• Parkinson: Staff effort available to do the
project becomes the estimate.
• Price to win: Here the estimate is a figure that
seems sufficiently low to win a contract.
• Expert judgment: Based on the advice of
knowledgeable staff.
Software effort estimation techniques
• Analogy: A similar completed project is
identified and its actual effort is used as the
basis of the estimate.
• Bottom-up: Component tasks are identified
and estimated and these individual estimates
are aggregated.
• Top-down: An over all estimate for the whole
project is broken down into the effort required
for component tasks.
Expert Judgment
• It involves asking for an estimate of task effort
from someone who is knowledgeable either
about the application or the development
environment.
• This method is often used when an existing piece
of software is needed to change.
• The estimator examine the existing code in order
to judge the proportion of code affected and
from that derive an estimate.
• Some one familiar with the software would be in
the best position to do that.
Estimation by Analogy
• For a new project the estimator identifies the previous
completed projects that have similar characteristics to
it .
• The new project is referred to as the target project or
target case.
• The completed projects are referred to as the source
projects or source case.
• The effort recorded for the matching source case is
used as the base estimate for the target project.
• The estimator calculates an estimate for the new
project by adjusting the ( base estimate ) based on the
differences that exist between the two projects.
Estimation by Analogy
• There are software tools that automate this
process by selecting the nearest project cases to
the new project .
• Some software tools perform that by measuring
the Euclidean distance between projects.
• The Euclidean distance is calculated as follows :
Distance = square-root of (( target_parameter1-
source_parameter1)2 +….+ ( target_parameter n -
source_parameter n ) 2 )
Estimation by Analogy
• Assume that cases are matched on the basis of two
parameters , the number of inputs and the number of
outputs .
– The new project ( target case ) requires 7 inputs and 15
output
• You are looking into two past cases or source cases to
find a better analogy with the target project :
– Project A : has 8 inputs and 17 outputs .
– Project B : has 5 inputs and 10 outputs .
• Which is a more closer match for the new project A or
project B ?
Estimation by Analogy
• Distance between new project and project A :
– Square-root of (( 7-8 ) 2 + ( 15-17 ) 2 )= 2.24
• Distance between new project and project B:
– Square-root of (( 7-5 ) 2 + ( 15-10 ) 2 )= 5.39
• Project A is a better match because it has less
distance than project B to the new project.
Activity 2
• There is a new project, that is known to
require 7 inputs and 15 outputs. There are
two past cases: project A has 8 inputs and 17
outputs and project B has 5 inputs and 10
outputs. Which of the source projects have
better analogy with the target new project?
Bottom-up Estimation
• Break the project into smaller and smaller
components.
• Stop when you get to what one person can do in
one/two weeks.
• Estimate costs for the lowest level activities.
• At each higher level calculate estimate by adding
estimates for lower levels.
• When a project is completely novel or there is no
historical data available, bottom-up approach
would be the perfect choice.
Bottom-up Estimation
• Following are the steps how a bottom up
approach can be used for estimating effort
– Think about the number and types of software
modules in the final system.
– Estimate the SLOC of each identified module.
– Estimate the work content, taking into account
complexity.
– Calculate the work days effort.
Top Down Estimation
• Most commonly used top down estimation
approaches are Function Points Mark II and
COCOMO II.
Function Points Mark II
• The function point is a "unit of measurement" to
express the amount of business functionality an
information system provides to a user.
• It is a process which defines the required
functions and their complexity in a piece of
software in order to estimate the software's size
upon completion.
• The Mark II Method was defined by Charles
Symons in 1991.
Function Points Mark II
• FP Mark II measures the size in FPs.
• The size is initially measured in unadjusted
function points (UFPs) to which a technical
complexity adjustment can then be applied
(TCA).
Function Points Mark II
• The assumption here is that an information
system comprises transactions that have the
basic structure shown in Figure
Function Points Mark II
• For each transaction FPs are calculated as
FP = Wi * (number of input data element
types) +
We * (number of entity types
referenced) +
Wo * (number of output data
element types)
Function Points Mark II
• Wi, We, Wo are weightings derived by asking
developers the proportions of effort spent in
previous projects developing the code dealing
with Inputs, accessing and modifying stored
data and Processing outputs.
• The process for calculating weightings is time
consuming and most FP counters use industry
averages which are currently 0.58 for Wi, 1.66
for We and 0.26 for Wo.
Function Points Mark II
• Tables have been calculated to convert the FPs
to lines of code for various languages. For
example it is suggested that 53 lines of Java
are needed on average to implement one FP,
while for Visual C++ the figure is 34.
Activity 3
• A cash receipt transaction system accesses two
entity types (INVOICE and CASH RECEIPT). The
data inputs are (Invoice number, data received
and cash received). If an invoice record is not
found for the invoice number then an error
message is issued. If the invoice number is found
then a CASH RECEIPT record is created. Thus the
error message is the only output of transaction.
Calculate the function points.
• Also calculate the SLOC, if the system is to be
implemented in Java.
COCOMO II: A Parametric
Productivity Model
• COCOMO II is a parametric productivity model.
• Barry W. Boehm’s COCOMO (Constructive Cost
MOdel) actually refers to a group of models.
• Boehm presented his first model (COCOMO 81) in
late 1970s based on a study of 63 projects.
• This basic model was built around the equation
Effort = c (size)k
COCOMO II: A Parametric
Productivity Model
• Effort was measured in pm, size was measured in
kdsi, and c and k were constants.
• The first step was to derive an estimate of the system
size in terms of kdsi. The constants c and k depend
on whether the system could be classified as organic,
semi-detached or embedded.
System Type C k
Organic 2.4 1.05
Semi-detached 3.0 1.12
Embedded 3.6 1.20
COCOMO II: A Parametric
Productivity Model
• Organic Mode: This would typically be the case
when relatively small teams develop software in a
highly familiar in-house environment, system
being developed is small and interface
requirements are flexible.
• Embedded Mode: Product being developed had
to operate within very tight constraints and
changes to the system are very costly.
• Semi-detached Mode: This combined elements
of the organic and the embedded modes or have
characteristics that came between the two.
COCOMO II: A Parametric
Productivity Model
• Over years, Barry Boehm and his co-workers have
refined a family of cost estimation models of
which the latest one is COCOMO II (developed in
1995, published in 2000).
• It uses various multipliers and exponents, values
of which have been set initially by experts.
• A database containing the performance details of
executed projects has been built up and is
periodically analyzed so that the expert
judgements can be progressively replaced by the
values derived from actual projects.
COCOMO II: A Parametric
Productivity Model
• Effort is calculated as
Pm = A (size) (sf) *(em1) * (em2) * ….. * (emn)
• A is a constant (2.94), size is measured in kdsi
and sf is the exponent scale factor calculated
as
Sf = B + 0.01 * ∑ (exponent driver ratings)
• B is a constant currently set at 0.91.
COCOMO II: A Parametric
Productivity Model
• The qualities that govern the exponent drivers
are
• Precedentedness (PREC): This quality is the
degree to which there are precedents or
similar past cases for the current project. The
greater the novelty of the new system, the
more uncertainty there is and higher the value
given to the exponent driver .
COCOMO II: A Parametric
Productivity Model
• Development Flexibility (FLEX): This reflects
the number of different ways there are of
meeting the requirements. The less flexibility
there is, the higher the value of exponent
driver.
• Risk Resolution (RESL): This reflects the
degree of uncertainty about the requirements.
If they are liable to change then a high value
would be given to this exponent driver.
COCOMO II: A Parametric
Productivity Model
• Team Cohesion (TEAM): This reflects the
degree to which there is a large dispersed
team as opposed to there being a small tightly
knit team.
• Process Maturity (PMAT): The more
structured and organized the way the
software is produced, the lower the
uncertainty and lower the rating for this
exponent driver.
COCOMO II: A Parametric
Productivity Model
• Each of the scale factors for a project is rated
according to a range of judgements: very low,
low, nominal, high, very high and extra high.
There is a number related to each rating of the
individual scale factors.
COCOMO II: A Parametric
Productivity Model
Activity 4
• A new project has average novelty for the software supplier
who is going to execute it and is thus given a nominal rating
on this account for precedentedness. Development
flexibility is high, but requirements may change radically
and so the risk resolution exponent is rated very low. The
development team are all located in the same office and
this leads to team cohesion being rated as very high, but
the software house as a whole tends to be very informal in
its standards and procedures and the process maturity
driver has therefore been given a rating of low.
– What would be the scale factor (sf) in this case?
– What would be the estimate of effort, if the size of the
application was estimated as 2000 LOC.
Cost Estimation
• Project cost can be obtained by multiplying
the estimated effort with the man-power cost
per month.
• Activity 5: Assume that the size of an organic
type software product is estimated to be
32,000 lines of source code. Assume that the
average salary of a software developer is
$2,000 per month. Determine the amount of
staff cost to develop the product.
Reading
• [Chapter#5] “Software Project Management
by Bob Hughes and Mike Cotterell, McGraw-
Hill Education; 6th Edition (2009). ISBN-10:
0077122798”.

More Related Content

Similar to 1587310189-week6.pptx

7 Project planning for software engineering.pptx
7 Project planning for software engineering.pptx7 Project planning for software engineering.pptx
7 Project planning for software engineering.pptxgezaegebre1
 
Chapt5.pptx it is notes of the 5th chapter
Chapt5.pptx it is notes of the 5th chapterChapt5.pptx it is notes of the 5th chapter
Chapt5.pptx it is notes of the 5th chapterpreetidamakale
 
Cost and time estimation methods pros and cons
Cost and time estimation methods pros and consCost and time estimation methods pros and cons
Cost and time estimation methods pros and consPragnendra Rahevar
 
Software_effort_estimation for Software engineering.pdf
Software_effort_estimation for Software engineering.pdfSoftware_effort_estimation for Software engineering.pdf
Software_effort_estimation for Software engineering.pdfsnehan789
 
project planning components.pdf
project planning components.pdfproject planning components.pdf
project planning components.pdfsaman Iftikhar
 
Lecture6
Lecture6Lecture6
Lecture6soloeng
 
CISA_WK_3.pptx
CISA_WK_3.pptxCISA_WK_3.pptx
CISA_WK_3.pptxdotco
 
itec513 fall20172018 COCOMO model estimation.ppt
itec513 fall20172018 COCOMO model estimation.pptitec513 fall20172018 COCOMO model estimation.ppt
itec513 fall20172018 COCOMO model estimation.pptinaamulh77
 
Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)ShudipPal
 
Software project management tools
Software project management toolsSoftware project management tools
Software project management toolsDarshak Mehta
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3Azhar Shaik
 
Project Scope Management in IT Project and Software Project
Project Scope Management in IT Project and Software ProjectProject Scope Management in IT Project and Software Project
Project Scope Management in IT Project and Software ProjectHengSovannarith
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software EngineeringMuhammad Yousuf Abdul Qadir
 

Similar to 1587310189-week6.pptx (20)

7 Project planning for software engineering.pptx
7 Project planning for software engineering.pptx7 Project planning for software engineering.pptx
7 Project planning for software engineering.pptx
 
SPM_UNIT-2.pptx
SPM_UNIT-2.pptxSPM_UNIT-2.pptx
SPM_UNIT-2.pptx
 
Chapt5.pptx it is notes of the 5th chapter
Chapt5.pptx it is notes of the 5th chapterChapt5.pptx it is notes of the 5th chapter
Chapt5.pptx it is notes of the 5th chapter
 
Cost and time estimation methods pros and cons
Cost and time estimation methods pros and consCost and time estimation methods pros and cons
Cost and time estimation methods pros and cons
 
Software_effort_estimation for Software engineering.pdf
Software_effort_estimation for Software engineering.pdfSoftware_effort_estimation for Software engineering.pdf
Software_effort_estimation for Software engineering.pdf
 
project planning components.pdf
project planning components.pdfproject planning components.pdf
project planning components.pdf
 
Project management
Project managementProject management
Project management
 
Lecture6
Lecture6Lecture6
Lecture6
 
CISA_WK_3.pptx
CISA_WK_3.pptxCISA_WK_3.pptx
CISA_WK_3.pptx
 
SPM_UNIT-1(1).pptx
SPM_UNIT-1(1).pptxSPM_UNIT-1(1).pptx
SPM_UNIT-1(1).pptx
 
lec11.ppt
lec11.pptlec11.ppt
lec11.ppt
 
Proj Mgmt.ppt
Proj Mgmt.pptProj Mgmt.ppt
Proj Mgmt.ppt
 
itec513 fall20172018 COCOMO model estimation.ppt
itec513 fall20172018 COCOMO model estimation.pptitec513 fall20172018 COCOMO model estimation.ppt
itec513 fall20172018 COCOMO model estimation.ppt
 
Software Engineering (Project Planning & Estimation)
Software Engineering (Project Planning &  Estimation)Software Engineering (Project Planning &  Estimation)
Software Engineering (Project Planning & Estimation)
 
Software project management tools
Software project management toolsSoftware project management tools
Software project management tools
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
Project Scope Management in IT Project and Software Project
Project Scope Management in IT Project and Software ProjectProject Scope Management in IT Project and Software Project
Project Scope Management in IT Project and Software Project
 
Chapter 4
Chapter 4 Chapter 4
Chapter 4
 
Project Cost Management for IEM talk on 13 January 2018.
Project Cost Management  for IEM talk on 13 January 2018.Project Cost Management  for IEM talk on 13 January 2018.
Project Cost Management for IEM talk on 13 January 2018.
 
Software project management- Software Engineering
Software project management- Software EngineeringSoftware project management- Software Engineering
Software project management- Software Engineering
 

Recently uploaded

Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝soniya singh
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxupamatechverse
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Call Girls in Nagpur High Profile
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 

Recently uploaded (20)

Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
Model Call Girl in Narela Delhi reach out to us at 🔝8264348440🔝
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANVI) Koregaon Park Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
★ CALL US 9953330565 ( HOT Young Call Girls In Badarpur delhi NCR
 
Introduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptxIntroduction to Multiple Access Protocol.pptx
Introduction to Multiple Access Protocol.pptx
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...Top Rated  Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
Top Rated Pune Call Girls Budhwar Peth ⟟ 6297143586 ⟟ Call Me For Genuine Se...
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 

1587310189-week6.pptx

  • 2. Contents • Introduction • Difficulties in Estimation • Where are the estimates done? • Problems with over and under estimates • Basis for software estimation • Software effort estimation techniques • Function Points Mark II • COCOMO II: A parametric productivity model • Cost Estimation
  • 3. Introduction • A successful project is one that is delivered – On time – Within budget – With the required functionality • It means that targets are estimated and set for all these aspects, and project manager then tries to meet those targets. • Real estimates are crucial, because of incorrect estimates, a project cannot meet its deadline.
  • 4. Difficulties in Estimation • Nature of software . – Complexity and invisibility of software . • Subjective nature of estimating – Under-estimating small tasks – Over-estimating large ones . • Political pressures – Different objectives of people in an organization – Managers may wish to reduce estimated costs in order to win support for acceptance of a project proposal
  • 5. Difficulties in Estimation • Changing technologies – Technology is rapidly changing , making the experience of previous project estimates difficult to use in new ones . • Lack of homogeneity of project experience – Experience on one project may not be applicable to another.
  • 6. Where are the Estimates done? Estimates are carried out at different stages of a software project for a variety of reasons . • Feasibility study – Estimates here conforms that the benefits of the potential system will justify the costs • Strategic planning – Project portfolio management is involved here. Benefits and costs of new projects are estimated to allocate priorities .
  • 7. Where are the Estimates done? • System specification – Design of a system shows that how user requirements will be fulfilled . – Different design approaches can be considered for a single requirement specification. – The effort needed to implement different design proposals is estimated here. – Estimates at the design stage will also confirm that the feasibility study is still valid.
  • 8. Where are the Estimates done? • Evaluation of suppliers proposals – A manager could consider putting development out to tender. – Potential contractors would examine the system specifications and produce estimates ( their bid ). – The manager can still produce his own estimates why ? • To question a bid that seems too low which could be an indication of a bad understanding of the system specifications . • Or to compare the bids to in-house development
  • 9. Where are the Estimates done? • Project planning – As the planning and implementation of the project becomes more detailed, more estimates of smaller work components will be made. These will confirm earlier broad estimates.
  • 10. Problems with over and under estimates • An over-estimate is likely to cause project to take longer than it would otherwise. • This can be explained by the application of two laws : – Parkinson’s Law: ‘Work expands to fill the time available’ • Over estimating the duration required to complete a target will cause staff to work less hard in order to fill the available time . – Brook’s Law : Putting more people on a late job makes it later • If there is an over estimate of the total people required, this could lead to more staff being allocated than the actual need. And as the project team grows in size, more effort will be required for management, coordination and communication.
  • 11. Problems with over and under estimates • Under-estimating a project – Can cause the project to not be delivered on time or cost – But still could be delivered faster than a more generous estimate • On the other side the danger of underestimating a project is the effect on the quality. – Staff, particularly those with less experience, could response to pressing deadlines by producing substandard work. – Substandard work might only become visible at the later (testing) phases of a project, where extensive re-work can easily delay project completion. – Motivation is also decreased when targets are always unachievable.
  • 12. Activity 1 • Calculate the productivity (SLOC / work per month) of each of the projects and also for the organization as a whole. If the project leaders for projects a and d had correctly estimated the SLOC and then used the average productivity of the organization to calculate the effort needed to complete the projects, how far would their estimates have been from the actual effort?
  • 13. Activity 1 Project Effort (pm) SLOC A 16.7 6050 B 22.6 8363 C 32.2 13334 D 3.9 5942 E 17.3 3315 F 67.7 38988 G 10.1 38614 H 19.3 12762 I 59.5 26500
  • 14. Basis for software Effort Estimation The need for historical data Parameters to be estimated Measure of work Measure of effort
  • 15. The need for historical data • Most estimating methods need information about past projects. • Care has to be considered when applying past performance to new projects because of possible differences in factors such as : – Different programming languages – Different experience of staff • There are international Data Base containing data about thousands of projects that can be used as reference.
  • 16. Parameters to be estimated • Two project parameters are to be estimated for carrying out project planning. – Duration: It is usually measured in months, – Effort: Popular unit for effort measurement is person-month (pm) • One pm is the effort an individual can typically put in a month.
  • 17. Measure of Work • Work can be measured in terms of cost required in accomplishing the project and the time over which it is to be completed. • Direct calculation of time and cost to implement software is difficult in early stages as they both depend on : – The developer’s capability and experience – The technology that will be used
  • 18. Measure of Work • It is therefore a standard practice to first estimate the project size, and by using it, the effort and time taken to develop the software can be computed. • At present, two metrics are being popularly used to measure size – Source lines of code (SLOC) – Function point (FP)
  • 19. Measure of effort • Person-month (pm) is a popular unit for effort estimation. • It quantifies the effort that can be put in by one person over one month. • Effort that has been put in by a team can be measured in units of pm based on the number of persons deployed and the number of months that they have worked.
  • 20. Software effort estimation techniques • Parkinson: Staff effort available to do the project becomes the estimate. • Price to win: Here the estimate is a figure that seems sufficiently low to win a contract. • Expert judgment: Based on the advice of knowledgeable staff.
  • 21. Software effort estimation techniques • Analogy: A similar completed project is identified and its actual effort is used as the basis of the estimate. • Bottom-up: Component tasks are identified and estimated and these individual estimates are aggregated. • Top-down: An over all estimate for the whole project is broken down into the effort required for component tasks.
  • 22. Expert Judgment • It involves asking for an estimate of task effort from someone who is knowledgeable either about the application or the development environment. • This method is often used when an existing piece of software is needed to change. • The estimator examine the existing code in order to judge the proportion of code affected and from that derive an estimate. • Some one familiar with the software would be in the best position to do that.
  • 23. Estimation by Analogy • For a new project the estimator identifies the previous completed projects that have similar characteristics to it . • The new project is referred to as the target project or target case. • The completed projects are referred to as the source projects or source case. • The effort recorded for the matching source case is used as the base estimate for the target project. • The estimator calculates an estimate for the new project by adjusting the ( base estimate ) based on the differences that exist between the two projects.
  • 24. Estimation by Analogy • There are software tools that automate this process by selecting the nearest project cases to the new project . • Some software tools perform that by measuring the Euclidean distance between projects. • The Euclidean distance is calculated as follows : Distance = square-root of (( target_parameter1- source_parameter1)2 +….+ ( target_parameter n - source_parameter n ) 2 )
  • 25. Estimation by Analogy • Assume that cases are matched on the basis of two parameters , the number of inputs and the number of outputs . – The new project ( target case ) requires 7 inputs and 15 output • You are looking into two past cases or source cases to find a better analogy with the target project : – Project A : has 8 inputs and 17 outputs . – Project B : has 5 inputs and 10 outputs . • Which is a more closer match for the new project A or project B ?
  • 26. Estimation by Analogy • Distance between new project and project A : – Square-root of (( 7-8 ) 2 + ( 15-17 ) 2 )= 2.24 • Distance between new project and project B: – Square-root of (( 7-5 ) 2 + ( 15-10 ) 2 )= 5.39 • Project A is a better match because it has less distance than project B to the new project.
  • 27. Activity 2 • There is a new project, that is known to require 7 inputs and 15 outputs. There are two past cases: project A has 8 inputs and 17 outputs and project B has 5 inputs and 10 outputs. Which of the source projects have better analogy with the target new project?
  • 28. Bottom-up Estimation • Break the project into smaller and smaller components. • Stop when you get to what one person can do in one/two weeks. • Estimate costs for the lowest level activities. • At each higher level calculate estimate by adding estimates for lower levels. • When a project is completely novel or there is no historical data available, bottom-up approach would be the perfect choice.
  • 29. Bottom-up Estimation • Following are the steps how a bottom up approach can be used for estimating effort – Think about the number and types of software modules in the final system. – Estimate the SLOC of each identified module. – Estimate the work content, taking into account complexity. – Calculate the work days effort.
  • 30. Top Down Estimation • Most commonly used top down estimation approaches are Function Points Mark II and COCOMO II.
  • 31. Function Points Mark II • The function point is a "unit of measurement" to express the amount of business functionality an information system provides to a user. • It is a process which defines the required functions and their complexity in a piece of software in order to estimate the software's size upon completion. • The Mark II Method was defined by Charles Symons in 1991.
  • 32. Function Points Mark II • FP Mark II measures the size in FPs. • The size is initially measured in unadjusted function points (UFPs) to which a technical complexity adjustment can then be applied (TCA).
  • 33. Function Points Mark II • The assumption here is that an information system comprises transactions that have the basic structure shown in Figure
  • 34. Function Points Mark II • For each transaction FPs are calculated as FP = Wi * (number of input data element types) + We * (number of entity types referenced) + Wo * (number of output data element types)
  • 35. Function Points Mark II • Wi, We, Wo are weightings derived by asking developers the proportions of effort spent in previous projects developing the code dealing with Inputs, accessing and modifying stored data and Processing outputs. • The process for calculating weightings is time consuming and most FP counters use industry averages which are currently 0.58 for Wi, 1.66 for We and 0.26 for Wo.
  • 36. Function Points Mark II • Tables have been calculated to convert the FPs to lines of code for various languages. For example it is suggested that 53 lines of Java are needed on average to implement one FP, while for Visual C++ the figure is 34.
  • 37. Activity 3 • A cash receipt transaction system accesses two entity types (INVOICE and CASH RECEIPT). The data inputs are (Invoice number, data received and cash received). If an invoice record is not found for the invoice number then an error message is issued. If the invoice number is found then a CASH RECEIPT record is created. Thus the error message is the only output of transaction. Calculate the function points. • Also calculate the SLOC, if the system is to be implemented in Java.
  • 38. COCOMO II: A Parametric Productivity Model • COCOMO II is a parametric productivity model. • Barry W. Boehm’s COCOMO (Constructive Cost MOdel) actually refers to a group of models. • Boehm presented his first model (COCOMO 81) in late 1970s based on a study of 63 projects. • This basic model was built around the equation Effort = c (size)k
  • 39. COCOMO II: A Parametric Productivity Model • Effort was measured in pm, size was measured in kdsi, and c and k were constants. • The first step was to derive an estimate of the system size in terms of kdsi. The constants c and k depend on whether the system could be classified as organic, semi-detached or embedded. System Type C k Organic 2.4 1.05 Semi-detached 3.0 1.12 Embedded 3.6 1.20
  • 40. COCOMO II: A Parametric Productivity Model • Organic Mode: This would typically be the case when relatively small teams develop software in a highly familiar in-house environment, system being developed is small and interface requirements are flexible. • Embedded Mode: Product being developed had to operate within very tight constraints and changes to the system are very costly. • Semi-detached Mode: This combined elements of the organic and the embedded modes or have characteristics that came between the two.
  • 41. COCOMO II: A Parametric Productivity Model • Over years, Barry Boehm and his co-workers have refined a family of cost estimation models of which the latest one is COCOMO II (developed in 1995, published in 2000). • It uses various multipliers and exponents, values of which have been set initially by experts. • A database containing the performance details of executed projects has been built up and is periodically analyzed so that the expert judgements can be progressively replaced by the values derived from actual projects.
  • 42. COCOMO II: A Parametric Productivity Model • Effort is calculated as Pm = A (size) (sf) *(em1) * (em2) * ….. * (emn) • A is a constant (2.94), size is measured in kdsi and sf is the exponent scale factor calculated as Sf = B + 0.01 * ∑ (exponent driver ratings) • B is a constant currently set at 0.91.
  • 43. COCOMO II: A Parametric Productivity Model • The qualities that govern the exponent drivers are • Precedentedness (PREC): This quality is the degree to which there are precedents or similar past cases for the current project. The greater the novelty of the new system, the more uncertainty there is and higher the value given to the exponent driver .
  • 44. COCOMO II: A Parametric Productivity Model • Development Flexibility (FLEX): This reflects the number of different ways there are of meeting the requirements. The less flexibility there is, the higher the value of exponent driver. • Risk Resolution (RESL): This reflects the degree of uncertainty about the requirements. If they are liable to change then a high value would be given to this exponent driver.
  • 45. COCOMO II: A Parametric Productivity Model • Team Cohesion (TEAM): This reflects the degree to which there is a large dispersed team as opposed to there being a small tightly knit team. • Process Maturity (PMAT): The more structured and organized the way the software is produced, the lower the uncertainty and lower the rating for this exponent driver.
  • 46. COCOMO II: A Parametric Productivity Model • Each of the scale factors for a project is rated according to a range of judgements: very low, low, nominal, high, very high and extra high. There is a number related to each rating of the individual scale factors.
  • 47. COCOMO II: A Parametric Productivity Model
  • 48. Activity 4 • A new project has average novelty for the software supplier who is going to execute it and is thus given a nominal rating on this account for precedentedness. Development flexibility is high, but requirements may change radically and so the risk resolution exponent is rated very low. The development team are all located in the same office and this leads to team cohesion being rated as very high, but the software house as a whole tends to be very informal in its standards and procedures and the process maturity driver has therefore been given a rating of low. – What would be the scale factor (sf) in this case? – What would be the estimate of effort, if the size of the application was estimated as 2000 LOC.
  • 49. Cost Estimation • Project cost can be obtained by multiplying the estimated effort with the man-power cost per month. • Activity 5: Assume that the size of an organic type software product is estimated to be 32,000 lines of source code. Assume that the average salary of a software developer is $2,000 per month. Determine the amount of staff cost to develop the product.
  • 50. Reading • [Chapter#5] “Software Project Management by Bob Hughes and Mike Cotterell, McGraw- Hill Education; 6th Edition (2009). ISBN-10: 0077122798”.

Editor's Notes

  1. Specialized estimating group
  2. ISBSG international software benchmarking standards group….4800 projects
  3. Losses due to holidays, weekly offs are considered while estimating pm.
  4. Kilo delivered source instruction.
  5. This cost is only the manpower cost. Overhead costs should also be added.