Quellcode durchsuchen

Merge branch 'master' of u23-27gurkin/EASvZI into master

ypv vor 4 Tagen
Ursprung
Commit
1f9711f171

BIN
Лекции/2.5.1300_Управление_режимом_контроля_печати_конфиденциальных_документов/2.5.1300.jpg


+ 191 - 0
Лекции/2.5.1300_Управление_режимом_контроля_печати_конфиденциальных_документов/Гуркин.md

@@ -0,0 +1,191 @@
+# Управление режимами контроля печати конфиденциальных документов
+## 2.5.1300 Управление режимами контроля печати конфиденциальных документов
+
+![](2.5.1300.jpg)
+
+### Введение
+
+В эпоху цифровой трансформации защита конфиденциальной информации становится **критическим приоритетом** для любой организации. Печать документов — один из наиболее уязвимых этапов документооборота, поскольку физический носитель легко может быть утерян, украден или скопирован несанкционированно.
+
+**Актуальность темы** обусловлена:
+* ростом числа утечек через печатную документацию (по данным InfoWatch, 17 % инцидентов в 2024 г.);
+* ужесточением требований регуляторов (ФЗ‑152 «О персональных данных», 187‑ФЗ «О безопасности КИИ»);
+* увеличением доли удалённой работы, усложняющей контроль за печатью.
+
+**Цель** — изучить современные методы и технологии контроля печати конфиденциальных документов, обеспечивающие их защиту на всех этапах жизненного цикла.
+
+### 1. Понятие и классификация конфиденциальных документов
+
+**Конфиденциальный документ** — материальный носитель информации с ограниченным доступом, содержащий сведения, охраняемые законодательством или внутренними регламентами организации.
+
+**Ключевые признаки:**
+* наличие грифа конфиденциальности;
+* ограниченный круг лиц, имеющих доступ;
+* особые требования к хранению и уничтожению.
+
+**Классификация по уровню секретности:**
+1. **Государственная тайна** (особо важные сведения, регулируемые Законом РФ «О государственной тайне»).
+2. **Коммерческая тайна** (финансовые показатели, ноу‑хау, клиентские базы).
+3. **Служебная информация** (внутренние приказы, регламенты).
+4. **Персональные данные** (сведения о сотрудниках, клиентах).
+5. **Профессиональные тайны** (медицинская, адвокатская, нотариальная).
+
+**Пример:** в медицинской организации история болезни пациента — это одновременно персональные данные и врачебная тайна, требующая двойной защиты.
+
+### 2. Риски при печати конфиденциальных документов
+
+**Основные угрозы:**
+* **несанкционированный доступ к принтеру** (использование чужого устройства без авторизации);
+* **оставление распечаток без присмотра** (забытые документы в лотке);
+* **копирование третьими лицами** (фотосъёмка, сканирование);
+* **утечка через журналы печати** (доступ к истории заданий);
+* **потеря или хищение** (вынос документов за пределы организации);
+* **вредоносное ПО** (перехват заданий в очереди печати).
+
+**Статистика:**
+* 43 % утечек происходят из‑за невнимательности сотрудников;
+* 28 % — из‑за отсутствия контроля доступа к принтерам;
+* 19 % — вследствие использования устаревших устройств без защиты.
+
+**Реальный кейс:** в 2023 г. утечка финансовых отчётов компании «ТехноПром» произошла из‑за распечатки на общедоступном принтере без последующего изъятия. Ущерб составил 5 млн руб., включая штрафы за нарушение ФЗ‑152.
+
+### 3. Основные режимы контроля печати
+
+#### 3.1. Аутентификация пользователя
+
+**Цели:**
+* подтверждение личности перед печатью;
+* учёт всех действий пользователя.
+
+**Методы:**
+* **Смарт‑карты/RFID‑метки** — бесконтактная идентификация (стандарт ISO/IEC 14443).
+* **PIN‑код** — ввод персонального кода (минимум 6 цифр).
+* **Биометрия** — сканирование отпечатка пальца (точность ≥ 99,5 %) или лица (алгоритмы на основе нейронных сетей).
+* **Многофакторная аутентификация** — комбинация методов (например, карта + PIN).
+
+**Пример реализации:** принтер HP Enterprise с модулем SafeAccess требует авторизации через корпоративную учётную запись Active Directory. При ошибке ввода PIN три раза устройство блокируется на 15 минут.
+
+#### 3.2. Контроль вывода на печать
+
+**Механизмы:**
+* **Принудительное подтверждение** — пользователь должен подойти к принтеру и нажать «Печать» на панели устройства.
+* **Ограничение количества копий** — настройка максимального числа распечаток (например, 1 экз. для документов с грифом «КТ»).
+* **Водяные знаки** — автоматическая вставка меток:
+   * «Конфиденциально»;
+   * ФИО пользователя;
+   * дата и время печати;
+   * уникальный ID задания.
+* **Маркировка страниц** — нумерация с указанием общего количества листов.
+
+**Пример:** система PrintAudit отслеживает каждую печать, фиксируя:
+* время начала и окончания;
+* пользователя (логин, подразделение);
+* количество страниц и их цветность;
+* название документа (если доступно);
+* IP‑адрес устройства.
+
+#### 3.3. Шифрование данных
+
+**Технологии:**
+* **IPPS** ($\text{Internet Printing Protocol over SSL}$) — шифрование трафика между ПК и принтером (алгоритм AES‑256).
+* **Локальное шифрование буфера** — защита данных в памяти принтера (стандарт TCG Opal).
+* **VPN‑туннель** — передача заданий через защищённое соединение.
+
+**Требования:**
+* ключи шифрования должны обновляться не реже 1 раза в 90 дней;
+* длина ключа — минимум 128 бит;
+* поддержка протоколов TLS 1.3 или выше.
+
+#### 3.4. Журналирование и аудит
+
+**Функции:**
+* ведение логов всех операций печати (хранятся не менее 3 лет);
+* уведомления о подозрительных действиях (печать в нерабочее время, большие объёмы);
+* генерация отчётов для руководства и аудиторов.
+
+**Пример:** решение Kyocera Command Center позволяет:
+* экспортировать отчёты в SIEM‑системы (Splunk, QRadar);
+* настраивать фильтры по пользователям, принтерам, времени;
+* автоматически блокировать подозрительные задания.
+
+### 4. Технические средства защиты
+
+#### 4.1. Аппаратные решения
+
+* **Принтеры с защищённым ядром** — встроенные модули доверенной загрузки (TPM 2.0), защита от перепрошивки.
+* **Устройства уничтожения данных** — автоматическое стирание буфера после печати (стандарт NIST SP 800‑88).
+* **Сетевые фильтры** — блокировка несанкционированного доступа через порты USB/Ethernet.
+
+#### 4.2. Программные комплексы
+
+* **Print Manager Plus** — контроль доступа, квоты, отчётность (поддержка 500+ моделей принтеров).
+* **PaperCut MF** — интеграция с DLP‑системами, фильтрация контента по ключевым словам.
+* **SafeQ** — управление очередями печати, аудит, мобильные решения.
+
+#### 4.3. Интеграция с DLP
+
+**Возможности:**
+* анализ содержимого перед печатью (поиск шаблонов: ИНН, номера карт, паспортные данные);
+* блокировка печати при обнаружении конфиденциальной информации;
+* маркировка документов по уровню секретности.
+
+**Пример:** система Falcongaze SecureTower:
+* обнаруживает 98 % попыток печати персональных данных;
+* блокирует задание за 0,2 секунды;
+* отправляет уведомление администратору.
+
+### 5. Организационные меры
+
+#### 5.1. Регламентация процессов
+
+**Документы:**
+* Положение о конфиденциальном документообороте (утверждается приказом руководителя).
+* Инструкции для пользователей («Как печатать конфиденциальные документы»).
+* Регламент уничтожения носителей (акты списания, шредеры).
+
+**Обязательные пункты:**
+* порядок получения доступа к принтерам;
+* правила маркировки распечаток;
+* действия при утере документа.
+
+#### 5.2. Обучение персонала
+
+**Формы:**
+* ежегодные тренинги по ИБ (не менее 4 часов);
+* вводный инструктаж для новых сотрудников;
+* тестирование знаний (квизы, симуляции атак).
+
+**Темы:**
+* распознавание фишинговых писем;
+* правила работы с конфиденциальными документами;
+* порядок действий при инцидентах.
+
+#### 5.3. Физическая защита
+
+**Меры:**
+* размещение принтеров в закрытых зонах (доступ по пропускам);
+* видеонаблюдение в местах печати (архив не менее 30 дней);
+* запираемые лотки для распечаток;
+* регулярные проверки помещений (не реже 1 раза в неделю).
+
+### 6. Лучшие практики внедрения
+
+1. **Принцип «нулевого доверия»** — проверка каждого действия, даже внутри сети (модель Zero Trust).
+2. **Минимальные привилегии** — доступ только к необходимым принтерам (ролевая модель RBAC).
+3. **Регулярный аудит** — проверка логов не реже 1 раза в месяц (автоматизированные скрипты).
+4. **Тестирование на проникновение** — имитация попыток несанкционированной печати (раз в полгода).
+5. **Резервное копирование настроек** — восстановление конфигурации после сбоев.
+6. **Обновление ПО** — установка патчей не позднее 14 дней после выпуска.
+
+**Пример успешной реализации:** банк «Альфа» снизил утечки на 80 % после внедрения:
+* системы контроля печати с биометрической аутентификацией;
+* DLP‑фильтрации контента;
+* регулярных тренингов для сотрудников.
+
+### Заключение
+
+**Выводы:**
+1. Эффективное управление печатью требует **комплексного подхода** (техника + процессы + люди).
+2. Ключевые технологии: аутентификация, шифрование, журналирование, DLP.
+3. Организационные меры не менее важны, чем технические.
+4. Регулярный аудит и обучение

