Embed
Email

cost

Document Sample

Shared by: cuiliqing
Categories
Tags
Stats
views:
5
posted:
10/30/2011
language:
English
pages:
36
Cost Estimation







SYST510







Peggy Brouse, Ph.D. SYST510

1

Software Cost Estimating

 What are we costing?

 Program code, source & executable that

is delivered to the client together with

appropriate documentation, training and

other items that lead to a complete

software system.







Peggy Brouse, Ph.D. SYST510

2

Perspectives for Cost

Estimation

 Wholistic

 Examination of product as a WHOLE

 No Examination Review of Micro-Level

Details

 Experientially Based Intuitive, Affective

 Heuristic

 Use of Rules of Thumb





Peggy Brouse, Ph.D. SYST510

3

Perspectives for Cost

Estimation

 Holistic

 Determination of Micro-Level Details

 Determination of Cost or Value of These

 Sum These to Determine Overall Costs or

Value









Peggy Brouse, Ph.D. SYST510

4

Cost Models

 Definition:

 Management tools that predict life cycle

development costs for software acquisition

across system definition, development, and

deployment phases









Peggy Brouse, Ph.D. SYST510

5

Cost Models

 Purpose:

 To encompass software system costs and

schedule projections from requirements

analysis phase through product

acceptance and maintenance phases









Peggy Brouse, Ph.D. SYST510

6

Cost Models

 Cost Drivers:

 Number of delivered source lines of code

(SLOC), function points, tasks









Peggy Brouse, Ph.D. SYST510

7

Conventional Approach

 Base an initial cost estimate on amount

of code to be delivered. Estimate may

be modified by complexity factors.

 Lines of Code

 High Order Language LOC

 Source LOC

 Delivered SLOC





Peggy Brouse, Ph.D. SYST510

8

Example:

 Summary of Deliverable Source

Instructions:

Modules % DSI



New 19 56% 13491



Adapted 15 44% 2005



Total 34 15496

Peggy Brouse, Ph.D. SYST510

9

Difficulties with LOC:

 Complex instructions receive same

weight as simple statements

 It is not a uniform metric in that

machine-oriented language statements,

higher-order language statements, &

very-high-order language statements

given the same weight.





Peggy Brouse, Ph.D. SYST510

10

Difficulties with LOC:

 Programmers may artificially increase

their productivity by writing many simple

lines of code.

 May encourage poor-quality code by

encouraging rapid production of sloppy

code







Peggy Brouse, Ph.D. SYST510

11

Model Construction

 Identify Theory of How Factors Relate

 Establish Structural Framework

 Behavioral Observations, Physical

Observations, Hypotheses

 Theoretical

 Empirical









Peggy Brouse, Ph.D. SYST510

12

Model Construction

 Identify Unspecified Factors for Best or

Satisfactory Replication

 Use Data and Observations to Adjust

Unspecified Factors

 Estimate the Worth of the Model

 Based on Forecast or Prediction







Peggy Brouse, Ph.D. SYST510

13

Model Construction

 Model Validity

 Structural Validity

 One to One Correspondence - Model to Actual

System or Process

 Parametric Validity

 Unspecified Factors Accurately Identified

 Close Correspondence to Actual System









Peggy Brouse, Ph.D. SYST510

14

Model Construction

 Forecast or Prediction Validity

 Projects Future Events, Costs, or Schedules

within Acceptable Error Tolerances









Peggy Brouse, Ph.D. SYST510

15

Model Construction

 Use Regression Analysis to Develop a

Model

 Determine Candidate Factors and Data

Collection

 Describe Dependent Variables as a Function of

Independent Variables

 Experience-based Intuition, Existing Theory or

Knowledge

 Joint Observation of all Factors: not less than

10 times the number of Factors



Peggy Brouse, Ph.D. SYST510

16

Model Construction

 Postulation of Model or Structure

 Usually an Equation:

y=a+bx

 Choice of Estimation and Selection

Method









Peggy Brouse, Ph.D. SYST510

17

Model Construction

 Determine Regression Curve

 Obtain Needed Data

 Use Subportion in which Algorithms for

Factor Estimation have been Encoded









Peggy Brouse, Ph.D. SYST510

18

Model Construction

 Iteration and Sensitivity Analysis

 Test to Determine if Model is Accurate

 Completeness Criteria

 All Important Explanatory Factors Taken

into Account

 Do Results Make Sense

 Can Assertion Be Validated





Peggy Brouse, Ph.D. SYST510

19

Revised Intermediate

COCOMO (REVIC)

 Developed by Maj. Ray Kile, AF

Reservist

 Originally based on a database of 281

contracts involving software completed

at RADC

 Use 19 factors to compute person

months for a project



Peggy Brouse, Ph.D. SYST510

