You are on page 1of 11

Chap.

5
Software Effort Estimate
From Bob Hughes, Mike Cotterell,
Rajib Mall
5th edition SPM
• On time, within budget and with the required
quality
• Estimate effort with costs and activity
duration.
Where are estimates done
• Strategic Planning
• Feasibility study
• System specification
• Evaluation of suppliers proposal
• Project planning
Problems with Over and Under estimates

• Overestimate: may cause the project to take


longer than it would otherwise
– Parkinson’s Law: Work expands to fill the time
available
– Brook’s Law: Putting more people on a late job
makes it better
Basis for Software Estimation
• The need for historical Data : based on past
experience
• Measure of Work:
– SLOC(Source Lines of Code)
• No precise definition
• Difficult to estimate at start of the project
• Only a code measure(not effort)
• Programmer dependent
• Does not consider code complexity
– FP(Function Point)
Software Estimation Techniques
• Algorithmic Models: (Effort )
• Expert Judgment
• Analogy
• Parkinson’s: Staff effort available to do the(Scope) project
• Price to Win: Predict to (Price)cost require.
• Top down: Overall estimate is broken down onto effort
required for component tasks
• Bottom-up: Component tasks and individual estimates
are aggregated
A procedural code oriented approach

• Bottom up approach
• Predict the number and type of software
modules in the final system
• Estimate the SLOC for each module
• Estimate the work(complexity and Technical
difficulty)
• Calculate the work days effort: Convert SLOC
to effort
Top Down Approach and
Parametric(Alogorithmic) Models
• Parametric Model Eg: Insurance to cover or
rebuild the property, company gives
parameters based on no of stories, bricks by
layer, carpenter effort etc:
• Effort = (System Size)*(Productivity rate)
• KLOC(Thousands of lines/code)
• Eg: A is experienced ,40 days/1KLOC
• Therefore he req. 80 days for 2 KLOC
• B is less experiences and takes 55/KLOC
• Therefore req. 55*2=110 days to code 2KLOC
• Productivity= Effort/Size
• Effort = Const1+(Size*Constant2)
Albercht Function Point Analysis
• 5 major Components(External Types)
– External Input Types: transactions which update
internal computer file
– External Output Types: Prints ,Displays
– External Inquiry Types: No update onlu display
Info
– Logical Internal Files
– External Interface: File types allow for Input and
Output
Albrecth complexity Multiplier

You might also like