Milestones do not run in a line
The milestone map reads left to right, which makes it look like a queue. It is not. M4 cannot start until M3 finishes; nothing technical can be committed until the hires land; you cannot ingest into infrastructure that does not exist yet. Some of these links are physics (you genuinely cannot do B before A) and some are preference (you would rather do B after A). Confusing the two is how teams "parallelise it later" straight into a stall. This session sorts the links, finds the ones that are truly non-negotiable, and traces the longest chain so you know the real minimum duration. You walk out with Northwind's dependency graph and its hard-gate list - Session 4's risk input.
Dependency types: hard vs soft 5 min live
A dependency is a link that says "the timing of B depends on A". There are two things to name about every link: its type (which end connects to which) and its nature (mandatory/hard, or discretionary/soft). Finish-to-start is by far the most common - B starts when A finishes - but start-to-start and finish-to-finish appear on any real plan. Get the type wrong and your schedule lies; get the nature wrong and you either over-constrain or over-promise.
LiveThe four types, plainly3 min▶
- Finish-to-start (FS) - B starts only after A finishes. The default and most common: M4 governed DW build starts after M3 legacy migration finishes.
- Start-to-start (SS) - B can start once A has started. Governance definition and infra setup can begin together once the project kicks off; neither waits for the other to finish.
- Finish-to-finish (FF) - B cannot finish until A finishes. Data-quality certification cannot complete until reconciliation completes.
- Mandatory vs discretionary - a hard (mandatory) dependency is physics: you genuinely cannot ingest before the landing zone exists. A soft (discretionary) dependency is preference: you would rather profile all sources before designing, but you could overlap if pushed.
Self-studyLead & lag2 min read▶
Real dependencies are rarely instantaneous. Lead and lag fine-tune the timing on top of the type.
- Lag - a forced wait after A before B can proceed. A finish-to-start with 2-day lag: reconciliation finishes, then a 2-day sign-off window before certification starts.
- Lead - a permitted head start, letting B begin before A fully finishes. UAT prep can start a few days before migration completes (a negative lag).
- Where it bites: lag hides slack that looks like progress, and lead is where "we overlapped to save time" quietly turns a soft dependency into a risk.
The hard gates 5 min live
A hard gate is a dependency so mandatory that everything downstream is blocked until it clears - no overlap, no "we'll catch up later". Northwind has three, and they are the spine of the whole plan. Hiring gates every technical milestone. Governance sign-off gates the architecture. The infra landing zone gates any ingestion. Miss one and you are not slow, you are stalled.
LiveRecognising a true hard gate3 min▶
Not every "important" dependency is a gate. A gate passes three tests at once: downstream cannot start until it clears, no amount of overlap buys time, and skipping it forces a rebuild rather than a patch. Northwind's three:
- Hiring gates all technical milestones (M2-M6). No committed technical milestone until the Data Architect and Data Engineering Lead are onboarded. This is the hard dependency named in the charter, now sequenced.
- Governance sign-off gates the M2 architecture. Classification, PII tagging, retention, and access tiers must be signed off before the warehouse design is finalised - or the tiers become a late re-architecture.
- Infra landing zone gates any ingestion. The VPC, IAM, secrets, and security baseline must exist before a single byte lands, or you are ingesting into an unhardened environment.
The tell of a real gate is that people keep proposing to "start anyway and backfill". On Northwind, someone will suggest ingesting into a half-built landing zone to "save two weeks". That is the moment the gate earns its name: the two weeks saved become two months of re-permissioning and a security review. A gate you can talk your way past was never a gate.
Self-studyThe "we'll parallelise it later" trap2 min read▶
The most expensive schedule mistake is treating a hard dependency as soft to hit a date. It always looks like progress at first - two workstreams running at once - and the cost lands weeks later when the downstream work has to be redone on the correct foundation.
- The pattern: "We can't wait for governance, let's design the warehouse now and add the tiers after." Then PII surfaces in a "public" schema and the design is re-poured.
- Why it fools people: the parallel start shows visible motion, and the rework cost is deferred past the next status meeting.
- The discipline: before overlapping any link, prove it is soft. If skipping the predecessor would force a rebuild, it is hard - and you wait.
Critical path & parallel tracks 5 min live
The critical path is the longest chain of dependent milestones - and its length is the minimum time the whole project can take, no matter how many people you add elsewhere. Everything not on it has slack (float): time it can slip without moving the end date. That slack is where parallel tracks live. On Northwind, the hiring, governance, and infra tracks run in parallel early precisely because they have to converge before the critical chain can proceed.
LiveFinding the critical path3 min▶
To find the critical path, list the chains of dependent milestones and pick the longest. On Northwind the chain M1 -> M3 -> M4 -> M5 -> M6 is the spine: raw load, then migration, then the governed DW, then exploration, then production. Each finish-to-start link is mandatory, so the chain's total length is the floor on the schedule.
- The rule: the longest dependent chain sets the minimum duration. Adding people to a parallel track does not shorten it - only compressing the critical chain does.
- Slack lives off the path: the hiring, governance, and infra tracks run in parallel early. They have float - but only until they must converge to unblock M2 and the chain.
- Watch the convergence points: a parallel track with slack becomes critical the moment its slack runs out. The hiring track has the least room, because it gates everything technical.
Self-studyFloat, slack & fast-tracking2 min read▶
When the critical path is longer than the deadline allows, you have two compression moves - and both trade something.
- Float (slack): the time a non-critical milestone can slip without moving the end date. Total float across a track tells you how much cover you have before it turns critical.
- Fast-tracking: overlapping milestones that were planned in sequence (starting M5 exploration on the certified slice of M4 before all of M4 finishes). It buys time but adds risk, and it is only legal on soft links.
- Crashing: adding resource to a critical milestone to shorten it. Costs money and has diminishing returns - nine engineers do not load an archive in a ninth of the time.
List Northwind's dependencies as FS pairs ★ 7 min · everyone writes
Take the M1-M6 map from Session 2. Write each dependency as a finish-to-start pair, "A -> B": M1 -> M3 (migrate after archive lands), M3 -> M4 (governed DW after migration), M4 -> M5 (explore on certified data), M5 -> M6 (production after exploration).
Add the gating links: infra landing zone -> M1, M2 infra -> M3, governance sign-off -> M2, M2.1 hires -> everything technical. Note which are FS and whether any are start-to-start (governance and infra can start together).
Tag each link's nature - hard or soft. Be honest: is M4 -> M5 fully hard, or could exploration start on a certified slice (a soft, fast-trackable link)?
Read a volunteer's pairs aloud - the room checks the arrows point the right way and no link is missing.
Writing dependencies as plain "A -> B" pairs is unglamorous and it is exactly what saves you. A director once cut a stalled data programme's recovery time in half simply by making the team write every link as a pair on one page - three "dependencies" everyone had assumed turned out to point the wrong way.
Mark the hard gates ★ 9 min · everyone marks
Run each link through the three-part gate test: downstream cannot start until it clears, no overlap buys time, skipping it forces a rebuild. Mark the ones that pass all three.
You should land on Northwind's three: hiring gates all technical milestones, governance sign-off gates the M2 architecture, infra landing zone gates any ingestion. Draw the gate symbol on each.
Write the governing sentence on the page, verbatim: "No committed tech milestone until hires land." This is the line you point at when someone proposes to start M3 before M2.1 clears.
Compare with a neighbor: did anyone mark a fourth "gate" that is really just a soft preference? Discuss why it fails the rebuild test.
Trace the critical path ★ 6 min · everyone traces
From your FS pairs, find the longest dependent chain end to end. On Northwind it is M1 -> M3 -> M4 -> M5 -> M6. Highlight it - this is the critical path and its length is your minimum duration.
Circle what runs in parallel: the hiring track, the governance track, and the infra track early on. Note that each has slack only until it must converge to unblock M2 and the chain.
Identify the track with the least slack - hiring - and write why: it gates every technical milestone, so its float is the thinnest on the whole plan.
This week ◐ 30 min total
- Map the dependencies of a real initiative from your desk - write every link as an "A -> B" pair and tag each hard or soft. You will find at least one arrow pointing the wrong way.
- Find one hidden hard gate: pick something in your org being run in parallel "to save time" and test whether skipping the predecessor would force a rebuild. If it would, it is a gate you are ignoring.
- Read the self-study cards above: lead & lag, the parallelise-it-later trap, and float/fast-tracking.
- Optional deep end: skim a Critical Path Method primer or the RAID dependency-log practice - both underpin Sessions 4 and 5.
Three questions before you go 🎯 ◐ 90 seconds
1 · What is the difference between finish-to-start and start-to-start?
FS is the default: M4 starts after M3 finishes. SS lets work overlap: governance and infra can both start at kick-off without waiting for each other to finish. Type and nature (hard/soft) are separate questions.
2 · What makes a dependency a HARD gate rather than a preference?
All three tests at once. Northwind's gates - hiring, governance sign-off, infra landing zone - each pass all three. A "gate" you can talk your way past was never a gate.
3 · What does the critical path determine?
The longest dependent chain sets the floor on the schedule. Adding people to a parallel track will not shorten it; only compressing the critical chain does. Everything off the path has slack.
Frameworks covered & their origins
This course teaches the working 80% of each tool and cites the canon - full standards stay the deep end for anyone who wants them.