معماری چندکسبوکاری، تجاری و تجارت الکترونیک · فصل ۳ — Cost، Pricing، P&L، Entitlement و SLA · 240
SLA and Support Model
Build an SLA and support operating contract that separates SLI, SLO and SLA, defines measurement and consequence boundaries, maps support severity to response and escalation, and checks staffing and serviceability before a commercial promise is accepted. میتواند برای «SLA/Support Model» یک تصمیم bounded با constraints، cost/risk و stop/pivot condition طراحی کند.
Lesson summary
Build an SLA and support operating contract that separates SLI, SLO and SLA, defines measurement and consequence boundaries, maps support severity to response and escalation, and checks staffing and serviceability before a commercial promise is accepted.
میتواند برای «SLA/Support Model» یک تصمیم bounded با constraints، cost/risk و stop/pivot condition طراحی کند.
This lesson produces
میتواند برای «SLA/Support Model» یک تصمیم bounded با constraints، cost/risk و stop/pivot condition طراحی کند.
Who it is for
Foundation
Use a field map, one worked scenario and explicit state vocabulary before independent construction.
Repair
Identify the failed evidence dimension, use the smallest mutated fixture and rerun only the affected gate.
Experienced
Compress definitions; require trade-off defense, counterexample analysis and changed-context transfer.
Prerequisites
1) The problem this lesson solves
An SLA sold as “99.95%” can be operationally empty when nobody has defined what is measured, over which window, with which exclusions, what consequence applies, or whether support staffing can actually serve the promise. This lesson binds the commercial promise to operational evidence.
2) Lesson boundary and deliverable
The deliverable is SLA-SLO Support Operating Contract v1. ARC-021 does not own ARC-020 Plan/Entitlement Model or ARC-022 Anti-fork Customization, and it performs no live monitoring, staffing, billing-credit, or contract mutation.
3) Fact: SLI, SLO, and SLA are different
Google SRE describes an SLI as a quantitative service-level measure, an SLO as a target on that measure, and an SLA as an agreement with consequences when objectives are not met. A percentage by itself is therefore not a complete SLA.
4) Fact: prefer indicators relevant to the user
A convenient internal metric is not automatically a user-relevant indicator. If server availability looks healthy while user-facing failures rise, the measurement contract is incomplete and cannot support a commercial success claim.
5) Make the measurement contract explicit
For every tier, record sli_id, sli_definition, measurement_source, and measurement_window. Without those fields, even a precise target is not auditable.
6) Understand SLO before selling SLA
An SLO is an operational target and must fit validated service and dependency capability. A commercial SLA stricter than proven capability does not create reliability; it creates overcommitment.
7) Consequence distinguishes an SLA boundary
Do not automatically call a target an SLA when no consequence is defined. A consequence can be a service credit or another contractual remedy; the exact commercial schedule remains local business design, not a Google SRE mandate.
8) Keep support severity separate from availability
Severity, response target, resolution target, support hours, and escalation path form a distinct operating axis. Good availability evidence does not prove a 24/7 support promise is serviceable.
9) Staffing must cover the promise
If the agreement promises 24/7 critical response while staffing is weekday-only, the state remains HOLD_SUPPORT_UNSTAFFED until real coverage or a revised promise is evidenced.
10) Keep the dependency boundary visible
A customer-facing service cannot safely ignore a critical dependency whose objective constrains the end-to-end promise. Dependency evidence belongs in the decision, not in an invisible footnote.
11) Use exclusions and error budget carefully
exclusion_rule must be explicit and bounded; it must not erase genuine user-facing failure. error_budget_policy is an operating policy and does not replace contractual consequences or staffing evidence.
12) Core Evidence Contract
This lesson uses 20 evidence dimensions, 16 of them critical. The compact table below shows baseline, measurement failure, and support transfer; JSON/CSV retain the complete mapping.
| case | tier | SLI | SLO | measurement | SLA | consequence | support | staffing | dependency | state | evidence |
|---|---|---|---|---|---|---|---|---|---|---|---|
| baseline | PRO | user request success | 99.95%/30d | client+edge | 99.9% | 5% credit | SEV1 30m 24x7 | 24x7 | 99.95% | ADMISSIBLE | ev:arc021:baseline |
| measurement_failure | PRO | server uptime | 99.95%/30d | server only | 99.9% | 5% credit | SEV1 30m 24x7 | 24x7 | 99.95% | HOLD_MEASUREMENT_INVALID | ev:arc021:server-only |
| transfer | PRO | user request success v2 | 99.95%/30d | client+edge v2 | 99.9% | 10% credit | SEV1 30m 24x7 | 8x5 | 99.99% | HOLD_SUPPORT_UNSTAFFED | ev:arc021:transfer |
13) Typed states prevent fake success
HOLD_EVIDENCE_MISSING, HOLD_MEASUREMENT_INVALID, HOLD_SUPPORT_UNSTAFFED, HOLD_DEPENDENCY_RISK, REJECT_SLA_OVERCOMMIT, and BLOCKED_CONSEQUENCE_UNDEFINED are valid outputs. Missing evidence must never be guessed into ADMISSIBLE.
14) Approval and review triggers
A service tier becomes admissible only when measurement/support ownership is explicit and review_trigger covers changes to instrumentation, dependency objective, staffing coverage, or commercial consequence.
15) Lab and transfer
The lab uses eight fixtures and 48 assertions. In transfer, client-side SLI instrumentation appears, the dependency improves, overnight staffing disappears, and a financial service credit is added. The learner must recompute from the changed evidence; the baseline is not the oracle.
Assessment
There is no answer key in this lesson pack; answer it yourself and mark honestly. "Needs review" sends the lesson to your review queue.
ARC-021-Q1 retrieval
Explain the difference among SLI, SLO and SLA, including the role of consequence.
ARC-021-Q2 application
Build SLA-SLO Support Operating Contract v1 for the baseline fixture.
ARC-021-Q3 diagnosis
Why does server-only availability fail when user-facing failures rise?
ARC-021-Q4 transfer
Recompute the transfer case after client-side instrumentation improves, dependency objective improves, overnight staffing disappears, and a financial service credit is added.
Assessment rubric
Pass requires: correct SLI/SLO/SLA boundary; complete critical evidence; explicit non-success state when measurement/staffing/dependency/consequence is inadequate; no invented facts; and independent recomputation of transfer.
References & freshness
Case studies
Lesson visuals
Flow from user-relevant SLI through SLO, support/dependency evidence and SLA consequence to a bounded decision.
Lab files
هشت case مصنوعی را بررسی کنید، python run_checks.py را اجرا کنید و برای هر state ناموفق، field تعیینکننده را توضیح دهید. staffing، dependency، consequence یا measurement مفقود را با حدس پر نکنید.