COCOMO Models and Phases in the Detailed COCOMO Model
The COCOMO family (COCOMO) provides structured methods to estimate software effort, schedule, and related cost using size and empirically derived cost drivers. The classic Boehm COCOMO models are commonly presented in three variants: Basic COCOMO) (Intermediate COCOMO) and Detailed COCOMO).2
High-level idea
COCOMO uses:
- Effort estimation)
- Schedule estimation)
- Product size proxy)
- Cost drivers)
In the Detailed COCOMO variant, effort is allocated across development phases using a phase-based distribution and effort multipliers that account for the attributes of each phase/process context.2
Footnotes
Different COCOMO Models
1) Basic COCOMO (early rough order of magnitude)
Goal: quick early estimates when limited information exists.
Typical inputs: mainly project size (e.g., KLOC) and a small set of global assumptions.
What it outputs: overall effort and schedule with coarse calibration.
2) Intermediate COCOMO (size + cost drivers)
Goal: more accurate estimates by incorporating cost drivers.
Key idea: cost drivers affect the overall effort magnitude and are used in the effort equation to refine the estimate.2
3) Detailed COCOMO (phase-based + cost drivers + effort distribution)
Goal: highest accuracy by (a) estimating effort by phases and (b) using more granular effort multipliers and phase effort distribution.
In Detailed COCOMO, the model is structured so that:
- effort is estimated for multiple development activities/phases
- phase effort fractions are used to distribute the total effort across lifecycle segments
- cost drivers include attributes across product, computer/platform, and project factors (and are often further refined by stage)2
Footnotes
Phases in the Detailed COCOMO Model (what “detailed” means)
In the Detailed COCOMO model, the development effort is partitioned into lifecycle phases. A commonly presented breakdown is:
- Product Engineering / System Engineering (often treated as early/requirements-oriented work)
- Preliminary Design
- Detailed Design
- Implementation (Coding)
- Integration & Testing
These phases are used to apply:
- effort distribution (the fraction of total effort expected in each phase)
- (optionally, depending on the COCOMO version/reference) phase-relevant cost driver ratings and multipliers
This phase partitioning is crucial because it reflects that different parts of development scale differently with complexity and technological constraints, so the total effort is not uniformly distributed across the lifecycle.2
Footnotes
How Detailed COCOMO estimates effort across phases
- 1Step 1
Start with a size measure (commonly KLOC in classic COCOMO). This size drives the baseline effort magnitude.
- 2Step 2
Rate project/product/platform attributes as cost drivers) and convert them to an overall multiplier used in the effort equation.
- 3Step 3
Use the Detailed COCOMO formulation to compute overall development effort, typically expressed in person-months.
- 4Step 4
Apply phase effort distribution fractions (from the Detailed COCOMO model) to allocate the total effort across phases like preliminary design, detailed design, coding, and testing.
- 5Step 5
Use the Detailed COCOMO schedule estimation relationship (or sum phase durations) to obtain an overall development timeline.
Visualizing the phase-based distribution
The following diagram shows the conceptual structure: total effort is computed first, then distributed across phases to reflect realistic lifecycle workload distribution.
Conceptual example: phase effort distribution (illustrative)
This chart illustrates the idea of phase allocation in Detailed COCOMO (values are placeholders).
Pro Tip
When you use Detailed COCOMO, ensure your phase breakdown aligns with your organization’s lifecycle (e.g., whether “integration” is separated from “testing”). Misaligned phase definitions can distort the phase distribution and reduce estimator reliability.
Warning
COCOMO’s numeric outputs depend heavily on how you measure size (e.g., KLOC vs. function points) and how you rate cost drivers. Treat the result as an estimate with uncertainty, not a precise prediction.
Common confusion points
COCOMO quick recall
Knowledge Check
Which COCOMO variant is designed for phase-based estimation with detailed cost-driver usage?