معماری چندکسب‌وکاری، تجاری و تجارت الکترونیک · فصل ۳ — Cost، Pricing، P&L، Entitlement و SLA · 237

Local Compute Costing

Build a local-compute TCO and unit-cost model that separates sunk cost, avoidable cost, capacity ownership, depreciation or replacement horizon, power, facility, license, support and utilization, then derives a bounded cost per useful compute unit with explicit scope. می‌تواند برای «Local Compute Costing» یک تصمیم bounded با constraints، cost/risk و stop/pivot condition طراحی کند.

Local Compute Costing — fa-IR

Lesson summary

Build a local-compute TCO and unit-cost model that separates sunk cost, avoidable cost, capacity ownership, depreciation or replacement horizon, power, facility, license, support and utilization, then derives a bounded cost per useful compute unit with explicit scope.

می‌تواند برای «Local Compute Costing» یک تصمیم bounded با constraints، cost/risk و stop/pivot condition طراحی کند.

This lesson produces

می‌تواند برای «Local Compute Costing» یک تصمیم 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 real problem: “we already bought it, so it is free” is not a cost model

Assume two GPU servers were purchased last year. Finance calls the next workload nearly free because the invoice is already paid. Engineering ignores power, support, and idle capacity. Another analyst assigns the entire office lease to the two servers and concludes local compute is extremely expensive. Both views can be wrong because cost scope, cost behavior, and the denominator are not explicit.

2) Boundary and deliverable

The deliverable is Local Compute TCO & Unit-Cost Model v1. It supports a bounded internal decision; it does not define statutory accounting, tax treatment, live procurement, or a production migration. ARC-017 owns pricing floors and ARC-019 owns client P&L. This lesson owns only the local-compute economics slice.

3) Fact: on-premises TCO is more than server purchase price

AWS Migration Evaluator describes on-premises TCO coverage that includes server/storage, software/license/support, and facility/maintenance categories such as rack, infrastructure, power, and real estate. This is useful evidence about cost categories, but it does not decide MAKNOW sunk-versus-avoidable treatment.

4) Fact: utilization is an evidence input, not a slogan

AWS Migration Evaluator uses utilization evidence such as peak, average or median and percentile statistics when modeling source infrastructure. Therefore “usually idle” or “almost always busy” should not be a preference statement. Average utilization alone still does not prove reliability or safe capacity headroom, and this lesson makes no such claim.

5) Fact: Unit Economics is not limited to public cloud

FinOps Unit Economics links technology spend to units of use or value and distinguishes resource-efficiency unit metrics from business unit metrics. The practice can span technology categories including data centers. This lesson therefore declares a useful unit such as useful GPU-hour rather than dividing by an undefined “system size.”

6) Lock decision scope and measurement period first

asset_id, capacity_unit, and measurement_period must be explicit before cost math. If the model is annual, recurring costs and useful work must be normalized to that same period. Comparing annual license cost with monthly useful work, or changing the capacity-unit definition mid-model, produces a precise-looking but invalid unit cost.

7) Separate sunk history from forward ownership cost

acquisition_cost may be historical and already paid. If that cash no longer changes with today’s decision, it should not be counted again as a future avoidable cash cost. The opposite shortcut is also wrong: owned hardware is not automatically free. This lab uses a decision-control ownership basis: annual_ownership_cost = max(depreciation_basis - remaining_value, 0) / replacement_horizon. This is a local decision model, not statutory depreciation or accounting advice.

8) Include recurring costs only when they are in scope

The lab includes license, support, power, facility, maintenance, and compute-pool shared allocation in total_relevant_cost. Annual power is derived from average power_kw across the annual measurement period and energy_rate. An avoidable support renewal cannot be relabeled sunk to make cost look lower, while unrelated office overhead cannot be allocated to the compute pool merely to make local compute look higher.

9) Utilization, idle capacity, and useful work must reconcile

If full capacity is 17,520 GPU-hours per year and utilization is 35%, useful_work_units should be about 6,132 and idle capacity is 65%. If utilization doubles while useful work stays at the old value, the denominator is inconsistent and the decision becomes DISPUTED. Unit cost is meaningful only when its useful-work denominator is reproducible.

10) Baseline: owned hardware is not free, but historical purchase is not double-counted

The baseline fixture has historical acquisition of 24,000, sunk cost of 24,000, a decision-control basis of 18,000, remaining value of 3,000, and a three-year replacement horizon, giving an annual ownership basis of 5,000. License is 2,400, support 1,800, annual power 3,784.32, facility 3,000, maintenance 1,200, and shared allocation 800. Total relevant cost is 17,984.32. At 35% utilization and 6,132 useful units, unit cost is about 2.93. Because utilization is below the lab’s 40% governed minimum, the state is RESIZE, not “FREE” and not a generic failure.

11) Two negative cases: fake sunk support and unrelated overhead

If a support renewal is avoidable but classified as SUNK, the model artificially suppresses future cost and must become DISPUTED. If allocated_shared_cost comes from unrelated office overhead, the model artificially inflates local compute and is also DISPUTED. The state exists to stop an attractive number from hiding a classification error.

12) Core evidence contract