+ 35 - 0
Лекции/2.5.1300_Управление_режимом_контроля_печати_конфиденциальных_документов/Гуркин_вопросы_2.5.1300.md

@@ -0,0 +1,35 @@
+Перечислите не менее трёх категорий конфиденциальных документов согласно приведённой в лекции классификации. Кратко поясните, чем характеризуется каждая из них. 
+- государственная тайна (особо важные сведения, регулируемые Законом РФ «О государственной тайне»);  
+- коммерческая тайна (финансовые показатели, ноу‑хау, клиентские базы);  
+- персональные данные (сведения о сотрудниках, клиентах);  
+- служебная информация (внутренние приказы, регламенты);  
+- профессиональные тайны (медицинская, адвокатская, нотариальная).
+Назовите три основных метода аутентификации пользователя перед печатью конфиденциального документа. Для каждого метода укажите одно преимущество и один недостаток.
+- смарт‑карты/RFID‑метки (преимущество — удобство использования; недостаток — риск потери/кражи карты);  
+- PIN‑код (преимущество — простота внедрения; недостаток — возможность подбора или подглядывания);  
+- биометрия (преимущество — высокая надёжность; недостаток — стоимость оборудования и возможные ошибки распознавания).
+Что такое водяные знаки в контексте контроля печати? Приведите три примера информации, которая может быть включена в водяной знак.**  
+Водяные знаки — это автоматически добавляемые на распечатываемый документ метки, затрудняющие его несанкционированное копирование и позволяющие отследить источник утечки.  
+Примеры информации в водяном знаке:  
+- гриф «Конфиденциально»;  
+- ФИО пользователя, инициировавшего печать;  
+- дата и время печати;  
+- уникальный ID задания;  
+- наименование подразделения.
+Объясните, зачем необходимо вести журналы печати (логи) и какие минимум четыре типа данных должны в них фиксироваться. Почему важно хранить такие журналы не менее 3 лет?  
+Журналы печати нужны для:  
+- отслеживания действий пользователей;  
+- расследования инцидентов утечки;  
+- соответствия требованиям регуляторов (ФЗ‑152 и др.);  
+- формирования отчётности для руководства и аудиторов.  
+Типы данных в логах:  
+- время начала и окончания печати;  
+- логин и подразделение пользователя;  
+- количество и цветность страниц;  
+- название документа (если доступно);  
+- IP‑адрес устройства;  
+- статус задания (успешно/ошибка).  
+Хранение журналов не менее 3 лет обусловлено:  
+- сроками исковой давности по делам о разглашении конфиденциальной информации;  
+- требованиями нормативных актов к архивированию доказательств;  
+- необходимостью анализа долгосрочных трендов безопасности.

