Empirical Estimation Models | COCOMO model

By
Advertisement
An estimation model for computer software uses empirically derived formulas to predict effort as a function of LOC and FP. The empirical data that support most estimation models are derived from a limited sample of projects.

The structure of estimation models: A typical estimation model is derived using regression analysis on data collected from past projects. The structure of such models takes the form

E = A + B x (ev) C

Where A, B and C are empirically derived constants, E is the effort in person-months, and ev is the estimation variable.

LOC oriented models
        E = 5.2 * ( KLOC )0.91        Walston-Felix model
        E = 5.5 + 0.73 * ( KLOC )1.16    Bailey-Basili model
        E = 3.2 * ( KLOC )1.05        Boehm simple model
        E = 5.288 * ( KLOC )1.047        Doty model
FP oriented models
        E = -13.39 + 0.0545 * FP        Albrecht and Gaffney model
        E = 60.62 * 7.728 * 10-8 * FP3    Kemerer model
        E = 585.7 + 15.12 FP        Matson, Barnett, Mellichamp

The COCOMO model:
The Constructive Cost Model (COCOMO) is a procedural software cost estimation model developed by Barry W. Boehm. The model parameters are derived from fitting a regression formula using data from historical projects.

The hierarchy of COCOMO models takes the following form:

Model 1. The Basic COCOMO model is a static, single-valued model that computes software development effort (and cost) as a function of program size expressed in estimated lines of code (LOC).

Model 2. The Intermediate COCOMO model computes software development effort as a function of program size and a set of "cost drivers" that include subjective assessments of product, hardware, personnel and project attributes.

Model 3. The Advanced COCOMO model incorporates all characteristics of the intermediate version with an assessment of the cost driver's impact on each step (analysis, design, etc.) of the software engineering process.

The COCOMO models are defined for three classes of software projects. Using Boehm's terminology these are:
(1) Organic mode–relatively small, simple software projects.
(2) Semi-detached mode –an intermediate (in size and complexity) software projects.
(3) Embedded mode –a software project that must be developed within a set of tight hardware, software and operational constraints.

The Basic COCOMO equations take the form:

E = ab KLOC bb
D = cb E db

Where E is the effort applied in person-months, D is the development time in chronological months and KLOC is the estimated number of delivered lines of code for the project (express in thousands).
 The coefficients ab and cb and the exponent’s bb and db

The intermediate COCOMO model takes the form:

E = ai KLOC bi x EAF

Where E is the effort applied in person-months and KLOC is the estimated number of delivered lines of code for the project. The coefficient ai and the exponent bi

The COCOMO can be applied to three different kinds of software project classes:

    organic mode projects: small, simple projects developed by small teams of software engineers, that work with less than rigid requirements;

    semi-detached mode projects: medium in size and complexity projects, developed by teams with mixed experience, that work with mixed requirements;

    embedded mode projects: projects that have to be developed under tight hardware and software constraints.

0 comments:

Post a Comment