Skip to content

Requirements Analyst — Мобильное подтверждение ознакомления и согласия

Вердикт: GO MVP: 12 недель, 5 человек, ~192,000 EUR Стек: Swift (iOS) + Kotlin (Android) + Go (Backend) + Next.js (Web) + PostgreSQL + Redis


1. MoSCoW-приоритизация

Must-Have (MVP)

ID Требование Обоснование
M1 Регистрация пользователя по email с подтверждением Без идентификации нет субъекта подписи
M2 Локальное хранение изображения подписи на устройстве Ключевое УТП: минимальный сбор данных
M3 Создание подписи — пользователь рисует/загружает один раз Базовая механика продукта
M4 Face ID / Touch ID / PIN для подтверждения Безопасность без серверной аутентификации
M5 Загрузка PDF компанией и отметка места подписи Функция бизнес-стороны
M6 Отправка запроса на подпись пользователю Ключевой поток «компания → пользователь»
M7 Наложение подписи в указанное место PDF Core-механика: генерация подписанного документа
M8 Электронный след (timestamp, device ID, хеш документа) Доказательная база для compliance
M9 Возврат подписанного PDF компании Завершение бизнес-цикла
M10 End-to-end шифрование (покой + передача) Datenschutz/GDPR

Should-Have (MVP+1)

ID Требование
S1 Dashboard для компании: статусы, история
S2 Push-уведомления о новых запросах
S3 Массовая отправка одного документа группе
S4 Аудит-лог всех действий
S5 Экспорт подписанных документов
S6 Срок действия запроса на подпись

Could-Have (MVP+2)

ID Требование
C1 Шаблоны документов
C2 Множественные подписи на одном документе
C3 Интеграция с HR-системами (Personio, SAP) по API
C4 Кастомные поля перед подписанием (имя, дата, должность)
C5 Верификация подписи через публичный ключ (eIDAS Advanced)
C6 White-label: брендирование под клиента

Won't-Have (явно исключено)

ID Требование Причина
W1 QES (eIDAS Qualified) Требует сертифицированного провайдера
W2 Хранение подписей на сервере Противоречит Datenschutz-УТП
W3 Видеоидентификация KYC/AML — отдельный рынок
W4 Блокчейн-нотаризация Переусложнение
W5 Интеграция с DocuSign/Adobe Sign Мы — замена, не дополнение

2. User Stories (ключевые)

US-01: Регистрация пользователя - Ввод email → код подтверждения → создание подписи (рисование) → настройка Face ID / Touch ID / PIN - Подпись сохраняется локально в Keychain/Keystore

US-02: Загрузка документа и отметка места подписи (Company Admin) - Загрузка PDF до 10 МБ, drag-and-drop места подписи, навигация по страницам - Валидация: хотя бы одно место подписи размещено

US-03: Получение запроса на подпись - Push-уведомление + список ожидающих документов в приложении - Просмотр PDF внутри приложения, отображение названия, отправителя, срока

US-04: Подписание документа - Кнопка «Подписать» → системный диалог биометрии/PIN → наложение подписи - Генерация электронного следа (timestamp, device ID, хеш)

US-05: Получение подписанного документа (Company Admin) - Уведомление при подписании, скачивание PDF с визуальной подписью + страницей аудит-следа

US-06: Отказ от подписания - Кнопка «Отклонить» + опциональная причина → уведомление отправителю

US-07: Групповая рассылка - Загрузка PDF один раз → список получателей (ручной ввод / CSV) → массовая отправка

US-10: Удаление аккаунта (GDPR Art. 17) - Серверные данные удаляются в течение 30 дней - Локальные данные удаляются немедленно - Подписанные PDF, уже переданные компаниям, НЕ модифицируются

US-12: Офлайн-подписание - PDF кешируется на устройстве, подписание работает без интернета - При появлении сети — автосинхронизация


3. System Boundaries

Внутри системы:

  • Mobile App (iOS/Android): нативное, локальное хранилище подписи, биометрия
  • Web Portal (Company Admin): загрузка и разметка PDF, dashboard, экспорт
  • Backend API: аутентификация, оркестрация, аудит-лог. НЕ хранит изображения подписей
  • PDF Processing Service: наложение подписи, встраивание метаданных, хеширование

Снаружи системы:

APNs, FCM, Email-провайдер, App Store/Google Play, NTP-серверы, HR-системы (опционально), S3-хранилище


4. Edge Cases (критические)

# Edge Case Severity Mitigation
1 Биометрия скомпрометирована Critical Email-уведомление при каждом подписании; device ID в аудит-следе
2 Смена устройства пользователем High Пересоздание подписи; старые подписи верифицируемы по старому device ID
5 Jailbreak/root-устройство High Детекция при запуске; отметка device_integrity=compromised в аудит-следе
6 PDF с вредоносным кодом Critical Санитизация при загрузке: удаление JavaScript, embedded files
11 Потеря S3-хранилища Critical Репликация минимум 2 AZ; автоматический retry
12 APNs/FCM недоступны High Email как fallback-канал
15 Изменение законодательства (eIDAS 2.0) Medium Регулярный legal review; архитектура плагинов для методов подписи

5. Key Assumptions

# Assumption Impact if wrong
A1 Визуальная подпись + биометрия + аудит-след убедительны для немецких судов Critical
A2 Пользователи готовы устанавливать отдельное приложение High
A3 Компании готовы платить (vs бесплатный DocuSign free tier) Critical
A6 GDPR compliance через локальное хранение + минимальный сбор High (нужен DPIA)
A7 Рынок DACH достаточен для окупаемости Critical

6. Рекомендуемый стек

Компонент Выбор Обоснование
iOS Swift + SwiftUI Нативный доступ к Keychain, LocalAuthentication
Android Kotlin + Jetpack Compose Нативный доступ к Keystore, BiometricPrompt
Backend Go (Echo/chi) Производительность, PDF-библиотеки
База данных PostgreSQL 16+ Аудит-лог, JSONB, ACID
Кеш/очереди Redis Сессии, очередь PDF-обработки
Хранилище PDF MinIO (self-hosted) или S3 Временное хранение
Web Portal Next.js 15+ (React) SSR + CSR для dashboard
Хостинг Hetzner Cloud Немецкие дата-центры, Datenschutz
CI/CD GitHub Actions Интеграция, бесплатно
Мониторинг Grafana + Prometheus + Loki Логи, метрики, аудит

7. Итоговая оценка готовности

Критерий Оценка
Ясность ценностного предложения Высокая
Техническая реализуемость Высокая
Юридические риски Средние — нужен Rechtsgutachten
Рыночные риски Средние — нужна валидация willingness-to-pay
MVP complexity Средняя — 12 недель, 5 человек
Зависимости Управляемые — все критические зависимости зрелые

Рекомендуемый следующий шаг (до разработки):

  1. Legal review (2 нед.): консультация с Fachanwalt für IT-Recht
  2. Customer development (3 нед.): 20 интервью с HR-директорами Mittelstand
  3. DPIA — обязателен по GDPR Art. 35 для биометрических данных
  4. Proof-of-concept PDF pipeline (1 нед.): валидация PDF-библиотеки