Sie sind auf Seite 1von 29

1

Out line
What is estimation
Objective of estimation Why it is important? Project estimation process Conclusion Cocomo Model with example Wideband Delphi Process Compiler project example

What is estimation?
The definition of the verb estimate is to produce a

statement of the approximate value of some quantity. Estimates are based upon incomplete, imperfect knowledge and assumptions about the future. For these reasons, many estimates of software costs are not 100% correct. So, all estimates have uncertainty.

Objective of estimation
Effort / Cost
Schedule Staffing

Risk
Reliability

why it is important?
The project manager must set expectations about the time

required to complete the software among the stakeholders, the team, and the organizations management. If those expectations are not realistic from the beginning of the project, the stakeholders will not trust the team or the project manager.

Project Estimation Process


Ideally an estimate should be produced using the ten-step

process. 1) Establish estimate scope 2) Establish ground rules & assumptions 3) Collect data 4) Size software 5) Prepare baseline estimates 6) Quantify risks & risk analysis 7) Review, verify, validate estimate 8) Generate a project plan 9) Document estimate & lessons learned 10) Track project throughout development

1-Establish Estimate Scope and Purpose


Define and document expectations When all participants understand the scope and

purpose of the estimate, you clear up contradictory assumptions, Establish a baseline for measuring the effect of future changes, and head off potential misunderstandings.

2-Establish ground rules, and assumptions


To establish an accurate technical baseline, you must

first define the functionality that must be estimated. Recognize the constraints associated with the application and the project. Determine what functionality must be developed versus what can be provided via COTS (Commercial Off-the-Shelf )or reuse

2-Establish ground rules, and assumptions


Ground rules are concise statements that describe the

basis from which the estimate is made. No costs associated with travel are included is an example of a ground rule. Assumptions are suppositions that describe unknown variables that will affect an estimate

3-Collect data
Identify the data required and the information

holders. Be sure you are asking the right people the right questions. During interview confirm data is realistic and valid When you have determined that the supplied data is valid and complete, publish the corrected raw data. Store the raw and normalized data in a database

10

4- Determine size and scope


This is most critical step in determining the ultimate

success of a project. So , spend the bulk of the time you have on sizing the project . Use of sizing database and tools can facilitate this process.

11

5-Prepare baseline estimate


Budget and schedule are derived from estimates.
so if an estimate is not accurate, the resulting

schedules and budgets are likely to be inaccurate also. Estimating a project should not be thought of as a onetime activity. As projects progress, unknowns become known's, and new and unexpected issues and opportunities arise.

12

5-Prepare baseline estimate


First, trained, experienced, and skilled people should

be assigned to size the software and prepare the estimates. Second, it is critically important that they be given the proper technology and tools. And third, the project manager must define and implement a mature, documented, and repeatable estimation process.

13

Risk can be characterized in terms of a loss of time,

6-Quantify risks and risk analysis

quality, money, control, or understanding. The loss associated with a risk is called the risk impact. Risk cannot be eliminated, but it can be planned for. Risk, by itself, will not threaten the success of a project if it is recognized and addressed in a timely fashion.

14

7-Validate and review


Validating and reviewing your estimate provides a

systematic confirmation of your estimates integrity. This step enables the organization to be more proactive in adjusting project variables. and justifies confidence that project data is sound, methods are effective, anticipated results are accurate, and focus is properly directed. The validation should be performed by someone who was not involved in generating the estimate itself, who can view it objectively.
15

8-Generate a project plan


Generating a project plan employs the project estimate

as a basis for allocating and communicating specific cost, resources, and timelines in a detailed function, and task-oriented work breakdown structure.

16

9-Document estimate and lessons learned


Each time you complete or update an estimate and

upon completion of a project, you should document the information . Record the lessons you learned. By doing so, you will have evidence that your process was valid .

17

10- Track performance (measurement and feedback)


In-process information should be collected

continuously and compared against the original plan and baseline. If performance varies consistently or significantly, corrective options should be evaluated and implemented to get the project back on track

18

Conclusion
Software cost estimation is a difficult process but a

necessary part of a successful software development. Sometimes management is reluctant to take these steps(1,6,7) This can be a costly attitude, because in reality every shortcut results in dramatic increases in project risks.

19

COCOMO Model
COCOMO is one of the most widely used software

estimation models in the world. COCOMO predicts the effort and schedule .

20

Basic COCOMO is good for quick, early, rough order

of magnitude estimates of software costs It does not account for differences in hardware constraints, personnel quality and experience, use of modern tools and techniques, and other project attributes known to have a significant influence on software costs, which limits its accuracy

21

The Development Modes:


Organic
small" teams
with "good" experience relatively small and requires little innovation

22

Semidetached Mode

medium" teams.
with mixed experience

The size range of a semidetached mode product

generally extends up to 300 KDSI

23

Embedded Mode Complex projects where the software is part of a strongly coupled complex of hardware, software, regulations and operational procedures.

24

COCOMO: Some Assumptions


Primary cost driver is the number of Delivered

Source Instructions (DSI) / Delivered Line Of Code developed by the project COCOMO estimates assume that the project will enjoy good management by both the developer and the customer

25

Assumes the requirements specification is not

substantially changed after the plans and requirements phase

26

Basic COCOMO Model: Formula


Effort Applied (in person-months) = a * (KLOC)b Development Time (in months) = c * (Effort Applied)d People required = Effort Applied / Development Time a
Organic

d
0.38

2.4 1.05 2.5

Semi-detatched
Embedded

3.0 1.12 2.5


3.6 1.20 2.5

0.35
0.32
27

Basic COCOMO Model: Equation


Mode Organic Effort Schedule E=2.4*(KDSI)1.05 TDEV=2.5*(E)0.38

Semidetached E=3.0*(KDSI)1.12 TDEV=2.5*(E)0.35 Embedded E=3.6*(KDSI)1.20 TDEV=2.5*(E)0.32

28

Basic COCOMO Model: Example


We have determined our project fits the characteristics of Semi-Detached mode We estimate our project will have 32,000 Delivered Source Instructions. Using the formulas, we can estimate: Effort = 3.0*(32) 1.12 = 146 Person-months Schedule = 2.5*(146) 0.35 = 14 months Average Staffing = 146 MM /14 months = 10 FSP
29

Das könnte Ihnen auch gefallen