Files
team-planner/REQUIREMENTS.md
2026-01-14 01:10:01 +03:00

7.1 KiB
Raw Blame History

Team Planner - Требования к приложению

Описание продукта

Приложение для команды разработки, позволяющее собирать бэклог идей, приоритизировать его, проводить брейнштормы, оценивать задачи и оставлять комментарии.


Функциональные требования

1. Управление идеями

1.1 Список идей

Таблица со следующими полями для каждой идеи:

Поле Описание Тип
Статус Текущее состояние идеи (Новая, В обсуждении, Одобрена, В работе, Готово, Отклонена) Enum
Приоритет Важность идеи (Критический, Высокий, Средний, Низкий) Enum
Модуль Где реализуется (Frontend, Backend, AI, Mobile, Infrastructure, Other) Enum/Multi-select
Суть идеи Краткое описание идеи Text
Для кого Целевая аудитория / пользователь Text
Какую боль решает Проблема, которую решает идея Text
Роль AI Что делает ИИ в рамках этой идеи (если применимо) Text
Способ проверки Быстрый способ валидации идеи / MVP Text
Комментарии Обсуждение и заметки Text (список комментариев)
Цвет Цветовая маркировка строки Color
Оценка времени AI-генерируемая оценка трудозатрат Calculated

1.2 Редактирование идей

  • Inline-редактирование: возможность редактировать любое поле прямо в таблице двойным кликом
  • Быстрое изменение статуса и приоритета через dropdown
  • Автосохранение изменений

1.3 Drag & Drop

  • Перемещение идей в списке для ручной сортировки
  • Визуальная индикация при перетаскивании
  • Сохранение порядка после перемещения

1.4 Цветовая маркировка

  • Возможность назначить цвет строке для визуального выделения
  • Предустановленная палитра цветов
  • Фильтрация по цвету

2. Сортировка и фильтрация

2.1 Сортировка

  • По любому полю (клик на заголовок колонки)
  • Множественная сортировка (Shift + клик)
  • Сохранение настроек сортировки

2.2 Фильтры

  • Фильтр по статусу
  • Фильтр по приоритету
  • Фильтр по модулю
  • Фильтр по цвету
  • Текстовый поиск по всем полям
  • Сохранение пресетов фильтров

3. AI-оценка времени

3.1 Управление командой

  • Список членов команды с ролями:
    • Backend-разработчик
    • Frontend-разработчик
    • AI/ML-инженер
    • Аналитик
    • Тестировщик (QA)
    • DevOps
    • Дизайнер
    • Project Manager
  • Количество сотрудников каждой роли

3.2 Матрица производительности

Для каждого сотрудника/роли указывается время на задачи разной сложности:

Сложность Описание Пример времени
Trivial Тривиальная задача 1-2 часа
Easy Лёгкая задача 0.5-1 день
Medium Средняя задача 2-3 дня
Hard Сложная задача 1-2 недели
Epic Эпик / большая фича 2-4 недели

3.3 AI-функционал

  • Анализ описания идеи
  • Определение необходимых ролей для реализации
  • Оценка сложности для каждой роли
  • Расчёт общего времени с учётом состава команды
  • Рекомендации по оптимизации

4. Комментарии

  • Добавление комментариев к идее
  • Ответы на комментарии (треды)
  • Упоминание участников (@mention)
  • История комментариев

Технические требования

Backend (NestJS)

Стек технологий

  • Framework: NestJS
  • Language: TypeScript
  • Database: PostgreSQL
  • ORM: TypeORM
  • API: REST + WebSocket (для real-time обновлений)
  • AI Integration: ai-proxy service тут лежит гайд по интеграции /Users/vigdorov/dev/gptunnel-service/INTEGRATION.md

Frontend (React + TypeScript)

Стек технологий

  • Framework: React 18+
  • Language: TypeScript
  • State Management: Zustand
  • UI Library: MUI
  • Table: TanStack Table (react-table)
  • Drag & Drop: dnd-kit / react-beautiful-dnd
  • HTTP Client: Axios / React Query
  • Styling: Tailwind CSS / CSS Modules

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

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

  • Виртуализация списка при большом количестве идей (1000+)
  • Оптимистичные обновления UI
  • Кэширование данных

UX

  • Отзывчивый интерфейс (< 100ms на действие)
  • Keyboard shortcuts для частых операций
  • Responsive design (desktop-first)

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

  • Валидация входных данных
  • Rate limiting для AI-запросов

Авторизация

  • Keycloak (auth.vigdorov.ru) — внешний Identity Provider
  • Авторизация через редиректы на стандартную форму Keycloak
  • Authorization Code Flow + PKCE
  • JWT токены с валидацией через JWKS
  • Автоматическое обновление токенов
  • Защита всех API endpoints (кроме /health)
  • Роли и права доступа НЕ требуются — просто аутентификация

Открытые вопросы

  1. Нужна ли многопользовательская работа и разграничение прав? НЕТ
  2. Требуется ли история изменений (audit log)? НЕТ
  3. Нужен ли экспорт данных (CSV, Excel)? НЕТ
  4. Интеграция с внешними системами (Jira, Trello)? НЕТ