BootcampCapstone · Deliverable 2

Work Breakdown, Schedule & Critical Path

Builds on Topic 4.

What you'll produce

A Work Breakdown Structure (WBS), a dependency-aware schedule, and an explicit critical path for the Unified Checkout program — the artifact that turns your charter's goal ("ship one unified checkout by end of Q3, hard deadline Sep 30") into estimable tasks, a realistic timeline with buffers anchored to the charter's real calendar dates, and a clear-eyed view of which two milestones will sink the Sep 30 date if they slip. This is the deliverable that separates a real program manager from a meeting-scheduler: it proves you can decompose vague scope into work, sequence it around dependencies (including the shared engineer and PCI sign-off), find the longest chain that sets the minimum possible end date, and then frame the squeeze as triple-constraint trade-offs you'd actually present to the VP — "for the same money and the same deadline, here is the scope we hold and the scope we move, and here's why." It is the single most-scrutinized artifact in a TPM interview's "walk me through your plan" round.

Instructions

  1. Start from the charter goal, not a blank page. Copy your Deliverable 1 SMART goal and the in-scope list to the top. Every task you write must trace to something in scope; if a task doesn't, either it's out of scope (cut it) or your charter was incomplete (note it as an assumption).
  2. Build the WBS top-down in 3 levels. Level 1 = the program. Level 2 = 5–8 major workstreams (e.g., Discovery & Spec, Design, Core Checkout Engine, PCI/Compliance, Partner API, Migration & Cutover). Level 3 = tasks small enough to estimate and assign — each should be 2–10 working days of effort. If a task is bigger than ~10 days, split it; if smaller than ~1 day, fold it up. Number them (1.1, 1.2, 2.1…) so you can reference them in the schedule.
  3. Estimate each task in working days, and get the estimate from the doer's perspective. Write what one team working on it would take, not wall-clock time. Note who owns it. Humans are over-optimistic, so estimate honestly and add buffer at the schedule level (step 6), not by padding every task secretly.
  4. Map dependencies explicitly. For each task, list what must finish first (its predecessors). This is where the program lives or dies — PCI sign-off gates launch; the partner API contract gates partner integration; design must precede build for each flow. Flag any task that depends on the shared senior engineer (Sam) or external Legal/PCI review, because those are the constraints you don't fully control.
  5. Lay it out as a Gantt-style table with columns: ID · Task · Owner · Duration (days) · Predecessors · Start week · End week. Convert effort to a calendar by respecting dependencies and team capacity (two squads can run parallel streams; one shared engineer cannot be in two places). Anchor program weeks to your Deliverable 1 calendar dates, not to an abstract quarter — reuse the same start date and hard deadline you wrote in the charter (in the worked example: W1 = week of Mon Jun 15; hard deadline Sep 30), so W1…W15 each map to a real Monday–Friday range and your milestones M1–M6 land on real dates. A reviewer should be able to read "end of W15" and see "that's the week of Sep 21–25, with launch wrapping by Sep 30" — if your weeks don't tie back to the charter's dates, the schedule isn't built on the charter, it's built on a different planet.
  6. Add buffer deliberately, where risk concentrates. Don't smear 20% across everything. Put a named buffer block before the milestones most likely to slip — typically PCI sign-off and partner integration — and state the buffer size. A schedule with zero buffer on a fixed deadline is a fiction.
  7. Trace the critical path — and make it checkable. Find the longest chain of dependent tasks from start to the launch milestone — that chain sets your minimum possible end date. Tasks on it have zero slack; a one-day slip there is a one-day slip to launch. Tasks off it have float. State the path explicitly as a sequence of task IDs, and annotate each node with the week it ends (e.g. 3.1b (ends W8)) so a reader can walk the chain straight off your Gantt table and confirm the end-weeks climb monotonically with no idle gap at the joins. The longest chain is the one whose end-weeks reach the deadline with the least slack between links — show that, don't just assert it. Then prove it beats the runner-up: tally the nearest competing chain (typically the PCI branch) the same way and show it lands earlier or with float.
  8. Name the 1–2 milestones most at risk of breaking the Sep 30 deadline, and for each write the triple-constraint trade-off you'd bring to the VP: if this slips, which lever (scope / time / cost) do we pull, and what's the recommendation? This is the deliverable's payoff — not "here's a plan" but "here's the plan, here's where it breaks, and here's the decision I need from you."

Worked example

(Program: NovaPay "Unified Checkout." Charter goal (verbatim from Deliverable 1): merge web, mobile, and hosted-link checkout into one PCI-compliant flow, live for 100% of merchants by Sep 30, tied to the BigCommerce partner launch and a marketing push. Calendar from the charter: kickoff Mon Jun 15; hard deadline Sep 30; that is a 15-week build window, so the schedule below runs W1 = week of Jun 15 … W15 = week of Sep 21–25, with the final rollout (M6) wrapping by Sep 30. Teams: Squad A and Squad B (4 engineers each), 1 designer (Dana), 1 data analyst (Raj), Legal/Compliance (PCI), the Partner API team, Support. Sam is a senior engineer shared 50% with the Ledger program.)

