f8b21af4be
10_Wiki/Topics 대규모 정리: - 오류 캡처/미완성 stub 문서 227개 제거 - 교차폴더 중복 43클러스터 병합 (63파일 → redirect) - 링크명 정규화: 깨진 링크 수정·redirect 직결·개념 매핑 ~2,400건 - 카테고리 MOC 6개 신규 생성 - Graph 섹션 미해결 related-keyword 링크 10,058건 제거 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
5.3 KiB
5.3 KiB
id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
| id | title | category | status | canonical_id | aliases | duplicate_of | source_trust_level | confidence_score | verification_status | tags | raw_sources | last_reinforced | github_commit | tech_stack | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| wiki-2026-0508-pros-cons-table | Pros Cons Table | 10_Wiki/Topics | verified | self |
|
none | A | 0.9 | applied |
|
2026-05-10 | pending |
|
Pros Cons Table
매 한 줄
"매 column = option, 매 row = criterion, 매 cell = signed weight". 18C Benjamin Franklin 의 "Moral Algebra" 의 modern 의 weighted decision matrix. 매 LLM era 에서 매 "let's enumerate pros/cons" 의 prompt pattern 으로 popular.
매 핵심
매 형태
- Simple 2-col: Pros | Cons. 매 quick gut-check.
- Weighted scoring: Criterion × Weight × Score per option.
- Decision matrix (Pugh): Baseline + relative ±.
- WSJF (SAFe): Cost of Delay / Job Size — agile prioritization.
- MoSCoW: Must / Should / Could / Won't.
매 components
- Options: 매 mutually-exclusive choice.
- Criteria: 매 weighted dimension (cost, risk, impact).
- Scores: 매 1–5 or -2..+2.
- Total: Σ(weight × score).
- Tiebreaker rule: 매 explicit, 매 not vibes.
매 응용
- Tech selection (Postgres vs MySQL).
- Hire/no-hire scorecard.
- Architecture ADR.
- Product feature prioritization.
- LLM-assisted decision drafting.
💻 패턴
Simple Markdown
| Option | Pros | Cons |
|----------|-------------------------------|----------------------------|
| Postgres | Mature, JSON, extensions | Heavier ops |
| SQLite | Zero ops, file-based | No concurrency at scale |
| DuckDB | Analytical, columnar | Not OLTP |
Weighted scoring (Markdown)
| Criterion | W | Postgres | SQLite | DuckDB |
|-----------------|---|----------|--------|--------|
| Ops simplicity | 3 | 2 | 5 | 4 |
| Concurrency | 4 | 5 | 1 | 2 |
| Analytics speed | 2 | 3 | 2 | 5 |
| Ecosystem | 2 | 5 | 4 | 3 |
| **Weighted** | | **38** | **30** | **31** |
Python decision matrix
import pandas as pd
criteria = {
"ops": (3, {"postgres": 2, "sqlite": 5, "duckdb": 4}),
"concurrency": (4, {"postgres": 5, "sqlite": 1, "duckdb": 2}),
"analytics": (2, {"postgres": 3, "sqlite": 2, "duckdb": 5}),
}
options = ["postgres", "sqlite", "duckdb"]
scores = {opt: sum(w * s[opt] for w, s in criteria.values())
for opt in options}
print(pd.Series(scores).sort_values(ascending=False))
LLM prompt template
Compare {{options}} for {{decision}}.
For each, list:
- 3 pros (specific, measurable)
- 3 cons (specific, measurable)
Then weighted scoring:
- Criteria: {{criteria_with_weights}}
- Score 1-5
Output Markdown table + recommendation paragraph + key tradeoff.
Pugh matrix (vs baseline)
Baseline = Postgres (current)
| Criterion | SQLite | DuckDB | Mongo |
|-----------------|--------|--------|-------|
| Ops simplicity | + | + | - |
| Concurrency | -- | - | + |
| Analytics | - | ++ | 0 |
| **Net** | -2 | +2 | 0 |
ADR template (decision record)
# ADR-007: Choose DuckDB for analytics layer
## Context
OLTP on Postgres. Analytics queries timing out.
## Options
1. Materialized views in Postgres
2. ClickHouse
3. DuckDB embedded
## Decision
DuckDB — embedded, zero ops, columnar.
## Consequences
+ 50x query speedup
- New skill, immature operator tooling
Weighted MCDA (numpy)
import numpy as np
weights = np.array([0.3, 0.4, 0.2, 0.1])
scores = np.array([
[2, 5, 3, 5], # postgres
[5, 1, 2, 4], # sqlite
[4, 2, 5, 3], # duckdb
])
totals = scores @ weights
ranked = np.argsort(-totals)
매 결정 기준
| 상황 | Approach |
|---|---|
| 2-3 options, gut check | Simple pros/cons |
| 4+ options, need defense | Weighted scoring |
| Iterating on baseline | Pugh matrix |
| Architecture / team-wide | ADR |
| Backlog ordering | WSJF / RICE |
기본값: Weighted scoring 5 criteria × 3 options.
🔗 Graph
- 부모: Decision-Making
- 변형: Pugh-Matrix · ADR
- Adjacent: OKR
🤖 LLM 활용
언제: 매 broad option 의 enumerate, 매 missing criterion 의 surface, 매 first-pass draft. 언제 X: 매 final weight 결정 — 매 stakeholder context 의 LLM 의 X. 매 numeric score 의 false precision 의 위험.
❌ 안티패턴
- No weights: 매 critical criterion 의 trivial criterion 과 same. 매 rigging.
- Score after deciding: 매 confirmation bias. 매 weight 의 score 전에 lock.
- Too many criteria: 매 7+ 의 noise. 매 top 3-5.
- Symmetric scoring: 매 모든 option 의 비슷한 total — 매 differentiator 의 부재.
- Hidden disqualifier: 매 "must" 가 weighted 의 안에 묻힘. 매 hard filter 의 pre-screen.
🧪 검증 / 중복
- Verified (Franklin's letter to Priestley 1772, Pugh 1991, MCDA literature).
- 신뢰도 A.
🕓 Changelog
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 |
| 2026-05-10 | Manual cleanup — pros/cons + weighted decision frameworks. |