ФИНАНСОВАЯ ОБЛАСТЬP1L3

Удельные расходы на единицу операционной нагрузки

Контракт удельных расходов: сопоставимые деньги и натуральная нагрузка, полнота объёма, нулевые и отрицательные корректировки, корректное свёртывание.

Справочный материал. Контракты данных, архитектурные решения и ограничения применения. Источники приведены в материалах, где используются внешние основания.

Задача и границы показателя#

Удельные расходы отвечают на вопрос: сколько признанных расходов приходится на одну определённую единицу выполненной операционной работы за заданный период. Такой показатель имеет смысл только при явном определении обеих частей отношения. Например, «расходы на обработанную заявку» отличается от расходов на поступившую заявку, активного клиента или рабочий день.

Это контракт измерения, а не готовая оценка эффективности. Изменение удельных расходов само по себе не доказывает рост производительности: могут измениться состав услуг, качество, сложность, периметр или правила признания затрат. GOV.UK описывает unit cost как стоимость единицы результата и отдельно рекомендует документировать основу распределения, исключения и ограничения расчёта.

Материал не задаёт способ распределения общих затрат. Если для числителя требуется распределение, оно должно быть рассчитано и проверено по отдельному контракту распределения затрат.

Зерно числителя и знаменателя#

Зафиксируйте зерно результата, например: одна строка на юридическое лицо, услугу, центр затрат, тип выпуска и финансовый период. Ключи, период, организационный периметр и версия методики числителя должны быть совместимы со знаменателем. Валюта и basis денежных сумм также должны быть одинаковыми внутри результата либо преобразованы по явно версионированному правилу.

Контракт числителя задаёт признанные расходы, знак сторно и корректировок, финансовый период, валюту и версию классификации. Контракт знаменателя задаёт физическую единицу, событие, которому она соответствует, периметр и правило определения завершённого результата. Например, количество обработанных заявок нельзя подменить количеством созданных заявок без изменения смысла показателя.

Для знаменателя нужны как минимум:

  • идентификатор и единица измерения: заявка, транзакция, обработанный документ или другой однозначный выпуск;
  • правило включения события: например, принятая и завершённая операция, с отдельным решением по отменам и повторам;
  • правило уникальности, корректировок, повторной обработки и поздно поступивших событий;
  • покрытие периода и периметра, включая дату, по которой операция относится к периоду;
  • версия определения показателя и преобразований единиц, если источники считают нагрузку по-разному.

Если состав операций существенно различается по сложности, простой подсчёт смешивает неоднородные единицы. Используйте контракт взвешенного эквивалента выпуска: он определяет базовую операцию, версии весов и контроль неизвестных классов. Эквивалент нельзя вводить как техническую поправку к счётчику.

Полнота, ноль и корректировки#

Отсутствие строки со счётчиком не означает нулевую нагрузку. Ноль допустим лишь тогда, когда источник и контроль полноты подтверждают, что за период операций действительно не было. Поэтому состояние знаменателя должно различать как минимум «полные данные, объём положительный», «полные данные, объём нулевой» и «данные отсутствуют или неполны».

При положительных расходах и нулевом объёме удельный показатель не определён. Его нельзя заменять нулём или бесконечностью. При неполном знаменателе результат также не допускается к публикации, даже если денежная часть загружена полностью. Публикуйте статус покрытия рядом с суммами, чтобы потребитель видел причину отсутствующего отношения.

Отрицательная корректировка счётчика требует отдельной бизнес-семантики. Если вычитание дублей или отмен приводит к отрицательному чистому количеству, это обычно сигнал нарушения выбранного зерна, окна или порядка корректировок. Нельзя молча применять абсолютное значение или отбрасывать отрицательные строки. Если предметная область допускает подписанный объём, это правило должно быть явно утверждено, а интерпретация отношения пересмотрена.

Агрегация и свёртывание#

Для совокупности групп удельные расходы рассчитываются как отношение итоговых совместимых сумм:

total eligible cost / total eligible volume

Не усредняйте готовые отношения групп, если бизнес-задача прямо не требует среднего значения показателей групп. Среднее отношений даёт одинаковый вес малой и крупной группе и отвечает на другой вопрос. Для проверки и последующего свёртывания сохраняйте числитель, знаменатель и состояние покрытия, а не только округлённый удельный показатель.

Пример в целых копейках RUB:

Группа Расходы, коп. Обработано заявок Копеек на заявку
A 1 200 000 800 1 500
B 400 000 200 2 000
Итого 1 600 000 1 000 1 600

Среднее двух групповых отношений равно 1 750 копеек, но совокупное отношение равно 1 600 копеек на заявку. Для консолидированного показателя правильный результат получается из суммы расходов, делённой на сумму заявок. Денежные значения показаны в минимальных единицах, чтобы пример не скрывал округление.

В PostgreSQL 18 sum возвращает NULL, когда входных строк нет, а avg вычисляет среднее по ненулевым входным значениям. Поэтому запросный слой должен отдельно задавать политику пустой совокупности и не превращать неизвестные значения в ноль до проверки полноты. Это описание поведения агрегатов, а не утверждение о выполнении SQL для данной модели.

Критерии допуска#

Публикуйте показатель только если выполнены все условия:

  1. Числитель и знаменатель имеют документированные, совместимые ключи, период, периметр и версии определения.
  2. Денежная сумма имеет согласованные валюту, basis, знаки и правило корректировок.
  3. Единица выпуска и правило её включения однозначны и стабильны для сравниваемого результата.
  4. Контроль источника подтверждает полноту данных за период; пропуск данных не трактуется как ноль.
  5. Нулевой и отрицательный чистый объём обработаны явной политикой, без подмены результата.
  6. При укрупнении показатель пересчитывается из итоговых сумм, а покрытие остаётся видимым.

Если один из пунктов не выполнен, показывайте исходные суммы и статус контроля, но не выдавайте отношение за сопоставимый показатель. Связанный материал о финансовой агрегации в SQL рассматривает зерно и свёртывание денежных расчётов; здесь к ним добавлен самостоятельный контракт натуральной единицы и полноты её покрытия.

Вопросы для самопроверки#

Если определение выпуска меняется между периодами, используйте контракт сопоставимости версий: он разделяет исходный и пересчитанный ряды и задаёт условия запрета прямого сравнения.

  • Что является одной единицей выпуска в выбранном показателе и когда она считается завершённой?
  • Каким контролем подтверждается нулевой объём, и чем он отличается от отсутствующего счётчика?
  • Если две группы имеют разные объёмы, какой вопрос отвечает среднее их удельных расходов и какой отвечает отношение итогов?

Источники#

Источники и документация

  1. GOV.UK - Service Costing in Government ↗
  2. PostgreSQL 18 - Aggregate Functions ↗

Источники нужны для самостоятельной проверки. Примеры и интерпретации на сайте могут быть учебными упрощениями.