What a top-marked capstone looks like
A single, in-depth model project dossier: it walks the APEX concept end-to-end as if it were a finished BCSAI Capstone — from problem statement and landscape review through aims, methodology, implementation, evaluation, the written-report mapping, and the oral defense. Use it as a template for shape and rigour, not as content to copy. Every phase here is cross-linked to the course structure and the official rubric.
What this exemplar demonstrates
This page reads the APEX concept as if a student had carried it through the full capstone lifecycle and submitted it for marking. The goal is to make the shape of an excellent project legible: how each deliverable connects, where rigour shows up, and how the artefact maps onto the rubric.
🧪 The right project type
The syllabus offers three types — Prototype, Venture, Research. APEX is best framed as a Prototype: it builds a software proof-of-concept (the interactive ecosystem and its physiological/forecasting models), studies its behaviour, and benchmarks it against existing market solutions, while still making theoretical, methodological and empirical contributions.
🎯 What "good" means here
A strong Prototype is not just a working demo. It states a researchable problem, situates itself against competitors, defines measurable success criteria up front, and reports honest evaluation against them. APEX is structured to do exactly that — the demo is evidence, not the argument.
🔗 Three artefacts, one story
A top capstone keeps the report, the software and the oral defense telling one coherent story. Sections 08–09 show how the same threads (problem → method → evaluation) re-appear in each, so the panel never sees a contradiction between paper and product.
Problem statement & motivation
Every capstone earns its marks by opening with a problem worth solving. APEX's is the fragmentation of athlete data — and it is concrete, measurable, and grounded in a real user population.
The modern endurance athlete interacts with 8–15 sensors and roughly half a dozen apps in a single training week. Heart rate lives in one cloud, power in another, sleep in a third, and the coach's plan in a static PDF. Each platform is a silo with its own protocol (ANT+, BLE, FE-C) and its own export format (FIT, TCX, GPX). The athlete — or the coach — becomes the human integration layer, exporting CSVs, re-keying workouts, and reconciling numbers that never quite agree.
The motivation is sharpened by three facts: (1) the sensor and platform ecosystem is mature but deliberately non-interoperable; (2) adaptive, physiology-aware coaching is demonstrably effective but locked inside proprietary engines; and (3) the integration burden falls on exactly the users least equipped to carry it. This is a data-and-systems problem at heart — which makes it a legitimate computer-science capstone rather than a pure sports-science one.
↳ The live concept makes this tangible: see the fragmented-vs-unified toggle in concept site §01 · Motivation and the device inventory in §02 · Sensors.
Landscape review & the gap
The proposal requires at least five academic sources and a market comparison. A Prototype's "literature review" is really two reviews: the scholarly basis for its models, and the competitive landscape it must beat or complement.
📚 Scholarly basis
- Training-load modelling — Banister's impulse–response model and the CTL/ATL/TSB fitness–fatigue framework (Coggan & Allen) underpin the analytics layer.
- Critical power / FTP — Monod & Scherrer and Jones et al. ground the threshold-estimation maths.
- Environmental physiology — heat, humidity and altitude effects on sustainable power (Périard et al.) justify EnviroNormalization.
- Closed-loop / adaptive systems — control-theory framing for the plan→execute→ingest→adapt cycle.
🏁 Competitive landscape
- TrainingPeaks — best-in-class planning & CTL/ATL/TSB analytics, but largely manual and not adaptive.
- TriDot — genuine adaptive engine with environmental normalization; closed and triathlon-specific.
- Zwift — rich virtual-training environment; weak on long-horizon periodization.
- Strava — dominant social + logging layer; little coaching intelligence.
- Garmin / Wahoo — strong device clouds; ecosystem-locked.
Aims, research questions & success criteria
A Prototype still needs research questions — they are what separate an engineering exercise from a capstone. Each RQ below is paired with how it would be answered, and the whole set rolls up into measurable success criteria the evaluation (section 07) reports against.
Methodology & system design
The methodology chapter is where a Prototype earns its "methodological contribution" mark. It covers the architecture, the data model, the technology stack, and the modelling choices — each defended, not just listed.
Data model
The heart of the methodological contribution is a canonical activity schema that every source maps into: an Athlete (with rolling FTP/LTHR/CSS and CTL/ATL/TSB state), a stream of Activity records, and per-second Sample rows (timestamp, power, hr, cadence, pace, lat/lon, plus environmental context). Source-specific adapters are responsible for translation, so the analytics layer never sees a vendor format. This separation is what makes RQ1 answerable and what makes the system extensible to a new device without touching the models.
Technology stack (defended, not just chosen)
- Ingestion: Python (FastAPI) workers consuming webhooks + a FIT/TCX/GPX parser — chosen for the mature scientific-Python ecosystem the analytics depend on.
- Storage: time-series store for samples + relational store for athlete/activity metadata — the access patterns differ enough to justify both.
- Analytics: NumPy/pandas for the load and threshold models; pure functions so they are unit-testable against known cases.
- Interface: a static, dependency-light front end (the concept site itself) so the prototype is demonstrable on GitHub Pages with no backend at defense time.
Implementation highlights
The report does not narrate every line of code — it surfaces the decisions that mattered and shows one representative core feature in enough depth to prove competence. For APEX, the clearest example is the EnviroNormalization model.
🧩 Decision: adapters over a god-parser
Each device format gets its own small adapter to the canonical schema rather than one monolithic parser. Adding Wahoo support later meant ~80 lines, no core changes — the evidence for RQ1's extensibility claim.
🧪 Decision: pure, testable models
Physiological maths lives in pure functions with no I/O, so each can be unit-tested against textbook cases (a known FTP → known zones). This is what makes the section-07 results trustworthy.
⚙️ Decision: static demo, real models behind it
Shipping the demo as a static site removes deployment risk at defense time, while keeping the model code in a separate, reproducible package the second reader can run.
# Adjust a target power so that *training stress* stays constant # across heat, humidity, altitude and wind. Heuristic model used in # the prototype; coefficients would be fit per-athlete in production. def enviro_normalize(base_w, temp_c, humidity, altitude_m, wind_kmh): """Return adjusted target power (W) and a per-factor breakdown.""" factors = {} # Heat + humidity: cardiovascular drift above a ~18C neutral point heat_index = temp_c + 0.1 * max(humidity - 40, 0) factors["heat"] = -0.012 * max(heat_index - 18, 0) # Altitude: reduced VO2max above ~1000 m factors["altitude"] = -0.00006 * max(altitude_m - 1000, 0) # Wind: headwind costs power, tailwind returns some factors["wind"] = -0.004 * wind_kmh adj = 1.0 + sum(factors.values()) adj = max(0.80, min(1.05, adj)) # clamp to plausible range return round(base_w * adj), factors
Evaluation against the success criteria
The single most common reason a Prototype loses marks is a demo with no evaluation. Here each success criterion from section 04 is tested and reported honestly — including where the prototype falls short.
| ID | Success criterion | Method | Target | Result | Verdict |
|---|---|---|---|---|---|
| SC1 | Field coverage across ingest formats | Parse a corpus of FIT/TCX/GPX/webhook files; count mapped fields | ≥ 95% | 97.4% | ✓ Met |
| SC2 | Ingest-to-model latency | Time webhook receipt → updated athlete model (p95) | < 2 s | 1.3 s | ✓ Met |
| SC3 | Threshold estimation accuracy | Compare computed FTP/LTHR/CSS vs. lab/field-tested values | ±3% | ±2.6% | ✓ Met |
| SC4 | EnviroNorm stress consistency | Hold target stress; sweep conditions; compare modelled cost | ±5% | ±6.8% | ~ Partial |
| SC5 | Loop adapts in correct direction | Simulate a week; perturb performance & fatigue; check plan response | 100% | 100% | ✓ Met |
Report structure mapping & how it scores
The syllabus prescribes the report skeleton and a 25–50 page, APA-formatted, double-spaced paper. Below: how each required section is filled from this exemplar, and how the artefact maps onto the 60/40 rubric.
The oral-defense plan
15 minutes to present, up to 20 for questions, in front of a four-judge panel (supervisor, second reader, two outside panelists). The plan below is built around what each judge is actually listening for.
⏱️ The 15-minute arc
- 0–2 min — the problem, made vivid (the fragmented athlete).
- 2–4 min — the gap and the thesis claim (orchestration).
- 4–7 min — architecture & method, using the one diagram.
- 7–10 min — a live or recorded demo of one core feature.
- 10–13 min — results against the success criteria, SC4 shortfall included.
- 13–15 min — limitations, future work, and the one-sentence contribution.
👁️ What each panelist looks for
- Supervisor — that the work matches what they watched develop; no surprises.
- Second reader — methodological rigour and reproducibility from the paper alone.
- Outside panelists — can you defend choices you didn't have to make in front of your supervisor? Can you handle the gap question?
- All four — a coherent story across paper, product and talk.
Anticipated questions & prepared answers
Ethics, limitations & future work
The Discussion chapter is where comprehension shows. A strong capstone is candid about what it did not prove and what it would do next — and a project handling athlete biometrics must address ethics head-on.
⚖️ Ethics & data
- Health data sensitivity — HR, sleep and location are special-category personal data; the design assumes informed consent, encryption at rest/in transit, and data minimisation.
- GenAI use — disclosed via the syllabus's acknowledgment format; the written thesis itself is original, not AI-generated.
- Integrity — all submissions screened (Turnitin/GPTZero); draft history retained as provenance.
🚧 Limitations
- Models are heuristic and partly validated in simulation, not on a large real cohort.
- EnviroNorm under-performs at condition extremes (SC4).
- Device integrations are mocked at the API boundary, not certified against every vendor.
- No formal user study of coach/athlete workflow yet.
🔭 Future work
- Per-athlete coefficient fitting for all physiological models.
- Longitudinal validation on a real consented athlete dataset.
- Certified partner integrations (Garmin/Wahoo/Strava production APIs).
- A controlled trial: APEX-coached vs. static-plan athletes.
References & resources
An indicative APA-style reference set for this exemplar — the scholarly basis behind the models plus the artefacts referenced throughout. A real submission would expand these to the full citations used in text.