1 / 25

Planning a software project: Estimation and Measurement

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. Effort evaluation. Two variables: Size of the system to be developed Productivity of our people. Finish. speed.

Download Presentation

Planning a software project: Estimation and Measurement

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 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

  2. Effort evaluation • Two variables: • Size of the system to be developed • Productivity of our people. Finish speed Start Distance 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) GPII-2A Planning a software project: Estimation & Measurement.

  4. Software cost estimation accuracy versus phase. GPII-2A Planning a software project: Estimation & Measurement.

  5. Proposed estimate process. Requirements specifications Requirements to carry out Tasks to be done Split up in stages and tasks Measure what the users wants Effort estimation Estimate the effort Measurement what the users wants Enterprise records GPII-2A Planning a software project: Estimation & Measurement.

  6. Measure what the user wants. GPII-2A Planning a software project: Estimation & Measurement.

  7. Effort estimation. • Individual expertise. • Enterprise expertise. 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 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. 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. 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. 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. 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 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. 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? GPII-2A Planning a software project: Estimation & Measurement.

  16. 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. General Design Detailed Design Code Planning and Requirements Feasibility Test 10% 17% 15% 15% 33% 10% 2 m. ? 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) 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. 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. GPII-2A Planning a software project: Estimation & Measurement.

  20. 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 u Characteristics v f(x) x Cost ... Application to be developed y z 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 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 ,…) 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. 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) GPII-2A Planning a software project: Estimation & Measurement.

  25. Required effort estimation GPII-2A Planning a software project: Estimation & Measurement.

More Related