20

Revised Intermediate

COCOMO (REVIC)

 Factors are broken into 4 groups:

 Product

 Computer

 Personnel

 Project









Peggy Brouse, Ph.D. SYST510

21

Revised Intermediate

COCOMO (REVIC)



 Factors are generally given a rating

from Very Low (VL) to Very High (VH)

 Each rating corresponds to a numerical

value









Peggy Brouse, Ph.D. SYST510

22

Revised Intermediate

COCOMO (REVIC)

 When all 19 values are multiplied

together, an environmental factor (x) is

created

 Person Month Estimate:

 Months= a(KDSI) * x

a = depends on developmental mode (organic,

embedded, semidetached)







Peggy Brouse, Ph.D. SYST510

23

Taxonomy of Factors -

 Personnel Attributes

 PCAP (Programming Team Capability)

 NM> medium previous performance, avg.

educational background, avg. team

communication

 ACAP (Analyst Team Capability)

 NM> medium previous performance, avg.

educational background, avg. team

communication



Peggy Brouse, Ph.D. SYST510

24

Taxonomy of Factors -

 AEXP (Project Application Experience)

 NM> Design & development team's exp. on

projects of similar complexity of 2 to 5 years

relevant experience

 LEXP (Language Experience)

 NM> experience with programming language of

12-17 months









Peggy Brouse, Ph.D. SYST510

25

Taxonomy of Factors -

 VEXP (Designer's & Programmer's Exp.

w/Target Host Hardware & Software)

 NM> No use of HOL, not familiar w/host

machine, BUT has s/w experience









Peggy Brouse, Ph.D. SYST510

26

Taxonomy of Factors -

 Computer Attributes

 TIME (Execution Time)

 NM> CPU utilization between 60 & 70%

 STOR (Additional work for software

development due to constraints on memory

in the target computer)

 NM> Based on ratio of estimated storage

requirements to memory capacity





Peggy Brouse, Ph.D. SYST510

27

Taxonomy of Factors -

 VIRT (Degree of change machine is

projected to undergo during the design &

dev of the project)

 NM> 1 change every 3 months expected









Peggy Brouse, Ph.D. SYST510

28

Taxonomy of Factors -

 TURN (Computer Turn Around Time)

 NM> Avg. time for host or dev. computer to

complete an action Moderate difficulty in recovery

 VH> Failure could cause loss of life



 DATA (Extra effort required to create a

project that will maintain a sizable

database)

 NM> Based on ratio of size of database to # of

DSI



Peggy Brouse, Ph.D. SYST510

30

Taxonomy of Factors -

 CPLX (Software Product Complexity)

 NM> S/W has data proc. and stnd. math &

statistical routines









Peggy Brouse, Ph.D. SYST510

31

Taxonomy of Factors -

 Project Attributes

 MODP (Modern Programming Practices as

outline by Barry Boehm: top down reqs.,

structured design, walkthrus, structured

code)

 NM> Some use of MODP by exp. analysts (not

programmers)









Peggy Brouse, Ph.D. SYST510

32

Taxonomy of Factors -

 TOOL (Use of Software Tools)

 NM> Use of Basic Mini Tools: HOL compiler,

macro assembler, library, database aids









Peggy Brouse, Ph.D. SYST510

33

Taxonomy of Factors -

 SCED (Effect that Compressing or

Extending the Schedule will have on

person months)

 REVIC has the capability to set the actual

schedule in months which will in turn compute

the revised costs.









Peggy Brouse, Ph.D. SYST510

34

Taxonomy of Factors -

 Additional Attributes in REVIC

 SECU (Classified Security Application)

 CL> Project is Classified

 RISK (Management Reserve for Risk)

 VL> Very low program risk









Peggy Brouse, Ph.D. SYST510

35

Taxonomy of Factors -

 RUSE (Required Reusability)

 NM> No contractually required reuse of the

software

 RVOL (Requirements Volatility)

 NM> There will be small noncritical redirections









Peggy Brouse, Ph.D. SYST510

36



Related docs
Other docs by cuiliqing
7 Recipes from Joe A.
Views: 0  |  Downloads: 0
Re-installingXPMode
Views: 0  |  Downloads: 0
telefonica_en
Views: 0  |  Downloads: 0
3220 Chap 6 demos
Views: 0  |  Downloads: 0
chap history.docx
Views: 1  |  Downloads: 0
Subcontractor Bid Form - The Fountains
Views: 0  |  Downloads: 0
English
Views: 0  |  Downloads: 0
DESIGNER'S SCHEDULE USE
Views: 0  |  Downloads: 0
Security Service Providers
Views: 44  |  Downloads: 0
By registering with docstoc.com you agree to our
privacy policy

You are almost ready to download!

You are almost ready to download!