Part 4 · 1 chapters · ~10 min
Trade Studies
A structured comparison of three ways to generate clearance letters: criteria and weights agreed first with residency as a hard gate, evidence-backed scores, weighted totals, a sensitivity check that turns a tie into a product question, and the decision recorded with conditions to reopen it.
6
Structured comparison, weighting and the decision record
decide once, explain forever
- The question and the real options.
- Criteria and weights agreed first. Hard gates are kept separate from weights.
- Scores backed by evidence.
- Weighted totals (C 4.50, A 3.70, B out on the gate).
- Sensitivity: does the winner survive reasonable changes to the weights?
- Record it in an ADR, including what would reopen the decision.
code
// the arithmetic, and the sensitivity check, in a few lines
const criteria = { correctness: 0.30, ops: 0.20, latency: 0.15, residency: 0.15, cost: 0.10, flexibility: 0.10 };
const options = {
A: { correctness: 4, ops: 2, latency: 3, residency: 5, cost: 4, flexibility: 5 },
B: { correctness: 4, ops: 5, latency: 4, residency: 1, cost: 2, flexibility: 3 },
C: { correctness: 5, ops: 4, latency: 5, residency: 5, cost: 5, flexibility: 2 },
};
const gates = { residency: 3 }; // must score at least 3
const score = (o: Record<string, number>, w = criteria) =>
Object.entries(gates).some(([k, min]) => o[k] < min) ? null : Object.entries(w).reduce((s, [k, wt]) => s + o[k] * wt, 0);
score(options.A); score(options.B); score(options.C); // 3.70, null, 4.50
const flexHeavy = { ...criteria, correctness: 0.10, flexibility: 0.30 };
score(options.A, flexHeavy); score(options.C, flexHeavy); // 3.90, 3.90 → depends on how much layout mattersthe failure mode
Scoring the options first and then choosing weights produces whatever answer the strongest voice wanted, now with a table to back it. Ask for the weights in writing before anyone sees a score. That one ordering rule is most of the value of a trade study.
A TRADE STUDY
criteria and weights agreed first, options scored against them, the winner tested for robustness, the decision written down
swipe the figure sideways, or tap expand for full screen
1/6
the question
The question: how should clearance letters be generated? Option A: an HTML template rendered to PDF by a headless browser in the service. Option B: a managed document-generation SaaS. Option C: a PDF library generating the document directly in code.