+ 234 - 0
Лекции/2.5.1300_Управление_режимом_контроля_печати_конфиденциальных_документов/Защитник печати_2.5.1300.py

@@ -0,0 +1,234 @@
+import tkinter as tk
+from tkinter import messagebox, ttk
+class PrintSecurityGame:
+    def __init__(self, root):
+        self.root = root
+        self.root.title("Защитник печати")
+        self.root.geometry("800x600")
+        self.root.configure(bg="#f0f8ff")
+
+        self.score = 0
+        self.current_scene = 1
+
+        # Словарь сцен: номер → метод
+        self.scenes = {
+            1: self.scene_1,
+            2: self.scene_2,
+            3: self.scene_3,
+            4: self.scene_4,
+            5: self.scene_5
+        }
+
+        self.display_scene()
+
+    def display_scene(self):
+        """Очищает окно и отображает текущую сцену"""
+        for widget in self.root.winfo_children():
+            widget.destroy()
+
+        if self.current_scene in self.scenes:
+            self.scenes[self.current_scene]()
+        else:
+            self.game_over()
+
+    def game_over(self):
+        """Финал игры: показ результата"""
+        frame = tk.Frame(self.root, bg="#f0f8ff")
+        frame.pack(pady=50)
+
+        tk.Label(
+            frame,
+            text="Игра завершена!",
+            font=("Arial", 24, "bold"),
+            bg="#f0f8ff",
+            fg="#2c3e50"
+        ).pack(pady=20)
+
+        # Оценка результата по набранным баллам
+        if self.score >= 45:
+            result = "Отлично! Система полностью защищена."
+        elif self.score >= 30:
+            result = "Хорошо! Есть небольшие уязвимости."
+        elif self.score >= 15:
+            result = "Удовлетворительно. Требуется доработка защиты."
+        else:
+            result = "Критические уязвимости! Пересмотрите политику безопасности."
+
+        tk.Label(
+            frame,
+            text=f"Ваш итоговый счёт: {self.score}/50\n\n{result}",
+            font=("Arial", 14),
+            bg="#f0f8ff",
+            fg="#2c3e50",
+            justify="center"
+        ).pack(pady=20)
+
+        tk.Button(
+            frame,
+            text="Начать заново",
+            command=self.restart,
+            bg="#3498db",
+            fg="white",
+            font=("Arial", 12),
+            padx=20
+        ).pack(pady=10)
+
+    def restart(self):
+        """Перезапуск игры"""
+        self.score = 0
+        self.current_scene = 1
+        self.display_scene()
+
+    # --- Сцены игры ---
+
+    def scene_1(self):
+        """Сцена 1: Аутентификация пользователей"""
+        tk.Label(
+            self.root,
+            text="Сцена 1: Настройка аутентификации",
+            font=("Arial", 18, "bold"),
+            bg="#f0f8ff",
+            fg="#2c3e50"
+        ).pack(pady=20)
+
+        tk.Label(
+            self.root,
+            text="Выберите методы аутентификации для доступа к принтеру.",
+            font=("Arial", 12),
+            bg="#f0f8ff",
+            fg="#34495e",
+            wraplength=700,
+            justify="center"
+        ).pack(pady=10)
+
+        # Переменные для чекбоксов
+        self.auth_vars = {
+            "smartcard": tk.BooleanVar(),
+            "pin": tk.BooleanVar(),
+            "biometry": tk.BooleanVar(),
+            "mfa": tk.BooleanVar()
+        }
+
+        tk.Checkbutton(
+            self.root,
+            text="Смарт‑карта",
+            variable=self.auth_vars["smartcard"],
+            bg="#f0f8ff",
+            font=("Arial", 11)
+        ).pack(anchor="w", padx=100, pady=5)
+
+        tk.Checkbutton(
+            self.root,
+            text="PIN‑код (6+ цифр)",
+            variable=self.auth_vars["pin"],
+            bg="#f0f8ff",
+            font=("Arial", 11)
+        ).pack(anchor="w", padx=100, pady=5)
+
+        tk.Checkbutton(
+            self.root,
+            text="Биометрия (отпечаток)",
+            variable=self.auth_vars["biometry"],
+            bg="#f0f8ff",
+            font=("Arial", 11)
+        ).pack(anchor="w", padx=100, pady=5)
+
+        tk.Checkbutton(
+            self.root,
+            text="Многофакторная аутентификация (MFA)",
+            variable=self.auth_vars["mfa"],
+            bg="#f0f8ff",
+            font=("Arial", 11)
+        ).pack(anchor="w", padx=100, pady=5)
+
+        # Кнопка проверки
+        tk.Button(
+            self.root,
+            text="Применить настройки",
+            command=self.check_scene_1,
+            bg="#27ae60",
+            fg="white",
+            font=("Arial", 12),
+            padx=20
+        ).pack(pady=30)
+
+    def check_scene_1(self):
+        """Проверка условий сцены 1"""
+        selected = [
+            self.auth_vars["smartcard"].get(),
+            self.auth_vars["pin"].get(),
+            self.auth_vars["biometry"].get(),
+            self.auth_vars["mfa"].get()
+        ]
+
+        if sum(selected) >= 2 and self.auth_vars["mfa"].get():
+            self.score += 10
+            messagebox.showinfo("Успех", "Правильно! MFA + ещё один метод обеспечивают надёжную защиту.")
+            self.current_scene += 1
+            self.display_scene()
+        else:
+            messagebox.showwarning(
+                "Ошибка",
+                "Выберите минимум 2 метода, включая MFA."
+            )
+
+    def scene_2(self):
+        """Сцена 2: Контроль вывода на печать"""
+        tk.Label(
+            self.root,
+            text="Сцена 2: Настройка контроля печати",
+            font=("Arial", 18, "bold"),
+            bg="#f0f8ff",
+            fg="#2c3e50"
+        ).pack(pady=20)
+
+        tk.Label(
+            self.root,
+            text="Настройте правила вывода документов на принтер.",
+            font=("Arial", 12),
+            bg="#f0f8ff",
+            fg="#34495e",
+            wraplength=700,
+            justify="center"
+        ).pack(pady=10)
+
+        # Максимальное число копий
+        tk.Label(
+            self.root,
+            text="Максимальное число копий:",
+            font=("Arial", 11),
+            bg="#f0f8ff"
+        ).pack(anchor="w", padx=100, pady=5)
+
+        self.copies_var = tk.IntVar(value=1)
+        ttk.Spinbox(
+            self.root,
+            from_=1,
+            to=10,
+            textvariable=self.copies_var,
+            width=5
+        ).pack(anchor="w", padx=100, pady=5)
+
+        # Водяной знак
+        tk.Label(
+            self.root,
+            text="Добавить водяной знак:",
+            font=("Arial", 11),
+            bg="#f0f8ff"
+        ).pack(anchor="w", padx=100, pady=5)
+
+        self.watermark_var = tk.StringVar(value="Конфиденциально")
+        watermark_options = [
+            "Нет",
+            "Конфиденциально",
+            "ФИО пользователя",
+            "Дата и время",
+            "ID задания"
+        ]
+        ttk.Combobox(
+            self.root,
+            textvariable=self.watermark_var,
+            values=watermark_options,
+            state="readonly",
+            width=20
+        ).pack(anchor="w", padx=100, pady=5)