Week-to-calendar anchor (so every "W" below ties back to the charter):

WDates (Mon–Fri)Charter milestone
W1Jun 15 – Jun 19Kickoff
W2Jun 22 – Jun 26M1 — Spec signed off (1.3)
W5Jul 13 – Jul 17M2 — Design approved (2.2)
W8Aug 03 – Aug 07M3 — Core engine orchestration done (3.1b)
W10Aug 17 – Aug 21M4 — PCI/QSA sign-off + all three flows built (4.3, 3.2–3.4)
W11Aug 24 – Aug 28M5 — Partner joint test passed (5.3)
W15Sep 21 – Sep 25 → Sep 30M6 — 100% rollout live (6.2), hard deadline

Work Breakdown Structure (Level 2 workstreams → Level 3 tasks):

  • 1. Discovery & Spec — 1.1 Audit the 3 legacy flows & data fields (3d) · 1.2 Write the unified checkout spec / acceptance criteria (5d) · 1.3 Sign-off from Product + Eng leads (2d)
  • 2. Design — 2.1 Unified checkout UX flows + states (8d) · 2.2 Design review & merchant-feedback loop (3d)
  • 3. Core Checkout Engine — 3.1 Unified payment-orchestration service (12d → split: 3.1a tokenization & vault, 6d; 3.1b orchestration & routing, 6d) · 3.2 Web flow on new engine (8d) · 3.3 Mobile flow on new engine (8d) · 3.4 Hosted-link flow on new engine (5d)
  • 4. PCI / Compliance — 4.1 PCI scope assessment with Legal (4d) · 4.2 Remediate gaps (vault, logging) (6d) · 4.3 External QSA review & sign-off (10d, mostly wait time)
  • 5. Partner API (BigCommerce) — 5.1 Agree API contract with Partner team (5d) · 5.2 Build partner integration (8d) · 5.3 Joint end-to-end test with BigCommerce (5d)
  • 6. Migration & Cutover — 6.1 Merchant migration tooling + data backfill (6d) · 6.2 Phased rollout (5% → 50% → 100%) (5d) · 6.3 Support runbook + agent training (3d)

Schedule (Gantt-style — W = program week; W1 = wk of Jun 15, W15 = wk of Sep 21–25, deadline Sep 30):

IDTaskOwnerDur (d)PredecessorsStartEnd
1.1Audit legacy flowsRaj + Squad A3W1W1
1.2Write unified specPM + Eng leads51.1W1W2
1.3Spec sign-off (M1)Product/Eng21.2W2W2
2.1UX flows + statesDana81.3W3W4
2.2Design review (M2)Dana + merchants32.1W4W5
4.1PCI scope assessmentSam + Legal41.3W3W3
5.1Partner API contractPM + Partner team51.3W3W3
3.1aTokenization & vaultSquad A (+Sam)62.2, 4.1W6W6
3.1bOrchestration & routing (M3)Squad A63.1aW7W8
4.2Remediate PCI gapsSquad A63.1a, 4.1W7W8
3.2Web flowSquad A83.1bW9W10
3.3Mobile flowSquad B83.1bW9W10
3.4Hosted-link flowSquad B53.1bW11W11
5.2Partner integrationSquad B85.1, 3.1bW9W10
4.3QSA review & sign-off (M4)External + Sam104.2W9W10
5.3Joint test w/ BigCommerce (M5)Squad B + Partner55.2, 3.2W11W11
BUFBuffer (PCI + partner risk)104.3, 5.3W12W13
6.1Migration toolingSquad A63.2, 3.3, 3.4W12W13
6.3Support runbook + trainingSupport + PM33.2, 3.3W12W12
6.2Phased rollout 5→50→100% (M6)Both squads54.3, 5.3, 6.1, BUFW14W15

M6 (6.2) finishes end of W15 (Sep 25), leaving Sep 26–30 as final go/no-go margin before the Sep 30 hard deadline. The 15-week window — vs. a crammed 13 — is what buys the 2-week buffer (BUF, W12–W13) sitting between the riskiest converging milestones (M4 PCI, M5 partner) and the irreversible cutover.

Critical path (with the end-week of each node, read straight off the table so you can check it):

1.1 (W1) → 1.2 (W2) → 1.3 (W2) → 2.1 (W4) → 2.2 (W5) → 3.1a (W6) → 3.1b (W8) → 3.2 (W10) → 5.3 (W11) → BUF (W13) → 6.2 (W15)

The end-weeks climb monotonically and every link starts the week its predecessor ends — no idle gap anywhere on the chain — which is exactly what makes it the longest path: there is no slack to absorb a slip. A one-day slip on, say, the orchestration build (3.1b) shifts 3.2, then 5.3, then BUF, then 6.2 — a one-day slip to the Sep 30 launch. Total span = 15 weeks (W1 → W15), the full window.

