Top Banner
Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática Aplicada 2003-2004
25

Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

Dec 20, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

Planning a software project: Estimation and Measurement

José Onofre Montesa AndrésUniversidad Politécnica de

ValenciaEscuela Superior de Informática Aplicada

2003-2004

Page 2: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

2

Effort evaluation

• Two variables:– Size of the system to be developed– Productivity of our people.

Start

Finish

Distanc

e

speed

Page 3: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

3

Estimation problem.

• Find out the cost for developing an application .(man-month, euros, …)

• Moment when we wish to know the cost (Boehm graphic)

• It’s always wonted very soon (Yourdon)

Page 4: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

4

Software cost estimation accuracy versus phase.

00.5

11.5

22.5

33.5

44.5

Feasi

bili

ty

Plans

and

requ

irem

ent

s

Prod

uct

desi

gn

Deta

iled

desi

gn

Deve

lopm

ent

and

test

Acc

ept

ed

soft

ware

Page 5: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

5

Proposed estimate process.

Measure what the users

wants

Estimate the effort

Split up in stages and

tasks

Enterprise records

Requirements specifications

Effort estimation

Tasks to be done

Requirements to carry out

Measurement what the users wants

Page 6: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

6

Measure what the user wants.

Page 7: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

7

Effort estimation.

• Individual expertise.

• Enterprise expertise.

Page 8: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

8

Methods used for the project estimation.

• Based on experience.• Based on Resources exclusively.• Method Based on Market exclusively.• Based on the product components or

on development process.• Algorithmic Methods

Page 9: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

9

methods Based on experience exclusively:

• Expert judgment– Pure, – Delphi

• Analogy• Using the life cycle resource

distribution.

Page 10: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

10

Expert judgment: Pure

• An expert studies the specifications and make his estimation.

• It is mainly based on the expert knowledge.

• If the expert disappears the enterprise stop estimating.

Page 11: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

11

Expert judgment : Wideband Delphi

• A group of people are informed and tried to guess the development cost in effort as well as in time.

• Estimations in group are usually – better than the – individual ones.

Page 12: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

12

Working method of Wideband Delphi

• The specifications are given to a group of experts.• They meet to discuss the product as well as

estimation.• The individual estimations are send to de coordinator.• Each estimator receives information about his

estimation and the others but anonymously.• They meet again in order to discuss their estimations.• Each one checks his own estimation and sends it to

the coordinator.• The whole process is repeated till the estimation

converge in a reasonable way.

Page 13: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

13

Working method of Wideband Delphi

Juan *

Alicia *

José *

María *

Estimaciones

Juan *

Alicia *

José *

María *

Estimaciones

Page 14: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

14

Analogy

• This method involves reasoning by analogy with one or more projects to relate the actual cost to an estimate of the cost of similar new project.

Page 15: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

15

Analogy, we can take into account factors as:

• Size: larger or smaller?• Complexity: More or less complex?• Users: More users more difficulties.• Unknown factors:

• Operating software (The first time).• Hardware. Is it the first time to be used?• Project staff. Are they new to the

organization?

Page 16: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

16

Feasibility Planning and Requirements

General Design

Detailed Design

Code Test

10% 17% 15% 15% 33% 10%

Using the life cycle resources distribution.

• Organizations often know the distribution of costs across the stages.

• If we have already achieved some stages in a project, the costs are expected to be distributed in this way.

2 m. ?

Page 17: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

17

Method based on available resources exclusively: Parkinson

• Estimation is based on how many staff is available and how long for.

• In the development:– “Work expands to fill the – available volume”– (Parkinson Law)

Page 18: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

18

Method based on market only: price to win.

• The important think is to get contract.

• The price is fixed according to what the client is prepared to pay.

• If it is used together with other methods it can be acceptable, to adjust the offer.

• Dangerous if it is the only method applied.

Page 19: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

19

Method based on the product components or on development

process:• Top-Down

• The whole project is seen, it is split in large stages.

• The cost of each component is estimated.

• Bottom-up• The project is split up in smaller as possible

units. • Each unit is estimated and the total cost is

calculate.

Page 20: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

20

Application to be

developed

Cost

...

Characteristics f(x)x

y

z

vu

Algorithmic methods

• Provide one or more algorithms which produce a software cost estimate as a function of a number of variables which are considered to be the major cost drivers from a top down or bottom up view

Page 21: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

21

COCOMO: The constructive cost model

• The variables user are thinks like:– The size of the product in lines of code,– The development environment...

• Organic, There are two more.– Nominal-effort = 3.2 (KLOC)1.05

– Schedule = 2.5 (MM)0.38

Page 22: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

22

COCOMO

• Determine effort multipliers:– B.D. Size, analyst experience, tools , …

(15 total, vary from 0.75-1.66)

• Effort estimation with corrections.• Related factors estimation ($, phase

elapsed time ,…)

Page 23: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

23

Function Point analysis

• To be applied on the first phases of the development.

• It is mainly based on “external” characteristics of the application to be developed.

• It measures two characteristic types:– The function elements (inputs, outputs,

files) – The complexity factors.

Page 24: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

24

Required effort estimation.

• We use historical data on previous projects.

• Effort = PFA*Average_cost_FP(Language)

Page 25: Planning a software project: Estimation and Measurement José Onofre Montesa Andrés Universidad Politécnica de Valencia Escuela Superior de Informática.

GPII-2A Planning a software project: Estimation & Measurement.

25

Required effort estimation

Nombre Proyecto Puntos de Función Lenguaje Esfuerzo en horas

Sénia 200 COBOL 5.017

Mijares 300 PASCAL 5.410

Paláncia 150 PASCAL 2.569

Turia 375 4GL 3.011

Albufera 500 PASCAL 9.479

Magro 425 4GL 3.342

Cabriel 800 PASCAL 13.349

Júcar 180 PASCAL 2.800

Serpis 325 4GL 2.541

Montnegre 225 PASCAL 4.528

Vinalopó 310 PASCAL 5.628

Segura 470 COBOL 13.218