+ 168 - 0
Лекции/2.5.1300_Управление_режимом_контроля_печати_конфиденциальных_документов/Техническое задание_2.5.1300.md

@@ -0,0 +1,168 @@
+### Техническое задание: «Система контроля печати конфиденциальных документов (игровой тренажёр)»
+
+#### 1. Общие положения
+
+**1.1. Назначение документа**  
+Техническое задание определяет требования к разработке интерактивного тренажёра в форме онлайн‑игры для обучения сотрудников правилам контроля печати конфиденциальных документов.
+
+**1.2. Цель продукта**  
+Формирование практических навыков настройки защиты печати через игровое взаимодействие.
+
+**1.3. Область применения**  
+Используется для:
+* вводного инструктажа новых сотрудников;
+* периодического обучения персонала;
+* проверки знаний по информационной безопасности.
+
+#### 2. Функциональные требования
+
+**2.1. Основной сценарий (игровой цикл)**
+1. Запуск игры → выбор сценария → прохождение этапов → получение оценки → возможность повторного прохождения.
+2. Каждый этап представляет собой отдельную сцену с задачами по настройке защиты.
+3. В конце — итоговая оценка и рекомендации.
+
+**2.2. Обязательные игровые механики**
+* **Поэтапное прохождение** (5 сцен с нарастающей сложностью).
+* **Обратная связь** — мгновенные уведомления о правильности действий.
+* **Система баллов** — начисление очков за верные решения.
+* **Реиграбельность** — возможность повторного прохождения.
+
+**2.3. Содержание сцен (этапов)**
+
+**Сцена 1: Аутентификация пользователей**  
+* Элементы: чекбоксы для выбора методов (смарт‑карта, PIN, биометрия, MFA).
+* Действия: отметить минимум 2 метода, включая MFA.
+* Условия перехода: активация MFA + ещё одного метода.
+
+**Сцена 2: Контроль вывода на печать**  
+* Элементы: спинбокс (макс. число копий), комбобокс (варианты водяных знаков).
+* Действия: установить лимит копий, выбрать тип водяного знака.
+* Условия перехода: лимит ≤ 3, водяной знак ≠ «Нет».
+
+
+**Сцена 3: Шифрование данных**  
+* Элементы: радиокнопки (протоколы: IPPS, VPN, незашифрованная передача).
+* Действия: выбрать безопасный протокол.
+* Условия перехода: выбор IPPS или VPN.
+
+**Сцена 4: Журналирование и аудит**  
+* Элементы: чекбоксы (поля для логирования: время, пользователь, документ, IP).
+* Действия: отметить обязательные поля для логов.
+* Условия перехода: выбраны минимум 3 поля.
+
+**Сцена 5: Физическая защита**  
+* Элементы: радиокнопки (варианты размещения: общий холл, закрытое помещение, зона с видеонаблюдением).
+* Действия: выбрать безопасное место для принтера.
+* Условия перехода: выбор «закрытое помещение» или «зона с видеонаблюдением».
+
+
+#### 3. Требования к интерфейсу
+
+**3.1. Общий дизайн**
+* Цветовая схема: пастельные тона (#f0f8ff — фон, #2c3e50 — текст).
+* Шрифты: Arial (12–18 pt для основного текста, 24 pt для заголовков).
+* Отступы: 20–50 px для читаемости.
+
+**3.2. Элементы управления**
+* Кнопки действий — зелёные (#27ae60) с белым текстом.
+* Кнопки навигации — синие (#3498db) с белым текстом.
+* Чекбоксы/радиокнопки — стандартные для ОС.
+
+
+**3.3. Сообщения**
+* Успех — зелёное уведомление.
+* Ошибка — красное предупреждение с пояснением.
+
+* Итоги — центрированный блок с оценкой.
+
+#### 4. Требования к логике
+
+**4.1. Система подсчёта очков**
+* За каждый успешный этап: +10 баллов.
+* Максимум: 50 баллов (5 сцен × 10).
+* Оценка:
+  * 45–50: «Отлично»;
+  * 30–44: «Хорошо»;
+  * 15–29: «Удовлетворительно»;
+  * <15: «Критические уязвимости».
+
+**4.2. Условия завершения**
+* Прохождение всех 5 сцен → экран итогов.
+* Невыполнение условий этапа → повторное прохождение сцены.
+
+
+#### 5. Технические требования
+
+**5.1. Платформа**
+* Язык: Python 3.8+.
+* Библиотека: tkinter (стандартная для Python).
+* ОС: Windows, Linux, macOS.
+
+
+**5.2. Производительность**
+* Время загрузки сцены: ≤ 2 сек.
+* Реакция на действия: ≤ 0.5 сек.
+
+* Объём памяти: ≤ 50 МБ.
+
+**5.3. Совместимость**
+* Разрешение экрана: от 800×600.
+* Поддержка масштабирования интерфейса.
+
+#### 6. Требования к документации
+
+
+**6.1. Техническая документация**
+* Руководство разработчика (описание классов, методов, логики).
+* Схема взаимодействия сцен.
+* Примеры тестовых сценариев.
+
+**6.2. Пользовательская документация**
+* Инструкция для администратора (установка, настройка).
+* Краткое руководство для игрока (цели, управление).
+
+
+#### 7. Этапы разработки
+
+
+1. **Проектирование (1 неделя)**  
+   * Утверждение ТЗ.
+   * Разработка прототипа интерфейса.
+
+2. **Реализация (3 недели)**  
+   * Кодирование сцен.
+   * Интеграция логики подсчёта.
+   * Тестирование отдельных модулей.
+
+3. **Тестирование (1 неделя)**  
+   * Проверка на ошибки ввода.
+   * Нагрузочное тестирование.
+   * Юзабилити‑тест с фокус‑группой.
+
+4. **Доработка и релиз (1 неделя)**  
+   * Исправление замечаний.
+   * Подготовка дистрибутива.
+   * Публикация документации.
+
+#### 8. Критерии приёмки
+
+
+Система считается готовой при выполнении:
+* Все 5 сцен работают без ошибок.
+* Система подсчёта очков корректна.
+* Интерфейс соответствует дизайну.
+* Игра запускается на целевых ОС.
+* Документация полная и актуальная.
+
+#### 9. Ограничения и допущения
+
+* Не требуется сетевая компонента (локальное приложение).
+* Нет поддержки мобильных устройств.
+* Локализация — только русский язык.
+
+#### 10. Приложения
+
+1. Схема архитектуры приложения.
+2. Примеры экранов для каждой сцены.
+3. Таблица соответствия баллов и оценок.
+4. Чек‑лист тестирования.