Files
otus-kotlin-developer/docs/02-analysis/02-nonfunctional-requirements.md
Александр Веденёв f0446dee20 module 3 lesson 1
2025-02-05 13:23:17 +07:00

7.3 KiB
Raw Permalink Blame History

Нефункциональные требования для DualSpace Messenger:


1. Производительность

1.1. Скорость доставки сообщений

  • Источник требования: Пользователи, техническая команда.
  • Описание: Сообщения должны доставляться в режиме реального времени.
  • Параметры:
    • Задержка доставки сообщений ≤ 1 сек (для 95% запросов).
    • Время отклика интерфейса при отправке сообщения ≤ 500 мс.
  • Приоритет: Высокий.

1.2. Нагрузочная устойчивость

  • Источник требования: Техническая команда.
  • Описание: Система должна выдерживать пиковые нагрузки (например, массовая отправка сообщений).
  • Параметры:
    • Поддержка 10,000 одновременных пользователей на одном сервере.
    • Обработка до 1,000 сообщений в секунду.
  • Приоритет: Высокий.

2. Надёжность

2.1. Доступность сервиса

  • Источник требования: Все пользователи.
  • Описание: Минимизация времени простоя.
  • Параметры:
    • Доступность 99.99% (SLA).
    • Время восстановления после сбоя (MTTR) ≤ 15 минут.
  • Приоритет: Высокий.

2.2. Резервное копирование данных

  • Источник требования: Администраторы, юристы.
  • Описание: Гарантия сохранности данных при сбоях.
  • Параметры:
    • Ежечасное резервное копирование чатов и метаданных.
    • Хранение резервных копий ≥ 30 дней.
  • Приоритет: Высокий.

3. Безопасность

3.1. Шифрование данных

  • Источник требования: Корпоративные клиенты, юристы.
  • Описание: Защита конфиденциальной информации.
  • Параметры:
    • Сквозное шифрование (E2EE) для сообщений и вложений.
    • Поддержка TLS 1.3 для передачи данных.
  • Приоритет: Высокий.

3.2. Аутентификация и авторизация

  • Источник требования: Техническая команда.
  • Описание: Предотвращение несанкционированного доступа.
  • Параметры:
    • Обязательная двухфакторная аутентификация (2FA) для корпоративных аккаунтов.
    • Сессии автоматически завершаются после 30 минут неактивности.
  • Приоритет: Высокий.

4. Масштабируемость

4.1. Горизонтальное масштабирование

  • Источник требования: Техническая команда.
  • Описание: Поддержка роста пользовательской базы.
  • Параметры:
    • Возможность добавления серверов без прерывания работы.
    • Автоматическая балансировка нагрузки (например, Kubernetes).
  • Приоритет: Средний.

4.2. Интеграция с облачными сервисами

  • Источник требования: Техническая команда.
  • Описание: Гибкость развёртывания.
  • Параметры:
    • Поддержка AWS, Google Cloud, Azure, Я.Облако.
    • Автомасштабирование при увеличении нагрузки на 50%.
  • Приоритет: Средний.

5. Совместимость

5.1. Кроссплатформенность

  • Источник требования: Все пользователи.
  • Описание: Работа на всех популярных ОС и устройствах.
  • Параметры:
    • Поддержка: iOS 14+, Android 10+, Windows 10+, macOS 11+.
    • Веб-версия: Chrome, Firefox, Safari, Edge (последние 2 версии).
  • Приоритет: Высокий.

5.2. Интеграция со сторонними сервисами

  • Источник требования: Пользователи (ИТ-команды, фрилансеры).
  • Описание: Совместимость с инструментами разработки и видеоконференций.
  • Параметры:
    • Поддержка API Zoom, Google Meet, Jira, GitHub.
    • Обновление интеграций при выходе новых версий API.
  • Приоритет: Средний.

6. Удобство использования (Usability)

6.1. Отзывчивый интерфейс

  • Источник требования: Все пользователи.
  • Описание: Интуитивный дизайн для снижения времени обучения.
  • Параметры:
    • 95% пользователей осваивают базовые функции за ≤ 10 минут.
    • Рейтинг удовлетворённости интерфейсом ≥ 4.5/5 (на основе опросов).
  • Приоритет: Высокий.

7. Локализация

7.1. Поддержка языков

  • Источник требования: Международные пользователи.
  • Описание: Адаптация под разные регионы.
  • Параметры:
    • Поддержка английского, русского, испанского, немецкого языков на старте.
    • Локализация дат, валют и единиц измерения.
  • Приоритет: Низкий.

8. Документация

8.1. Техническая документация

  • Источник требования: Разработчики, администраторы.
  • Описание: Подробные руководства для интеграции и поддержки.
  • Параметры:
    • OpenAPI-спецификация для публичных API.
    • Примеры кода на Kotlin, JavaScript.
  • Приоритет: Средний.

Приоритеты

  • Высокий: Безопасность, доступность, скорость доставки сообщений.
  • Средний: Масштабируемость, интеграции, документация.
  • Низкий: Локализация, кастомные темы.