From 242766ad0bc7d8ee48326c746d6c7fd385b6f4c3 Mon Sep 17 00:00:00 2001 From: Dauren777 Date: Fri, 26 Jun 2026 06:54:54 +0000 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?= =?UTF-8?q?=D0=BD=20PRD.md=20=E2=80=94=20=D0=BE=D0=BF=D0=B8=D1=81=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D0=BF=D1=80=D0=BE=D0=B4=D1=83=D0=BA=D1=82?= =?UTF-8?q?=D0=B0=20=D0=B8=20=D1=82=D1=80=D0=B5=D0=B1=D0=BE=D0=B2=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D0=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PRD.md | 144 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 PRD.md diff --git a/PRD.md b/PRD.md new file mode 100644 index 0000000..7fb4f38 --- /dev/null +++ b/PRD.md @@ -0,0 +1,144 @@ +# PRD — ПульсоMonitor: дистанционный мониторинг пациентов с ХОБЛ + +**Версия:** 1.0 · **Статус:** прототип (демо) · **Репозиторий:** `Amanbayeva_Nazym/copd-monitor` +**URL:** https://pages.git.vibe42.kz/Amanbayeva_Nazym/copd-monitor/ + +--- + +## 1. Описание продукта + +Веб-приложение для дистанционного мониторинга пациентов с хронической обструктивной болезнью лёгких (ХОБЛ) медицинским персоналом. Пациент ведёт дневник самомонаблюдения и отмечает приём препаратов; система автоматически сегментирует состояние по зонам риска (светофор), показывает «красные флаги» и инструкции самопомощи. Медработник видит панель пациентов, отсортированную по степени риска, отчёты по сегментации и охвату, протокол действий и может назначать базисную терапию из каталога. + +## 2. Проблема и цель + +- **Проблема:** обострения ХОБЛ часто выявляются поздно — на этапе госпитализации. Рутинный контроль в поликлинике нерегулярен, adherence к терапии низкий. +- **Цель:** раннее выявление ухудшений по ежедневным показателям, снижение числа госпитализаций и нагрузки на приём врача, повышение приверженности лечению. + +## 3. Пользователи и роли + +| Роль | Сценарий | +|------|----------| +| **Пациент с ХОБЛ** | Ежедневно заполняет дневник (SpO₂, АД, ЧСС, ЧДД, одышка, CAT), отмечает приём препаратов, видит свою зону риска, красные флаги и образовательные материалы. | +| **Медицинский персонал** (врач / медсестра) | Мониторит контур пациентов по зонам риска, работает с отчётами, назначает терапию, фиксирует вмешательства, действует по протоколу «светофор». | + +> В прототипе роли переключаются в шапке без аутентификации (демо-режим). + +## 4. Границы продукта (стек и ограничения) + +- **Тип:** статическое клиентское веб-приложение (HTML + CSS + vanilla JS). +- **Хранилище:** `localStorage` браузера (данные не синхронизируются между устройствами). +- **Без бэкенда, БД, аутентификации, серверов.** +- **Интеграция с приборами — имитация (mock)** Bluetooth-чтения (Web Bluetooth не используется). +- **Адаптив:** десктоп и мобильные. + +## 5. Функциональные требования + +### 5.1. Кабинет пациента + +- **FR-1. Дневник самомонаблюдения** (новая запись): SpO₂ (%), АД (систолическое/диастолическое, мм рт.ст.), ЧСС (уд/мин), ЧДД (/мин), одышка по шкале mMRC (0–4), характер мокроты, заметка. +- **FR-2. Анкета CAT** — 8 вопросов (0–5 баллов), автоподсчёт суммы (0–40) с интерпретацией уровня влияния ХОБЛ. +- **FR-3. Базисные препараты и время приёма** — список назначенной схемы, отметка «принят/пропущен/запланирован», кнопка «Отметить приём». +- **FR-4. Напоминания** — при пропуске времени приёма препарата пациенту показывается напоминание, врач видит пропуск. +- **FR-5. Интеграция с приборами (mock)** — кнопки «Пульсоксиметр» (заполняет SpO₂, ЧСС) и «Тонометр» (заполняет АД) в форме дневника. +- **FR-6. Сегментация состояния** — после сохранения записи определяется зона риска (🟢/🟡/🔴) по SpO₂, ЧСС, ЧДД. +- **FR-7. Красные флаги** — динамические инструкции самопомощи при ухудшении (падение SpO₂, резкая одышка, ЧДД>24, ЧСС>110) с порогом вызова скорой. +- **FR-8. Образование и самопомощь** — раскрытые блоки: дыхательная гимнастика, техника ингаляции, план действий «светофор», когда вызывать скорую. +- **FR-9. История записей** — таблица всех замеров с зоной. + +### 5.2. Панель медработника + +- **FR-10. Вкладки:** 🩺 Пациенты / 📊 Отчёты / 🚦 Протокол (светофор). +- **FR-11. Список пациентов по степени риска** — сортировка красная → жёлтая → зелёная, флаги «ухудшение / внимание / пропуск препарата / CAT», мини-показатели. +- **FR-12. Карточка пациента** — последние показатели, динамика (sparkline SpO₂/ЧСС/ЧДД), история, adherence по препаратам, текущие флаги. +- **FR-13. Вмешательства и назначения врача** — добавление текстовых записей (вмешательства/назначения) с датой, хранение в истории пациента. +- **FR-14. Назначение базисной терапии** — выбор препаратов из каталога (с группировкой по классам) с редактируемым временем приёма; назначенная схема отображается в кабинете пациента. Дубликаты не добавляются. + +### 5.3. Отчёты (FR-15..FR-16) + +- **FR-15. Отчёт по сегментации пациентов:** распределение по зонам (количество и %), столбчатые индикаторы, списки пациентов по каждой зоне. +- **FR-16. Отчёт по охвату мониторингом:** всего под наблюдением; активны (замер ≤24ч); нет замеров >24ч; adherence препаратов (% принятых доз от назначенных); средний CAT; счётчики по зонам; список пациентов, требующих внимания (нет свежих замеров). + +### 5.4. Протокол «светофор» (FR-17) + +- Расширенный протокол по трём зонам с блоками: **критерии**, **действия пациента**, **действия медперсонала**, **эскалация**. + +## 6. Логика сегментации (светофор) + +Общая зона = худшая из трёх показателей. + +| Показатель | 🟢 Зелёная | 🟡 Жёлтая | 🔴 Красная | +|------------|-----------|----------|-----------| +| SpO₂ | ≥ 95 % | 90–94 % | < 90 % | +| ЧСС | 60–100 | 101–110 (или 50–59) | > 110 (или < 50) | +| ЧДД | 12–20 | 21–24 | > 24 (или < 12) | + +**CAT (сумма 8 вопросов, 0–40):** ≤9 — низкое влияние; 10–20 — среднее; 21–30 — высокое; >30 — очень высокое. +**mMRC (одышка):** 0–4. + +## 7. Каталог базисной терапии ХОБЛ + +Группы для назначения врачом: +1. **Купирование** — сальбутамол, фенотерол, ипратропия бромид, ипратропий/фенотерол. +2. **ЛАМА** — тиотропий, гликопирроний, аклидиний, умеклидиний. +3. **ЛАБА** — индакатерол, олодатерол, сальметерол, формотерол. +4. **ЛАМА/ЛАБА** — гликопирроний/индакатерол, тиотропий/олодатерол, умеклидиний/вилинтерол. +5. **ИГКС/ЛАБА** — будесонид/формотерол, флутиказон/сальметерол, флутиказон/вилинтерол, беклометазон/формотерол. +6. **Тройная терапия (ИГКС/ЛАБА/ЛАМА)** — флутиказон/умеклидиний/вилинтерол, беклометазон/формотерол/гликопирроний. +7. **Прочее** — рофлумиласт (ФДЭ-4), N-ацетилцистеин, эрдостеин, азитромицин (профилактика обострений), длительная О₂-терапия. + +## 8. Модель данных (localStorage, ключ `copd_monitor_v2`) + +``` +state = { + role: "patient" | "staff", + staffTab: "patients" | "reports" | "protocol", + currentPatient: "p1", + patients: [ patient ] +} +patient = { + id, name, age, diag, + meds: [ { id, name, times: ["08:00",...] } ], + entries: [ entry ], + interventions: [ { ts, text } ] +} +entry = { + id, ts, + spo2, sys, dia, hr, rr, mmrc, + cat: [8 чисел 0–5], catTotal, + meds: { "medId@time": { taken: bool, at? } }, + note +} +``` + +## 9. Демо-данные + +4 пациента с разным состоянием: стабилен (зелёная), внимание (жёлтая, пропуск препарата), ухудшение (красная, гнойная мокрота, О₂-терапия, демо-вмешательства), стабилен (зелёная). + +## 10. Нефункциональные требования + +- NFR-1. Только статика (HTML/CSS/JS), без сборщиков и фреймворков. +- NFR-2. Работает офлайн после первой загрузки (данные в localStorage). +- NFR-3. Адаптивный интерфейс (мобильные/десктоп). +- NFR-4. Соответствие подходу 152-ФЗ заявлено в интерфейсе (в прототипе реальная обработка ПДн не реализована — нет сервера). + +## 11. За пределами версии (Out of scope) + +- Реальный бэкенд, БД, аутентификация ролей и синхронизация данных. +- Реальная интеграция с медицинскими приборами по Bluetooth (Web Bluetooth API). +- Интеграция с ЭМК / ЕМИАС, направления на госпитализацию. +- Push-уведомления вне браузера, телеметрия в реальном времени (WebSocket). +- Спирометрия (ПСВ/ОФВ1) с расчётом от должных значений. + +## 12. Roadmap (следующие итерации) + +1. Спирометрия — ПСВ и ОФВ1, расчёт от должных (рост/возраст/пол), отдельная сегментация. +2. Экспорт карты пациента в PDF (печать). +3. Реальная интеграция с приборами через Web Bluetooth API. +4. Серверная часть + БД + ролевая аутентификация (врач/медсестра/пациент). +5. Интеграция с ЭМК, автоматические направления и госпитализация. +6. Push-уведомления и телеметрия в реальном времени. +7. Многоязычность (KK/RU), доступность (a11y). + +## 13. Технологии + +HTML5 · CSS3 (собственная дизайн-система, палитра: ink `#0F1218`, cyan `#00E5FF`, зелёная/жёлтая/красная зоны) · vanilla JavaScript (ES5) · localStorage · публикация через ветку `pages` (Caddy).