Every local-compute model carries the following 21 traceable dimensions. Sixteen are critical; a positive verdict cannot be produced when decisive evidence is absent.

FieldCriticalPurpose
asset_idYESStable local-compute asset/pool identifier
capacity_unitYESDeclared full-capacity unit, e.g. GPU-hour
acquisition_costYESHistorical purchase amount; not automatically future avoidable cost
sunk_costYESHistorical amount classified as already incurred under the bounded decision
remaining_valueNODeclared residual/remaining value used by the local ownership basis
replacement_horizonYESYears remaining in the bounded refresh/replacement horizon
depreciation_basisNODecision-control ownership/replacement basis used by this lesson
license_costYESRecurring license cost in the measurement period
support_costYESRecurring support cost in the measurement period
power_kwYESAverage measured power draw used for the period model
energy_rateYESEnergy price per kWh
facility_costYESIn-scope facility/rack/infrastructure cost for the compute pool
maintenance_costNOIn-scope maintenance cost
utilization_pctYESMeasured useful utilization percentage
idle_capacityYES100 - utilization_pct
useful_work_unitsYESMeasured useful work denominator for unit cost
measurement_periodNOPeriod boundary shared by costs and useful work
allocated_shared_costNOExplicitly in-scope shared cost allocation only
unit_costYESTotal relevant cost / useful work units
sensitivity_driverYESNamed assumption/cost driver requiring sensitivity attention
evidence_refYESTrace to synthetic row or reviewed evidence

13) What the typed states mean

LOCAL_OK means decisive evidence is complete, the utilization boundary passes, and unit cost does not exceed the declared ceiling. RESIZE means utilization is below the governed minimum and the capacity footprint should be reconsidered. REPRICE means unit cost exceeds the declared commercial/internal ceiling and must be reflected in pricing or placement. HOLD preserves missing evidence; DISPUTED preserves an invalid classification, scope, or denominator. These states are MAKNOW design, not AWS or FinOps mandates.

14) Transfer: utilization improves while several cost drivers worsen

In the transfer fixture, utilization rises from 35% to 70%, energy rate rises from 0.18 to 0.24, annual license cost becomes 3,600, and refresh is pulled forward so the replacement horizon falls from three years to two. Annual ownership basis rises to 7,500 and power cost to 5,045.76; total relevant cost is about 22,945.76. With 12,264 useful units, unit cost is about 1.87. Despite higher energy, license, and ownership terms, higher utilization reduces unit cost. This is why the full model must be recomputed rather than treating any single driver as the oracle.

15) Lab, assessment, and source freshness

The offline lab contains eight fixtures: low-utilization baseline, doubled utilization, support misclassification, unrelated overhead, missing energy rate, useful-work mismatch, license shock, and the full transfer. All checks are synthetic and deterministic; no credentials or production data are needed. AWS Migration Evaluator and FinOps Unit Economics were rechecked on 2026-09-15. A material semantic change before review due requires a new package version and requalification rather than silent mutation of the frozen Bible.

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-018-Q1 retrieval

Explain why historical acquisition cost can be sunk while owned local capacity still should not be modeled as automatically zero-cost.

lesson ✗AI ✗notes ✗

ARC-018-Q2 application

Build Local Compute TCO & Unit-Cost Model v1 for the baseline fixture and justify its typed state.

lesson ✗AI ✗notes ✗

ARC-018-Q3 diagnosis

An avoidable support renewal is classified as sunk and unrelated office rent is allocated to the compute pool. Which evidence dimensions fail and why?

lesson ✗AI ✗notes ✗

ARC-018-Q4 transfer

Recompute after utilization rises to 70%, electricity price increases, a license becomes subscription-based, and replacement is pulled forward one year.

lesson ✗AI ✗notes ✗
Assessment rubric

Pass requires: explicit asset/period/useful-unit scope; sunk versus forward-cost separation; complete critical evidence; valid utilization/useful-work denominator; in-scope recurring/shared costs only; no invented evidence; and independent recomputation of the transfer fixture.

References & freshness

Migration Evaluator - AWS Prescriptive Guidance
Amazon Web Services · PRACTICE_EVOLVING
Documents on-premises TCO categories and utilization inputs used by Migration Evaluator; does not define MAKNOW accounting treatment or local-cost policy.
Capability: Unit Economics
FinOps Foundation · PRACTICE_EVOLVING
Defines technology unit economics, resource-efficiency versus business unit metrics, and application across technology categories including data centers; does not prescribe MAKNOW sunk/avoidable or allocation policy.

Case studies

Lesson visuals

ARC-018-LOCAL-TCO-FLOW

Flow from asset and capacity scope through sunk/forward cost classification, recurring costs, utilization and useful work to unit cost and bounded LOCAL_OK, RESIZE, REPRICE, HOLD or DISPUTED states.

Lab files

فایل run_checks.py را اجرا کن. State هر Fixture را فقط از Evidence قابل مشاهده توضیح بده، سپس یک Driver مثل Utilization یا Energy Rate را تغییر بده و Unit Cost را دوباره محاسبه کن. هیچ Network، Credential یا دادهٔ Production لازم نیست.