المفاضلات المعمارية
في هذه الصفحة 9 موضوعات
نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.
نظرة عامة
الموضوعات
- ميزانيات التعقيد
- كلفة التجريد
- القرارات القابلة للعكس وغير القابلة للعكس
تعلّم أولًا
4 ساعة تدريب (تقدير)
مخرجات التعلم
- Identify the decisions that are expensive to reverse and spend design effort on them first.
- Evaluate options against prioritized quality attributes using a lightweight ATAM-style review.
- Account for complexity as a cost (cognitive load, operational burden, onboarding).
- Record trade-offs, risks, and sensitivity points in ADRs.
الدروس
المختبر والتمارين
Lab
SRC-003-LAB1 · Option analysis
Outcomes: 1–4 · Time: ~2 h
- Take the utility tree from SRC-002; list the decisions for scaling the order subsystem and mark one-way doors.
- Define three candidate designs; describe each at its strongest.
- Evaluate each against the top scenarios with a lightweight ATAM-style review; include complexity and operational cost.
- Record risks, sensitivity points, and trade-off points.
- Write an ADR for the chosen design, including rejected options.
Acceptance: rejected options documented with honest strengths.
Exercises (case-based; six exercises)
| ID | Outcome | Task |
|---|---|---|
| SRC-003-EX01 | 1 | Sort twelve order-subsystem decisions into one-way and two-way doors and say where design effort should go. |
| SRC-003-EX02 | 2 | Evaluate "add a Kafka-based outbox" against two utility-tree scenarios using the scenario-by-option grid. |
| SRC-003-EX03 | 3 | Estimate the complexity cost (components, runbooks, pages, onboarding) of introducing a service mesh for a team of six. |
| SRC-003-EX04 | 3 | A colleague wants a generic repository layer "to swap databases". Argue for or against with costs. |
| SRC-003-EX05 | 4 | Classify four findings as risk, sensitivity point, or trade-off point and record each with scenario and owner. |
| SRC-003-EX06 | 2 | Review an ADR with a strawman alternative; rewrite the alternative honestly and re-decide. |
أظهر الحلول
- EX01 One-way: shard key, public API shape, event schemas, cloud region and vendor, data model. Two-way: library choices, internal refactors, pool sizes. Spend analysis on the first group; make the second quickly and revisit.
- EX02 Outbox improves durability and consistency of event publishing (+), adds a relay process and lag monitoring (-), neutral on checkout latency; the grid names the reason per cell.
- EX03 Adds control plane, sidecars, certificate rotation, new failure modes, mesh-specific debugging; likely not worth it for six engineers unless a requirement (mTLS everywhere) demands it.
- EX04 Against: JPA and SQL features leak through; cost is indirection and lost features; benefit speculative. For: only if two real implementations are needed now.
- EX05 Examples: single primary at 10x peak is a risk; replica lag is a sensitivity point; synchronous replication is a trade-off point (durability vs commit latency).
- EX06 A fair alternative states its real benefit (for example simpler operations), then compares on scenarios; the decision may change or be confirmed with stronger reasons.
Outcome 4 is also covered by the lab ADR.
Workplace evidence: an ADR or design review where you recommended against a more complex option.
الاختبار
Outcomes: O1 one-way and two-way doors · O2 lightweight evaluation · O3 complexity as cost · O4 trade-offs in ADRs.
اختبار ذاتي لك: لا توجد درجات، ولا يُحفظ أو يُرسل أي شيء. اختر إجابة ثم تحقق منها، ويمكنك المحاولة مرة أخرى كما تشاء.
الجزء العملي
Six case exercises SRC-003-EX01 to EX06 plus the lab. Pass: quiz at least 8/10, at least five exercises correct, and an ADR defended against assessor challenges with honest rejected options.
أخطاء شائعة
Strawman alternatives; ignoring operational cost; deciding reversible things slowly and irreversible things quickly.
التقييم
ADR defense with assessor challenges.
دليل من بيئة العمل
An ADR or design review where you recommended against a more complex option.
الصلة بالمسار الوظيفي
Solution options (ARC-033) and decision-making under uncertainty (SRA-013).