jonnifyagile agents
jonnify / Agile Agent Workflow / A3 · The roadmap layer / A3.5 · Milestones and iterations

A3.5 · The roadmap layer

Milestones and iterations

A backlog is not a delivery plan. The roadmap groups rungs into milestones — each a usable capability boundary — and runs each rung through one iteration.

The exemplar is the Portal's real web chapter — F6 (Phoenix) — and its phoenix.roadmap.md: nine rungs f6.1…f6.9 grouped into three milestones (ship the catalog · make it live · ship to users), each rung an iteration over Ships, Demo, Harness, Feedback. Assign a rung on the right to see which milestone it completes.

Assign a rung to its milestone · pick one

phoenix.roadmap.md · three milestones, nine rungs 1 · Ship the catalog f6.1–f6.5.5 · browse a persistent catalog, add courses boundary 2 · Make it live f6.6–f6.7 · search and create without reloads, live boundary 3 · Ship to users f6.8–f6.9 · sign in, deploy, watch a dashboard boundary master invariant · every rung calls only the Portal facade
f6.1 → milestone 1 · Ship the catalog · rungs f6.1–f6.5.5 · at the end: browse a persistent catalog and add courses. A milestone is a usable capability boundary.

Three milestones, one iteration each rung

A2 produced a backlog: a value ladder of stories. The roadmap layer turns it into a delivery plan in two moves. First it groups the rungs into milestones — each a usable capability boundary, a point where a real role can stop and use the product. F6 draws three, verbatim from phoenix.roadmap.md: 1 · Ship the catalog (f6.1–f6.5.5), 2 · Make it live (f6.6–f6.7), 3 · Ship to users (f6.8–f6.9).

Second, it runs each rung through one iteration over four columns — Ships, Demo, Harness, Feedback asked — each row a PR-sized increment. The third dive then sequences the ladder by dependency and product priority. Re-grouping rungs edits the roadmap, never a spec; the order is a property of the delivery plan, not of the behaviour each rung points at.

the principle

Group the rungs into milestones — each a usable capability boundary — and run each rung through one iteration over Ships, Demo, Harness, Feedback. The most valuable, least risky thread ships first.

on the Portal

F6's three milestones over the one Portal facade: ship the catalog · make it live · ship to users. Re-grouping rungs edits the roadmap, never a spec.

A milestone is a place a real role can stop and use the product; the rungs in it are the iterations that get there.

The three dives

Each dive takes one move of the roadmap layer, in the arc shippable milestones → the iteration loop → sequencing the ladder: first what makes a milestone a usable boundary, then the single iteration each rung runs, then the order they climb in. Read them in order — A3.5.1 starts.

A3.5 builds on the anatomy module A3.3.2 · The iteration table, which read the table row by row; here the rungs are grouped into milestones and sequenced. Return to the A3 chapter navigation to continue.

References

The delivery-planning tradition behind milestones and iterations, and where it connects in the course.

Sources

Related in this course