[drive-download] ТОМ SSOT v1.docx

Google Docs neutral 10 чанков ~13 мин чтения
ТОМ SSOT v1.0<br> (Единый стандарт стратификации, контуров, учёта достижимости и Effective Impact)<br> Версия: 1.0 (операционная)<br> Контур: внутренний инструмент штаба (узкий круг)<br> Назначение: стандартизировать планирование/доставку коммуникаций по стратам и регионам; обеспечить управляемость и защищаемость решений (“как считали”) в период до дня референдума и в ретроспективе.<br> Оглавление<br> Общие положения<br> Ключевые определения и модель SSOT<br> Стратификация (42 страты) и укрупнение (6 страт для управления)<br> Контуры каналов и правило “Primary”<br> Метрика Effective Impact (EI): формула, порядок расчёта, интерпретация<br> Управленческие правила применения SSOT/EI<br> Операционный цикл штаба (ритм, роли, ежедневная записка)<br> Риск-контур: SSI (индекс устойчивости), триггеры, стресс-тест “идеальный шторм” (MVP)<br> Данные и архитектура: модель БД, источники, ретроспектива<br> Приложения (таблицы для печати)<br> Общие положения<br> 1.1. Проблема, которую решает SSOT<br> В госуправлении коммуникации часто ведутся как “перечень мероприятий” и выпусков материалов. Это создаёт иллюзию управляемости (“ресурсы есть, эфир есть, отчёты есть”), но не отвечает на главный управленческий вопрос: какие слои населения реально охвачены, какими каналами, с каким ожидаемым воздействием, и где остаются “слепые зоны”. В условиях референдума эта проблема превращается в риск результата и в риск управленческой незащищённости.<br> SSOT вводит дисциплину: от “мероприятий” → к “достижимости слоёв” → к “управляемому влиянию” → к “доказуемости решений”.<br> 1.2. Принцип «не ломаем старое — добавляем контур управления»<br> SSOT не отменяет существующие форматы (ТВ, радио, встречи, публикации). SSOT добавляет над ними слой управления: целевая страта (Primary), контур канала, ожидаемый EI, и фиксация слепых зон.<br> 1.3. Статус документа<br> Это операционный стандарт штаба. Он может быть “пилотным” по формулировке (чтобы не включать аппаратную защиту), но фактически используется как единая методика.<br> Ключевые определения и модель SSOT<br> 2.1. SSOT (Single Source of Truth) в коммуникациях<br> SSOT — это единая “карта реальности”, где любые действия планируются и учитываются в общих координатах:<br> страта (кто)<br> регион/тип среды (где)<br> контур/канал (через что)<br> ожидаемое воздействие (EI)<br> факт исполнения и отклика (что получилось)<br> 2.2. Страта<br> Страта — минимальная управляемая единица аудитории, определяемая: возрастом, типом медиапотребления (A/B/C), локацией (город/село). В SSOT v1.0 — 42 страты (7 возрастных слоёв × 3 типа × 2 локации).<br> 2.3. Типы медиапотребления (A/B/C)<br> A — digital-first (цифровые)<br> B — hybrid (смешанные)<br> C — offline-first (офлайн-ориентированные)<br> 2.4. Контур<br> Контур — класс каналов доставки: Digital / Broadcast (ТВ-радио) / Field (встречи, обходы) / Messenger (WhatsApp/Telegram как отдельная “вертикаль”) / Institutional (госорганизации, бюджетные сети). В v1.0 допускается укрупнение до 3 контуров: Digital / Mass / Field, но мессенджеры лучше держать отдельным контуром как ключ к “закрытым сетям”.<br> 2.5. Primary-страта и Primary-канал<br> Любая активность обязана иметь Primary-страту (одну) и Primary-канал/контур (один). Всё остальное — вторичное/фоновое.<br> Правило: если Primary-страта не назначена — активность считается “фоновой” и не может быть защищена как инструмент достижения результата.<br> Стратификация и укрупнение<br> 3.1. Полная модель: 42 страты<br> Полный перечень и принципы кодировки (S1…S7 × A/B/C × U/R) у вас уже оформлен как таблица страт для планирования (в том числе языковые профили и операционные режимы по отдельным стратам).<br> 3.2. Управленческое укрупнение: 6 страт для ежедневного управления<br> Чтобы руководству и штабной оперативке не тонуть в 42 строках, вводим “управленную проекцию” — 6 укрупнённых страт:<br> U1: 18–24 город (ядро цифровой повестки)<br> U2: 25–40 город (ядро “активного населения”, ключ к массовой достижимости)<br> U3: 41–55 город (ядро устойчивости/скепсиса, важна доказуемость и спокойный тон)<br> U4: 56+ город (легитимация, ТВ+мессенджеры, снижать тревогу)<br> R5: 25–55 село (главный слой полевой достижимости, сильный эффект от “человеческих” каналов)<br> R6: 56+ село (самая чувствительная к уважению и офлайн-каналам группа, требует отдельного пакета)<br> Примечание: это не отменяет 42-слойную модель. Это “панель приборов”.<br> 3.3. Операционные карточки страт (что входит)<br> Для каждой из 42 страт карточка обязана содержать:<br> Идентификатор и профиль<br> Языковой профиль<br> Цель работы (что меняем: доверие/явка/снятие тревоги/объяснение)<br> Канальная стратегия: основные и вторичные<br> Сообщения и фрейминг (“говорить / не говорить”)<br> Операционный режим (частота касаний, режимы Normal/Attention/Stress)<br> Чек-лист качества<br> Эта структура у вас уже фактически задана на примерах (например, S4-A-U, S5-C-R, S6-A-R).<br> Контуры каналов и правило “функционального распределения”<br> 4.1. Ключевой принцип для госресурсов<br> Поскольку “деньги” как аргумент в аппарате часто не работают (“ресурсы государства и так есть”), SSOT вводит другой язык: КПД госмощностей = достижимость нужных страт.<br> То есть мы не спорим “дорого/дёшево”. Мы фиксируем: “этот ресурс функционально закрывает вот эти слои; вот эти — нет”.<br> 4.2. Функциональное распределение (матрица 6×3)<br> Управленческая матрица (для печати на 1 странице):<br> Контуры:<br> Digital (таргет, соцсети, онлайн-медиа)<br> Mass (ТВ/радио/наружка как фон)<br> Field+Messenger (встречи/сходы/обход + упаковка в WhatsApp/Telegram)<br> Правило:<br> Mass = легитимация и спокойное объяснение (особенно 56+)<br> Digital = охват активного ядра и сомневающихся в городах (18–40 / 25–40)<br> Field+Messenger = “закрытие слепых зон” по селу и старшим<br> Метрика Effective Impact (EI)<br> 5.1. Формула<br> EI = Reach × InfluenceCoef × Retention × Weight<br> Смысл: EI — не “точная наука”, а стандартизированный способ сравнить альтернативы и выявить дублирование. EI считается “в порядке величины” (низкий/средний/высокий), чтобы управленчески принимать решения быстро.<br> 5.2. Reach (достижимость) — базовые модели по контурам<br> Digital Reach:<br> N_pop × K_online × k_active × reach_rate<br> TV/Radio Reach:<br> N_pop × reach_rate<br> Встречи Reach:<br> Contacts × retransmission_factor (если есть “вертикаль” мессенджер-ретрансляции)<br> 5.3. Компоненты EI: управленческие определения<br> N_pop: численность страты в регионе<br> K_online: доля страты с доступом к интернету (по региону/типу A/B/C)<br> k_active: доля реально активных пользователей (не “имеют смартфон”, а “потребляют контент”)<br> reach_rate: доля, которую конкретная активность может достать (кампания/эфир/встреча)<br> InfluenceCoef: коэффициент влияния канала на данную страту (условно: доверяют/не доверяют; “может сдвинуть”)<br> Retention: удержание/повторяемость (однократное касание vs серия)<br> Weight: вес страты в задаче (например, по важности явки/легитимации/устойчивости)<br> 5.4. Практическая интерпретация (как говорить на совещании)<br> EI — это “паспорт управляемости”:<br> почему мы делаем именно это;<br> на кого это направлено;<br> почему этот канал здесь Primary;<br> где мы сознательно НЕ тратим внимание.<br> Управленческие правила применения SSOT/EI<br> 6.1. Обязательные атрибуты каждой активности<br> Каждая активность должна иметь: Primary-страту, контур, ожидаемый EI.<br> 6.2. Правило “слепой зоны”<br> Страта без Primary-канала = слепая зона.<br> Слепая зона должна закрываться “догоняющим пакетом” (список действий на 7–10 дней) либо формально фиксироваться как “принятый риск”.<br> 6.3. Правило “дублирования”<br> Если две активности бьют в одну и ту же Primary-страту одним и тем же контуром, а прирост Reach незначителен — это дублирование. Решение: либо объединить, либо перераспределить в слепую зону.<br> 6.4. Аппаратно-безопасная рамка<br> Запрещены формулировки “раньше считали неправильно”. Разрешённая рамка: “добавили слой управленческого учёта достижимости; обновили инструмент под текущую медиареальность”.<br> Операционный цикл штаба<br> 7.1. Минимальный ритм (MVP, без бюрократии)<br> 08:30–08:45 “Сверка приборов”: SSI/тональность/слепые зоны за сутки<br> 13:30–13:45 “Контент-чекап”: что упаковано под приоритетные страты (6 укрупнённых)<br> 19:00–19:10 “Прогноз на завтра”: что меняем в Primary-стратах/контурах<br> 7.2. Ежедневная записка в 5 строк (шаблон)<br> SSI сегодня: (зел/жёлт/красн) + что изменилось за сутки<br> Слепые зоны: 1–2 страты/региона, где недобор Reach<br> Риск-сигналы: 1–2 темы/триггера (где растёт перегрев/скепсис)<br> Решения на 24 часа: 2–3 действия (перераспределение контента/каналов)<br> Что просим у руководства: 1 решение (санкция на пилот/перенастройку)<br> 7.3. Роли (минимально необходимое распределение)<br> Опер-аналитик SSOT (дежурный): собирает факты, считает EI “в порядке величины”<br> Куратор контуров (Digital / Mass / Field+Messenger): обеспечивает доставку<br> Куратор страт (6 укрупнённых): следит за “слепыми зонами”<br> Тех-куратор (SSOT DB): загрузки, качество данных, витрины<br> Риск-контур: SSI, триггеры, стресс-тест<br> 8.1. SSI (System Stability Index) — смысл<br> SSI — агрегированный показатель устойчивости кампании как системы доставки: “не перегрели ли лояльных”, “не оставили ли ключевые слои в вакууме”, “не потеряли ли управляемость”.<br> В MVP SSI можно считать как взвешенную сумму трёх индексов:<br> CoverageGap (слепые зоны)<br> Overheat (перегрев/каннибализация)<br> Volatility (волатильность тональности/сигналов)<br> 8.2. Триггеры (простые правила)<br> CoverageGap: если 2 дня подряд страта из U2/R5/R6 без Primary-доставки → “догоняющий пакет”<br> Overheat: если рост негативных маркеров в лояльной страте при высокой частоте касаний → stop-loss на 24 часа в этом контуре<br> Volatility: если за сутки резкий скачок негативных сигналов в одном регионе при стабильности по стране → региональный протокол<br> 8.3. Стресс-тест “идеальный шторм” (MVP)<br> Цель: проверить устойчивость SSOT-процесса, а не “политический результат”.<br> Сценарий (одновременно):<br> отказ SSOT/данных (нет обновления витрин 24 часа)<br> 10 параллельных локальных инцидентов (S3-уровень)<br> дисциплинарный кризис (задержка подтверждений/решений)<br> Проверяем:<br> где ломается принятие решений;<br> какие минимальные данные нужны для восстановления;<br> какие решения можно принимать “по укрупнению 6 страт”, не теряя управляемость.<br> Данные и архитектура: модель БД, источники, ретроспектива<br> 9.1. Что нужно хранить (SSOT как база для ретроспективы)<br> Справочники: регионы, страты, каналы, контуры<br> Коэффициенты: K_online, k_active, influence, retention, веса (в разрезе страт/регионов/каналов)<br> План: активности (что, когда, где, Primary-страта, контур, ожидаемый Reach/EI)<br> Факт: публикации/эфиры/встречи, метрики охвата/вовлечения/сигналов<br> Расчёты: EI по активности и агрегаты по страте/региону/дате<br> События: инциденты/триггеры/решения штаба (для “как управляли”)<br> 9.2. Региональная группировка A/B/C (важное примечание)<br> В ваших текущих черновиках присутствует концепт групп регионов A/B/C (языково-медийные различия), но явный список областей “какие куда” в предоставленных файлах я не вижу. Поэтому в SSOT v1.0 это оформляется как отдельная таблица-справочник, которую вы заполняете по принятому штабом стандарту (можно за 20 минут).<br> Технарям: таблица dim_region_profile должна позволять переопределение классификации без миграций.<br> Приложения (то, что печатается)<br> Приложение A. Матрица 6 страт × 3 контура (1 стр.)<br> Приложение B. Формула EI + пояснение компонент (1 стр.)<br> Приложение C. “Правила применения SSOT” (1 стр.)<br> Приложение D. 42 страты (большая таблица)<br> Приложение E. Карта регионов (A/B/C; digital-first/hybrid/offline-first) — как отдельный лист (заполняется штабом)<br> Часть 2. SQL-структура под PostgreSQL (SSOT v1.0)<br> Ниже — рабочий DDL-скелет. Он намеренно “нормализован”, чтобы:<br> хранить коэффициенты отдельно (пересчитывать без переписывания фактов),<br> вести ретроспективу,<br> строить витрины под Metabase.<br> -- =========================<br> -- SSOT v1.0 (PostgreSQL)<br> -- =========================<br> CREATE SCHEMA IF NOT EXISTS ssot;<br> -- 1) Dimensions<br> CREATE TABLE IF NOT EXISTS ssot.dim_region (<br> region_id SMALLSERIAL PRIMARY KEY,<br> region_code TEXT UNIQUE NOT NULL,<br> region_name_ru TEXT NOT NULL,<br> region_name_kz TEXT,<br> is_city_major BOOLEAN DEFAULT FALSE<br> );<br> -- Региональный профиль (язык/тип среды A/B/C и т.п.)<br> CREATE TABLE IF NOT EXISTS ssot.dim_region_profile (<br> region_id SMALLINT PRIMARY KEY REFERENCES ssot.dim_region(region_id),<br> region_group CHAR(1) NOT NULL CHECK (region_group IN ('A','B','C')), -- языково-культурный профиль<br> settlement_mix CHAR(1) NOT NULL CHECK (settlement_mix IN ('U','R','M')), -- U=город, R=село, M=смешанный<br> notes TEXT<br> );<br> CREATE TABLE IF NOT EXISTS ssot.dim_stratum (<br> stratum_id SMALLSERIAL PRIMARY KEY,<br> stratum_code TEXT UNIQUE NOT NULL, -- e.g. S4-A-U<br> age_band TEXT NOT NULL, -- e.g. 35-44<br> media_type CHAR(1) NOT NULL CHECK (media_type IN ('A','B','C')),<br> location_type CHAR(1) NOT NULL CHECK (location_type IN ('U','R')),<br> description TEXT<br> );<br> -- Управленческое укрупнение (6 страт)<br> CREATE TABLE IF NOT EXISTS ssot.dim_stratum6 (<br> stratum6_id SMALLSERIAL PRIMARY KEY,<br> stratum6_code TEXT UNIQUE NOT NULL, -- U1..R6<br> stratum6_name TEXT NOT NULL<br> );<br> -- Связь 42 -> 6<br> CREATE TABLE IF NOT EXISTS ssot.map_stratum_to_stratum6 (<br> stratum_id SMALLINT REFERENCES ssot.dim_stratum(stratum_id),<br> stratum6_id SMALLINT REFERENCES ssot.dim_stratum6(stratum6_id),<br> PRIMARY KEY (stratum_id, stratum6_id)<br> );<br> CREATE TABLE IF NOT EXISTS ssot.dim_contour (<br> contour_id SMALLSERIAL PRIMARY KEY,<br> contour_code TEXT UNIQUE NOT NULL, -- DIGITAL / MASS / FIELD / MESSENGER / INST<br> contour_name TEXT NOT NULL<br> );<br> CREATE TABLE IF NOT EXISTS ssot.dim_channel (<br> channel_id SMALLSERIAL PRIMARY KEY,<br> channel_code TEXT UNIQUE NOT NULL, -- META_ADS / TIKTOK / TV / RADIO / MEETING / WHATSAPP / TELEGRAM / ...<br> channel_name TEXT NOT NULL,<br> contour_id SMALLINT NOT NULL REFERENCES ssot.dim_contour(contour_id)<br> );<br> -- 2) Base population by stratum/region (N_pop)<br> CREATE TABLE IF NOT EXISTS ssot.fact_population (<br> as_of_date DATE NOT NULL,<br> region_id SMALLINT NOT NULL REFERENCES ssot.dim_region(region_id),<br> stratum_id SMALLINT NOT NULL REFERENCES ssot.dim_stratum(stratum_id),<br> n_pop INTEGER NOT NULL CHECK (n_pop >= 0),<br> source TEXT,<br> PRIMARY KEY (as_of_date, region_id, stratum_id)<br> );<br> -- 3) Coefficients (versioned)<br> CREATE TABLE IF NOT EXISTS ssot.coeff_online (<br> coeff_id BIGSERIAL PRIMARY KEY,<br> valid_from DATE NOT NULL,<br> valid_to DATE,<br> region_id SMALLINT REFERENCES ssot.dim_region(region_id),<br> stratum_id SMALLINT REFERENCES ssot.dim_stratum(stratum_id),<br> k_online NUMERIC(6,4) NOT NULL CHECK (k_online BETWEEN 0 AND 1)<br> );<br> CREATE TABLE IF NOT EXISTS ssot.coeff_active (<br> coeff_id BIGSERIAL PRIMARY KEY,<br> valid_from DATE NOT NULL,<br> valid_to DATE,<br> region_id SMALLINT REFERENCES ssot.dim_region(region_id),<br> stratum_id SMALLINT REFERENCES ssot.dim_stratum(stratum_id),<br> k_active NUMERIC(6,4) NOT NULL CHECK (k_active BETWEEN 0 AND 1)<br> );<br> CREATE TABLE IF NOT EXISTS ssot.coeff_influence (<br> coeff_id BIGSERIAL PRIMARY KEY,<br> valid_from DATE NOT NULL,<br> valid_to DATE,<br> stratum_id SMALLINT NOT NULL REFERENCES ssot.dim_stratum(stratum_id),<br> channel_id SMALLINT NOT NULL REFERENCES ssot.dim_channel(channel_id),<br> influence_coef NUMERIC(7,4) NOT NULL CHECK (influence_coef >= 0)<br> );<br> CREATE TABLE IF NOT EXISTS ssot.coeff_retention (<br> coeff_id BIGSERIAL PRIMARY KEY,<br> valid_from DATE NOT NULL,<br> valid_to DATE,<br> stratum_id SMALLINT NOT NULL REFERENCES ssot.dim_stratum(stratum_id),<br> channel_id SMALLINT NOT NULL REFERENCES ssot.dim_channel(channel_id),<br> retention NUMERIC(6,4) NOT NULL CHECK (retention BETWEEN 0 AND 1)<br> );<br> CREATE TABLE IF NOT EXISTS ssot.coeff_weight (<br> coeff_id BIGSERIAL PRIMARY KEY,<br> valid_from DATE NOT NULL,<br> valid_to DATE,<br> region_id SMALLINT REFERENCES ssot.dim_region(region_id),<br> stratum_id SMALLINT NOT NULL REFERENCES ssot.dim_stratum(stratum_id),<br> weight NUMERIC(7,4) NOT NULL CHECK (weight >= 0)<br> );<br> -- 4) Plan (activities)<br> CREATE TABLE IF NOT EXISTS ssot.fact_activity_plan (<br> activity_id BIGSERIAL PRIMARY KEY,<br> plan_date DATE NOT NULL,<br> region_id SMALLINT REFERENCES ssot.dim_region(region_id), -- NULL = national<br> primary_stratum_id SMALLINT NOT NULL REFERENCES ssot.dim_stratum(stratum_id),<br> primary_channel_id SMALLINT NOT NULL REFERENCES ssot.dim_channel(channel_id),<br> activity_type TEXT NOT NULL, -- POST / VIDEO / TV_SLOT / RADIO_SLOT / MEETING / ...<br> title TEXT,<br> notes TEXT,<br> expected_reach_rate NUMERIC(7,4) CHECK (expected_reach_rate BETWEEN 0 AND 1),<br> expected_contacts INTEGER CHECK (expected_contacts >= 0),<br> expected_retransmission_factor NUMERIC(7,4) CHECK (expected_retransmission_factor >= 0),<br> created_at TIMESTAMPTZ DEFAULT now()<br> );<br> -- 5) Fact execution (what happened)<br> CREATE TABLE IF NOT EXISTS ssot.fact_activity_fact (<br> activity_fact_id BIGSERIAL PRIMARY KEY,<br> activity_id BIGINT REFERENCES ssot.fact_activity_plan(activity_id),<br> fact_date DATE NOT NULL,<br> region_id SMALLINT REFERENCES ssot.dim_region(region_id),<br> channel_id SMALLINT NOT NULL REFERENCES ssot.dim_channel(channel_id),<br> stratum_id SMALLINT REFERENCES ssot.dim_stratum(stratum_id), -- if measurable; else NULL<br> impressions BIGINT,<br> reach BIGINT,<br> engagements BIGINT,<br> contacts BIGINT,<br> notes TEXT,<br> loaded_at TIMESTAMPTZ DEFAULT now()<br> );<br> -- 6) EI calculations (materialized results)<br> CREATE TABLE IF NOT EXISTS ssot.fact_ei (<br> ei_id BIGSERIAL PRIMARY KEY,<br> calc_date DATE NOT NULL,<br> activity_id BIGINT REFERENCES ssot.fact_activity_plan(activity_id),<br> region_id SMALLINT REFERENCES ssot.dim_region(region_id),<br> stratum_id SMALLINT NOT NULL REFERENCES ssot.dim_stratum(stratum_id),<br> channel_id SMALLINT NOT NULL REFERENCES ssot.dim_channel(channel_id),<br> reach_value NUMERIC(20,4) NOT NULL,<br> influence_coef NUMERIC(10,4) NOT NULL,<br> retention NUMERIC(10,4) NOT NULL,<br> weight NUMERIC(10,4) NOT NULL,<br> ei_value NUMERIC(20,4) NOT NULL<br> );<br> -- 7) Signals / incidents (for SSI & “how we managed”)<br> CREATE TABLE IF NOT EXISTS ssot.fact_signal (<br> signal_id BIGSERIAL PRIMARY KEY,<br> signal_date DATE NOT NULL,<br> region_id SMALLINT REFERENCES ssot.dim_region(region_id),<br> stratum6_id SMALLINT REFERENCES ssot.dim_stratum6(stratum6_id),<br> signal_type TEXT NOT NULL, -- NEG_SPIKE / RUMOR / OVERHEAT / COVERAGE_GAP / ...<br> severity SMALLINT NOT NULL CHECK (severity BETWEEN 1 AND 5),<br> description TEXT,<br> source TEXT,<br> created_at TIMESTAMPTZ DEFAULT now()<br> );<br> -- 8) Views (optional) - “blind zones” and “coverage”<br> CREATE VIEW ssot.v_blind_zones AS<br> SELECT<br> p.plan_date,<br> COALESCE(r.region_name_ru, 'NATIONAL') AS region,<br> s.stratum_code,<br> COUNT(*) AS planned_acts<br> FROM ssot.fact_activity_plan p<br> LEFT JOIN ssot.dim_region r ON r.region_id = p.region_id<br> JOIN ssot.dim_stratum s ON s.stratum_id = p.primary_stratum_id<br> GROUP BY 1,2,3;<br> Примечание по коэффициентам: формула EI и расчёт Reach в ваших черновиках уже заданы (Digital/TV/Meetings). DDL выше делает их “параметризуемыми”, чтобы SSOT не был захардкожен.<br> Часть 3. Управленческая презентация (5 слайдов) — содержание<br> Слайд 1. “Переход 2026: управление достижимостью, а не перечнем мероприятий”<br> У государства мощные медиаресурсы<br> Но без стратификации нельзя ответить: кого реально закрыли<br> SSOT = единый стандарт “страта–контур–EI–факт”<br> <br> Фраза: “Мы не меняем повестку. Мы вводим слой управляемости доставки.”<br> Слайд 2. “42 страты (SSOT) → 6 страт (панель управления)”<br> Показать 6 укрупнённых страт<br> Показать, что 42 остаются “внизу” для точной настройки<br> <br> Фраза: “Руководство управляет 6 строками, штаб считает 42.”<br> Слайд 3. “Матрица 6×3: кто чем реально закрывается”<br> Таблица: 6 страт × 3 контура (Digital / Mass / Field+Messenger)<br> Подсветить: где слепые зоны возникают при инерции<br> <br> Фраза: “Ресурс есть. Вопрос — функция ресурса по слоям.”<br> Слайд 4. “EI: простой стандарт сравнения решений (без споров ‘верю/не верю’)”<br> EI = Reach × Influence × Retention × Weight<br> EI в порядке величины (низк/сред/выс)<br> EI выявляет дублирование и оправдывает ‘догоняющий пакет’<br> Слайд 5. “Что делаем за 72 часа (без новых бюджетов)”<br> Утвердить SSOT v1.0 (как пилотный стандарт)<br> Разметить текущий план по 6 стратам<br> Зафиксировать слепые зоны<br> Запустить догоняющий пакет + ежедневная записка 5 строк<br> Передать в техгруппу: БД + витрины + ретроспектива<br> Часть 4. “Пакет передачи технарям” (единая архитектура)<br> 4.1. Что технарям отдать одним архивом (структура)<br> /ssot_v1/<br> 01_doc/<br> Tom_SSOT_v1.0.md (или .docx)<br> Slides_5.md<br> Daily_note_template.md<br> 02_data_dictionary/<br> entities.md (описание таблиц и полей)<br> coefficients.md (как обновлять k_online/k_active/influence/retention/weight)<br> 03_sql/<br> 001_schema.sql (DDL)<br> 010_seed_dimensions.sql (загрузка справочников: stratum, stratum6, contour, channel)<br> 020_views.sql (витрины)<br> 04_etl/<br> sources.md (откуда берём population/сигналы/факт активностей)<br> load_rules.md (валидаторы, дедупликация, версии коэффициентов)<br> 05_examples/<br> example_plan.csv<br> example_fact.csv<br> example_coeffs.csv<br> 4.2. Обязательные витрины (минимум под Metabase)<br> v_dashboard_today: SSI, слепые зоны, топ-сигналы<br> v_stratum6_coverage_plan_fact: план/факт по 6 стратам (по дням)<br> v_ei_by_region_stratum6: EI агрегаты (для сравнения решений)<br> v_overheat_proxy: частота касаний × негативные маркеры (упрощённо)<br> 4.3. Ретроспектива (то, что потом “спасает”)<br> В БД обязательно хранить:<br> версии коэффициентов (valid_from/valid_to)<br> план/факт активностей<br> принятые решения (связать signal → decision)<br> Это позволяет через месяц/год восстановить: “какая была картина, что мы видели, почему так решили”.