انتقل إلى المحتوى
أمين أبوزيد
SRC-003

المفاضلات المعمارية

  • 8 درس
  • 4 ساعة تدريب (تقدير)
في هذه الصفحة 9 موضوعات

نص الدروس والتمارين باللغة الإنجليزية، بينما تبقى واجهة الموقع وعناوين الدروس بالعربية.

نظرة عامة

الموضوعات

  • ميزانيات التعقيد
  • كلفة التجريد
  • القرارات القابلة للعكس وغير القابلة للعكس

تعلّم أولًا

4 ساعة تدريب (تقدير)

مخرجات التعلم

  1. Identify the decisions that are expensive to reverse and spend design effort on them first.
  2. Evaluate options against prioritized quality attributes using a lightweight ATAM-style review.
  3. Account for complexity as a cost (cognitive load, operational burden, onboarding).
  4. Record trade-offs, risks, and sensitivity points in ADRs.

الدروس

  1. 01كل قرار هو مفاضلة
  2. 02أبواب باتجاه واحد وباتجاهين
  3. 03ميزانيات التعقيد
  4. 04كلفة التجريد
  5. 05تقييم خفيف للعمارة
  6. 06المخاطر ونقاط الحساسية ونقاط المفاضلة
  7. 07عرض عملي: تقييم ثلاثة تصاميم لتخزين الطلبات
  8. 08عرض عملي: مراجعة معمارية تغيّر رأيها

المختبر والتمارين

Lab

SRC-003-LAB1 · Option analysis

Outcomes: 1–4 · Time: ~2 h

  1. Take the utility tree from SRC-002; list the decisions for scaling the order subsystem and mark one-way doors.
  2. Define three candidate designs; describe each at its strongest.
  3. Evaluate each against the top scenarios with a lightweight ATAM-style review; include complexity and operational cost.
  4. Record risks, sensitivity points, and trade-off points.
  5. Write an ADR for the chosen design, including rejected options.

Acceptance: rejected options documented with honest strengths.

Exercises (case-based; six exercises)

IDOutcomeTask
SRC-003-EX011Sort twelve order-subsystem decisions into one-way and two-way doors and say where design effort should go.
SRC-003-EX022Evaluate "add a Kafka-based outbox" against two utility-tree scenarios using the scenario-by-option grid.
SRC-003-EX033Estimate the complexity cost (components, runbooks, pages, onboarding) of introducing a service mesh for a team of six.
SRC-003-EX043A colleague wants a generic repository layer "to swap databases". Argue for or against with costs.
SRC-003-EX054Classify four findings as risk, sensitivity point, or trade-off point and record each with scenario and owner.
SRC-003-EX062Review 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.

اختبار ذاتي لك: لا توجد درجات، ولا يُحفظ أو يُرسل أي شيء. اختر إجابة ثم تحقق منها، ويمكنك المحاولة مرة أخرى كما تشاء.

  1. 1Which decision is most like a one-way door?O1
  2. 2A common failure is:O1
  3. 3Which makes a door easier to reverse?O1
  4. 4In a lightweight ATAM-style review you walk through:O2
  5. 5The best input to an architecture evaluation is:O2
  6. 6Operational burden belongs in a comparison because:O3
  7. 7A weak reason for an abstraction layer is:O3
  8. 8A decision that improves one attribute and hurts another is a:O4
  9. 9A parameter whose value strongly changes an attribute (for example replica lag) is a:O4
  10. 10A rejected option in an ADR should be described:O2

الجزء العملي

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).

اكتب للبحث في المستويات والمراحل والوحدات والدروس.