Skip to content

Personas & User Stories — Personal Training OS

Artifact: the user tier above the system requirements (Phase 2 backfill) Date: 2026-07-04 · Traces down to requirement UIDs in spec/requirements/ptos.sdoc

System requirements say what the system shall do; this says who the users are and what they want. User stories bridge the two — each traces to the requirement areas that satisfy it.

Personas

Primary User — "the athlete-operator"

Recreational runner (training for the Example Half Marathon) and roller-hockey player — and the system's builder/PM. Tech-savvy, automation-minded, easily abandons tools that need manual upkeep. - Goals: one home for all training; low-effort capture; useful insights; gear tracking. - Frustrations: data scattered across apps; manual entry; trackers that go stale. - Context: captures on mobile and desktop; lives in Notion already.

Secondary User — "the co-athlete"

Trains alongside Primary User; wants her own goals and metrics tracked. Not the builder — needs it simple and low-friction, with her data treated as first-class, not an afterthought. - Goals: track her training/goals in the same shared system. - Frustrations: tools built only around one person.

User stories

ID As a… I want… so that… Traces to
US1 Primary User every run, race, and hockey game in one place I see my whole training picture TS, HOK, RACE
US2 Primary User capture to be automated or low-effort I actually keep using it CAL, SC2, NFR-USE-001
US3 Primary User shoe mileage tracked automatically I know when to replace shoes SHO-004
US4 Primary User hockey games to count only when I attend my training load is accurate HOK-004
US5 Secondary User my own goals and metrics tracked we train together in one system PEO-005, GOL, MET
US6 Primary User planned runs to come from my calendar I don't double-enter CAL
US7 Primary User training plans and drills linked in I know what to do each session TMP, DRL, SC5
US8 Primary User my data private and backed up sensitive health data is safe and recoverable NFR-PRIV-001, NFR-BKP-001