Why this chain beats the PCI branch (the runner-up), tallied the same way:

1.1 (W1) → 1.2 (W2) → 1.3 (W2) → 4.1 (W3) → 3.1a (W6) → 4.2 (W8) → 4.3 (W10) → BUF (W13) → 6.2 (W15)

Walk it and the gaps show up: 4.1 ends W3 but 3.1a can't start until W6 (it's waiting on design, 2.2 → W5, which is on the other branch), and 4.3 ends W10 but BUF doesn't begin until W12 because BUF also waits on 5.3 (W11). Those waits are float — the PCI branch reaches the W12 convergence point with ~1 week to spare, so it is the shadow critical path, dangerous but not the binding one. The build/partner chain is binding because it arrives at BUF with zero days to spare. That is the longest-chain claim the rubric grades — and now it's arithmetic a learner can verify, not an assertion.

The two milestones most at risk, framed as triple-constraint trade-offs for the VP:

  1. PCI/QSA sign-off (4.3, M4, ends W10 / wk of Aug 17) — the deadline-killer. It's 10 days of mostly external wait time we don't control, gated by remediation (4.2), and Sam (50% shared with Ledger) is the only engineer who knows the vault. The BUF (W12–W13) was placed precisely to absorb one round of QSA findings — but if findings need a second remediate-and-re-review cycle, the 2-week buffer is gone and there's no slack before the Sep 30 cutover. Trade-off: time and cost are fixed by the charter, so the lever is scoperecommendation: launch at 100% on web + hosted-link (which carry 80% of PCI-sensitive volume) and ship mobile as a fast-follow (target wk of Oct 5) if QSA findings appear. Alternatively, cost: buy Sam's other 50% from the Ledger program for W6–W10 (Jul 20 – Aug 21) — a real ask the VP can grant — to de-risk the one-person vault dependency. We recommend the cost lever first, scope-cut as the contingency.
  2. Partner joint test (5.3, M5, ends W11 / wk of Aug 24) — the dependency we don't own. BigCommerce's test environment availability is outside our control and gates the partner half of launch. Trade-off: holding time and cost, the lever is scope sequencingrecommendation: decouple the partner integration from the core launch. Ship unified checkout for direct merchants by Sep 30 (hits the marketing date), and treat the BigCommerce partner path as a fast-follow in the wk of Oct 5. This protects the immovable date while honestly admitting the partner piece carries the most schedule risk. The one decision we need from the VP now: is "unified checkout live for direct merchants by Sep 30, partner path one sprint behind" an acceptable definition of "done"? Answering that in W2 (wk of Jun 22) is worth more than any amount of replanning in W12 (wk of Aug 31).

Rubric

The app's AI scores the learner's submission against these criteria and gives feedback. Levels: Needs work (1) / Solid (2) / Excellent (3). Passing = every criterion at Solid or above.

  • WBS decomposition — 1: vague phases or tasks too big to estimate · 2: 3-level breakdown with estimable tasks that trace to the charter scope · 3: clean, numbered, MECE workstreams where every leaf task is 2–10 days, assignable, and clearly maps to an in-scope charter item.
  • Estimates & buffer — 1: no estimates or invisible padding everywhere · 2: per-task durations with at least one deliberate, sized buffer · 3: realistic doer-perspective estimates with buffer concentrated where risk actually lives (PCI, partner), and a stated reason.
  • Dependencies & schedule — 1: a flat task list with no sequencing · 2: a Gantt-style table with predecessors and start/end weeks that respect dependencies · 3: parallel streams across the two squads, the shared-engineer and external-review constraints honored, and a schedule that visibly fits inside the fixed window and lands launch on or before the Sep 30 deadline.
  • Critical path — 1: missing, or just "the longest list" with no dependency logic · 2: an explicit dependent chain identified as the critical path with its length · 3: the true longest chain annotated with each node's end-week so it's checkable against the Gantt table (end-weeks rise monotonically, no idle gap at the joins), plus the nearest "shadow" path (e.g., PCI sign-off) tallied the same way to show it lands with float — the longest-chain claim is demonstrated, not asserted.
  • Triple-constraint trade-offs — 1: states risks but no decision · 2: names the 1–2 at-risk milestones and proposes a scope/time/cost lever for each · 3: a VP-ready recommendation per milestone — the specific lever, the contingency, and the one decision needed now — written as something an exec could approve in one read.
  • Coherence with the charter — 1: disconnected from Deliverable 1, or the schedule uses an abstract timeline (e.g. a generic "13-week quarter") that contradicts the charter's dates · 2: reuses the charter's goal and scope, and the program weeks are anchored to the charter's real start date and hard deadline · 3: every task, milestone (M1–M6), the buffer placement, and the trade-offs trace cleanly from the charter's SMART goal, named roles, and dates — "end of W_n" can be read back as a real calendar date that lands on or before the charter deadline.