Comparing Options, Recommending, and Naming Trade-Offs
Goal
Make a clear recommendation without hiding uncertainty or pretending one option dominates every dimension.
Compare Meaningful Alternatives
Begin with non-negotiables that eliminate infeasible options. Then weight the few drivers that matter most. Compare two or three meaningfully different shapes, including the current or simplest viable baseline. Include delivery effort, migration risk, operating skill, security, reliability, cost shape, and reversibility.
Avoid false numeric precision. A compact narrative table is often enough:
| Option | Strong fit | Main cost | Revisit when |
|---|---|---|---|
| Virtual machines | Legacy host control | OS and scaling operations | Application can adopt managed boundaries |
| Managed app platform | Small team, standard web runtime | Less host control | Runtime constraint blocks a requirement |
| Kubernetes | Many container workloads, platform team | Platform complexity | Scale or portability value fails to materialize |
Build the Decision Narrative
A useful recommendation says:
Because these priorities matter, choose this option now. It gives these benefits, accepts these consequences, depends on these assumptions, and should be revisited when this evidence changes.
For a moderate-scale application with one product team and no unusual runtime requirements, recommend a managed application platform. It reduces host and orchestration work, accelerating modernization. Accept reduced low-level control and validate networking, deployment, scaling, and runtime constraints. Reject Kubernetes for now because its platform cost does not buy required independence; reject raw virtual machines as the target because host operations do not add product value. Revisit if a broader container portfolio and capable platform team emerge.
Record the decision date, context, owner, options, consequences, evidence, and triggers. A decision record preserves reasoning, not permanence.
Common Mistakes
Listing options without recommending one.
Weighting every criterion equally.
Describing only the preferred option's benefits.
Ignoring migration and operating cost.
Treating uncertainty as a reason for an unconditional choice.
If Someone Asks You
Which option would you recommend, and why?
"Given the current team, workload, and delivery priorities, I recommend the managed platform. It removes undifferentiated host work and meets the known needs. We accept less infrastructure control, will validate the few platform constraints, and revisit if our workload portfolio or operating capability changes."
What You Should Remember
Recommend conditionally: connect priorities to a choice and its accepted consequences.
Questions to Check Your Understanding
Which constraint can eliminate an option before detailed comparison?
What belongs in a useful decision record?
Which new evidence should trigger reconsideration?
Further Study
Azure Architecture Center: Compute decision tree - See an official example of constraint-driven technology choice.
AWS Decision Guides - Review AWS decision guides while preserving the responsibility-first method.