EE Data Process Map

One idea for resolving the timing-vs-dependencies tension: a clean cyclical overview (what happens across the year, at a glance) sitting on top of a timeline drill-down (the real multi-year detail, with a dependency chain you can trace). Same data, two zoom levels. React freely — this exists to be argued with.

What is on each tab

  • Timeline detail — every milestone on a real calendar, one lane per system. Track width, month grid, dependency trace and the draggable current-date line live here.
  • Cyclical overview — the same records wrapped into a circle, to show what recurs rather than when exactly.
  • Data table — every underlying record in one list, for checking the data behind both visuals.
  • Milestone detail — clicking a marker on either visual opens its date history and its dependencies, read from the change log alongside the milestone data.

The time window

  • The window control on the Timeline and Cyclical tabs picks how much of the calendar both views show: 1, 2 or 3 years. The two views always show the same period — changing it on one changes it on the other.
  • At 2 or 3 years the ring is partitioned, with a divider and a year label at each January.
  • A system with records outside the chosen window is labelled in its lane, so a narrow window never looks like missing data.

Before you read the dates

  • Positions are month-precise. Where several events share a month they are spread evenly across that month's cell to keep them apart — that spacing is ordering, not a day of the month.
  • Systems with no records show as an explicitly empty lane or ring rather than being dropped.
  • The current-date line is the only day-precise element on the page.
Placeholder — to be completed before this is shared.
  • Data current as of: TBC
  • Source of the milestone dates: TBC
  • Owner / who to contact about a wrong date: TBC
  • Update cadence: TBC
  • Where this is hosted: TBC

Timeline detail — the calendar view. One lane per system across the selected window.

  • Window sets the period, and the Cyclical tab follows it. Narrowing the window is what relieves crowding: at one year each month cell gets three times the width it has at three.
  • Month grid switches itself off when a month cell is too narrow to read as a guide; the hint next to it says how narrow.
  • Small dots with no label are crowded milestones — hover for the name, or use Show all labels.
  • Click any marker for its record: the date history, what it waits on, and what waits on it. It opens at the foot of the window, and a Show detail button appears on the marker itself, which puts the same content in a draggable panel beside the dot. Click the marker again, or press Escape, to close.
  • Trace dependencies, in that record panel, draws the connections on the lanes, and the depth choice sits beside it. Direct links shows only what the record itself joins to; Full chain follows every connection to its end — on the current data that reaches 32 milestones from most starting points, so start direct. The panel also reports the counts and any member outside the window. This is timeline-only: the controls do not appear on the other tabs.
  • A chain member outside the selected window has no marker, so its link is drawn as a dashed line to the edge of its own lane — that lane tells you which system the chain continues into, and the record panel names the members themselves. Widen the window to bring them into view.
  • The date handle above the lanes is draggable. Focus it and use ← → for a day, shift + ← → for a month, Home to return to today. It turns amber once moved, and a reload always restores today.

Cyclical overview — the recurring rhythm. The selected window wrapped into a circle, read clockwise from January.

  • Rings run outer to inner in the same order as the legend above; hover any marker for its system, name and month.
  • Each slot is one month of one year — 12 slots at a 1-year window, 24 at 2 years, 36 at 3. Nothing is folded, so no slot is ambiguous.
  • Click any marker for its date history and dependencies, at the foot of the window, or via Show detail on the marker for a panel beside the dot. The timeline and the ring open the same record.
  • A ring with no markers says whether the system is awaiting data entirely, or simply has nothing inside this window.

Data table — every record behind both visuals. Built from the same array the timeline and ring read, so it cannot drift out of step with them.

  • Filter by system, by a month range, by frequency, or by searching the milestone text. Filters combine, and the count below the table reports what is showing.
  • Month is the milestone's real position. Where several events share a month the visuals spread them across the month's cell to keep them apart — that spacing is ordering, not a day of the month.
  • Milestone names read as the program year followed by the event — "2028 Measure Package Submissions". The program year is the year the work belongs to, not the year of the deadline beside it; the two differ on 22 of the 60 records. Searching the milestone text searches the whole name, so a year finds every record in that program year.
  • Frequency now carries a value on every record, so its filter is live. Reviewed by and Reviewed date are still empty on every record and nothing is inferred into either.
  • Use this view to check the dataset. Anything wrong here is wrong in both visuals.