How to Read a CPM Schedule Health Score
How to Read a CPM Schedule Health Score
Product managers and schedulers often ask the same first question after an API call: “Is 72 good?” The honest answer is: it depends what failed inside the score. A composite health score is a triage instrument built on Critical Path Method (CPM) mathematics and industry health metrics—not a forecast of contractual completion.
This article walks through the Bellator health score response so you can brief stakeholders without overselling the number.
What the score is (and is not)
| It is | It is not |
|---|---|
| A 0–100 composite of structural and CPM diagnostics | A Monte Carlo P50/P80 finish date |
| Aligned to DCMA / GAO / AACE concepts used in health metrics | A substitute for full PAM 200.1 checklist reporting |
| Deterministic for the same input schedule | A judgment on team performance or earned value alone |
Bellator computes health via POST /api/v1/health/score. See the quickstart for the minimum payload.
Anatomy of the response
A typical successful response includes:
score— 0 to 100 compositegrade— letter band derived from the scorebreakdown— weighted component scores (for example float erosion, criticality, structural integrity)top_signals/ findings — human-readable reasons the score movedrecommendations— prioritized next actionsmetadata— task count, timing, API version
Grade bands (default mapping)
| Grade | Score range | How to talk about it |
|---|---|---|
| A | ≥ 90 | Structurally strong; monitor execution |
| B | ≥ 80 | Good with localized issues |
| C | ≥ 70 | Usable but needs cleanup before formal review |
| D | ≥ 60 | Material network or float problems |
| F | < 60 | Not review-ready; fix logic/structure first |
Treat bands as communication aids. Contracts may impose stricter gates (for example “no open ends” regardless of score).
Worked example: same score, different stories
Imagine two schedules both scoring 74 (C):
| Schedule | Dominant breakdown weakness | First fix |
|---|---|---|
| Alpha | Float erosion high; many near-critical tasks | Protect remaining float; reduce soft constraints |
| Beta | Structural integrity low; dangling activities | Close open ends; repair missing successors |
If you only report “74,” leadership cannot choose a fix. Always pair the number with one sentence from top signals.
Example narrative:
Health score 74 (C). Primary drag is float erosion on the design–procure chain; three open ends remain in commissioning. Recommend closing open ends this week, then re-score before the DCMA package.
Reading the breakdown like a scheduler
Exact component names can evolve with the API version; the reading method stays stable:
- Sort components ascending — worst first.
- Map each weak component to a physical schedule action (add logic, split long tasks, remove hard constraints, refresh baseline).
- Re-run CPM mentally: does the critical path still make sense to a superintendent?
- Only then escalate to DCMA 14-Point or delay forensics.
Float erosion
Float erosion asks whether total float is thin across too much of the network. High critical-path density with little float means any slip becomes a finish slip.
Criticality / critical path density
A schedule where “everything is critical” is usually a modeling problem (missing calendars, constraints, or level-of-effort pollution)—not heroic urgency.
Structural integrity
Missing predecessors/successors, circular logic, or invalid dates destroy trust in every downstream metric. Fix structure before arguing BEI or CPLI.
Minimal API example
curl -X POST "https://api.bellatorsi.com/api/v1/health/score" \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"tasks": [
{"id": "T1", "duration_days": 5, "predecessors": []},
{"id": "T2", "duration_days": 10, "predecessors": ["T1"]},
{"id": "T3", "duration_days": 5, "predecessors": ["T2"]}
]
}'
For richer diagnostics, include planned dates, baselines, and task_type so LOE/summary/hammock tasks are excluded from topology statistics automatically.
How health score relates to other Bellator numbers
| Signal | Best use |
|---|---|
| Health score | Fast triage, product UX, CI on pull requests of schedule JSON |
| DCMA 14-Point | Formal checklist / surveillance package |
| Schedule Risk Index (SRI) | Pre-simulation risk posture (deterministic) |
| Delay analysis (AACE 29R-03) | Attribution after variance exists |
See also: What is DCMA 14-Point? and Schedule Risk Index: what the numbers mean.
Stakeholder one-pager template
Copy/paste for status emails:
Schedule health: {score}/100 ({grade})
Tasks analyzed: {n}
Top signals:
1. ...
2. ...
3. ...
Actions this week:
- ...
Re-score after: {date or milestone}
Next steps
- From health score to DCMA in one integration
- Playground — run sample schedules without wiring production keys
- API reference — health score
Sources
- DCMA PAM 200.1 schedule assessment concepts (critical path, float, baseline execution)
- GAO Schedule Assessment Guide — maintain a valid critical path
- AACE recommended practices on schedule health metrics (e.g. RP 92R-19 family)
- Bellator standards documentation
Share
Related posts
Part 1 · DCMA Deep Dive
What is DCMA 14-Point Schedule Analysis?
DCMA 14-Point is the Defense Contract Management Agency’s PAM 200.1 checklist for schedule integrity. Learn what the checks cover and how to automate them with Bellator.
5 min readSchedule Risk Index: What the Numbers Mean
The Schedule Risk Index (SRI) is a deterministic 0–100 pre-simulation risk signal built from network structure and CPM diagnostics—not a probabilistic finish date.
3 min readHow We Use the API: From Health Score to DCMA
A reference integration flow for product teams: normalize schedules, triage with /health/score, enforce DCMA gates, and only then run heavier forensics.
2 min read