Software Effort Estimation Presentation Summary Introduction Why do

  • Slides: 44
Download presentation
Software Effort Estimation

Software Effort Estimation

Presentation Summary • Introduction – Why do we Estimate? – When do we Estimate?

Presentation Summary • Introduction – Why do we Estimate? – When do we Estimate? – What do we Estimate? – Guidelines for Estimation • Estimation Techniques – LOC – COCOMO-I and II – Function Points 2

Introduction – Why? • Industry has a reputation for software being over budget, late

Introduction – Why? • Industry has a reputation for software being over budget, late in delivery and low quality. • Unreasonable time and budget • Client satisfaction cannot be achieved with poor quality software even if it is on time and on budget. SENG 621 - Software Size Estimation 3

…Introduction – Why? • To avoid this, means must be developed to accurately predict:

…Introduction – Why? • To avoid this, means must be developed to accurately predict: – The resources needed to generate the deliverables • Accurately predicting the size of a project results in better project planning. SENG 621 - Software Size Estimation 4

…Introduction – Why? • To analyze past projects and apply lessons learned from bad

…Introduction – Why? • To analyze past projects and apply lessons learned from bad estimates. SENG 621 - Software Size Estimation 5

…Introduction – When? • As early as possible in the project. – “At no

…Introduction – When? • As early as possible in the project. – “At no other time are the estimates so important than at the beginning of a project” • Estimation is an iterative process, occurring many times though out development. • After requirements, analysis, design, coding, testing, etc… SENG 621 - Software Size Estimation 6

…Introduction – When? • Whenever new information that affects the project becomes available. –

…Introduction – When? • Whenever new information that affects the project becomes available. – “Predicting the size of a software system becomes progressively easier as the project advances” SENG 621 - Software Size Estimation 7

…Introduction – What? • Different phases in development can be estimated: – – Requirements

…Introduction – What? • Different phases in development can be estimated: – – Requirements Documents Design Documents Code Test Cases • Generally what is needed is an idea of the scope of the project. • Getting a feel for the size of project can indicate how much of everything else is needed. SENG 621 - Software Size Estimation 8

Example

Example

Function Points ( FP ) The approach is to identify and count a number

Function Points ( FP ) The approach is to identify and count a number of unique function types: • external inputs (e. g. file names) • external outputs (e. g. reports, messages) • queries (interactive inputs needing a response) • external files or interfaces (files shared with other software systems) • internal files (invisible outside the system)

Unadjusted function points • Unadjusted function points ( UFP ) is calculated as follows

Unadjusted function points • Unadjusted function points ( UFP ) is calculated as follows : • The sum of all the occurrences is computed by multiplying each function count with a weighting and then adding up all the values.

Albrecht’s original method classified the weightings as: Function Type Low Average High External Input

Albrecht’s original method classified the weightings as: Function Type Low Average High External Input x 3 x 4 x 6 External Input x 4 x 5 x 7 Logical Internal File x 7 x 10 x 15 External Interface File x 5 x 7 x 10 External Inquiry x 3 x 4 x 6

Calculate FP

Calculate FP

Table given

Table given

Calculation of CFP Crude Function Points Analysis of the software system as presented in

Calculation of CFP Crude Function Points Analysis of the software system as presented in the DFD summarizes the number of the various components: ■ Number of user inputs – 2 ■ Number of user outputs – 2 ■ Number of user online queries – 3 ■ Number of logical files – 2 ■ Number of external interfaces – 2. The degree of complexity (simple, average or complex) was evaluated for each component. 26

Calculate FP

Calculate FP