CIS 375 SOFTWARE ENGINEERING

University Of Michigan-Dearborn

Dr. Bruce Maxim, Instructor

Cost Estimation:

Types Of Costs:

Types Of Cost Models:

Expert Judgment (experienced guessing):

A = The most pessimistic estimate.

B = The most likely estimate.

C = The most optimistic estimate.

(A + 4B + C)

Ê = 6

(Weighted average; where Ê = estimate).

Delphi Technique:

    1. A group of experts, make "secret" guesses.
    2. These "secret" guesses are used to obtain a group average.
    3. The group average is presented to the group.
    4. The group, once again makes "secret" guesses.
    5. Individual guesses are again averaged.
    6. If new average is different from previous, then goto (4).
    7. Else Ê = new average.

Wolverton Model:

(Uses a software type matrix):

{old, new} ´ {easy, moderate, hard}.

Estimate models in terms of: lines of code.

C(k) = S(k) - Ci,j(k)

Cost of module k = Size of module k - Value from matrix.

System = å C(k).

Function Points:

(Not dependent on estimating lines of code).

Parameter

Simple

+

Average

+

Complex

=

Fi

Distinct input items

3( )

+

4( )

+

6( )

=

?

Output screens/reports

4( )

+

5( )

+

7( )

=

?

Types of user queries

3( )

+

4( )

+

6( )

=

?

Number of files

7( )

+

10( )

+

15( )

=

?

External interface

5( )

+

7( )

+

10( )

=

?

Total

=

?

# of F.P.’s = T(total) * ([0.65 + 0.01](empirical constants) * Q)

{Q = score from questionnaire}

Function Point Questionnaire:

(importance of {0-5; 0 = minimal & 5 = essential})

    1. Backup.
    2. Data communication.
    3. Distributed processes.
    4. Optimal performance.
    5. Heavily used operating system.
    6. On-line data security.
    7. Multiple screens.
    8. On-line master file update.
    9. Complex inputs, queries, outputs.
    10. Complex internal processing.
    11. Reusable code.
    12. Conversion or installation.
    13. Multiple user sites.
    14. Ease of use.

Cost of producing one function point? May be organization specific.

Problems With Expert Judgment: