Документация, содержащая описание функциональных характеристик экземпляра программного обеспечения, предоставленного для проведения экспертной проверки

Титульные данные

ПолеЗначение
Наименование ПОInventions
Условное обозначение / версия1.0
ПравообладательООО «ДИТЕКС»
Дата документа15.06.2026
Назначение экземпляраЭкземпляр для проведения экспертной проверки в целях включения в реестр российского ПО

1. Назначение и решаемые задачи

Программное обеспечение Inventions предназначено для поддержки процессов управления продуктовым портфелем организации: ведение продуктов и гипотез, аналитические представления, учёт ресурсов, интеграция с внешними системами учёта задач (Jira) и аутентификации (Яндекс OAuth).

1.1. Задачи, которые решает программа

ЗадачаРезультат для пользователя
1Централизованный учёт продуктов портфеляЕдиный веб-интерфейс со списком и карточками продуктов
2Управление гипотезами и их проверкойСоздание, просмотр и детализация гипотез с таймлайном и метриками
3Аналитика по продуктам и гипотезамГрафики, показатели, агрегированные данные (контур TimescaleDB)
4Интеграция с JiraСинхронизация задач, вход по PAT, серверные запросы к трекеру
5Аутентификация и управление доступомРегистрация, вход, сессии, роли, внешние аккаунты
6Фоновая синхронизация и обогащение данныхОчереди Bull/BullMQ, кэш Redis
7Мониторинг работоспособностиHealth-checks, корреляция запросов, алерты в лог

2. Затрачиваемые ресурсы для работы

2.1. Серверная часть (экспертный стенд)

РесурсМинимумРекомендуется
CPU2 vCPU4 vCPU
RAM6 ГБ (с БД и Redis)12 ГБ
Диск30 ГБ80 ГБ SSD
СетьДоступ к реестру образов; при интеграциях — к Jira/OAuthВыделенный сегмент

2.2. Клиентская часть (рабочее место пользователя)

РесурсТребование
БраузерАктуальная версия Chrome, Firefox, Edge или Safari
Разрешение экранаОт 1280×720
СетьHTTP-доступ к хосту с развёрнутым frontend

2.3. Внешние зависимости

СервисНазначениеОбязательность
PostgreSQL / TimescaleDBХранение данныхОбязателен
RedisОчереди, кэш, rate limitingОбязателен
JiraИнтеграция с задачамиОпционально (для проверки интеграций)
Яндекс OAuthВнешний входОпционально
Сервис декомпозицииМаршрут /api/decomposition/По составу поставки

3. Входная и выходная информация

3.1. Входная информация

ИсточникТип данныхОписание
Пользователь (веб-формы)Текст, числа, даты, файлыПродукты, гипотезы, настройки, учётные данные
Jira APIJSON (задачи, проекты)Синхронизация и обогащение задач
Яндекс OAuthТокены, профильАутентификация
База данныхРеляционные записиЧтение/запись через Prisma

3.2. Выходная информация

ПотребительТип данныхОписание
Браузер пользователяHTML, JSON (REST)Страницы UI, ответы API
PostgreSQL / TimescaleDBЗаписи, агрегатыСохранённые сущности и аналитика
Jira APIHTTP-запросыОбновление/чтение задач (в объёме реализации)
ЖурналыТекстовые логиСобытия, алерты, correlation id
Экспорт аналитикиПо реализации модуля analyticsВыгрузки (Parquet и др.)

4. Архитектурный состав подсистем

ПодсистемаРеализацияНазначение
Веб-клиентfrontend/apps/webappUI, маршрутизация, вызовы REST
Сервер приложенийbackend/apps/core-backendHTTP API, очереди, аналитика
Хранение данныхPostgreSQL/TimescaleDB, PrismaСхемы users, analytics, sync
Кэш и очередиRedis, Bull/BullMQФоновые задачи, кэш, ограничение частоты
Адаптеры трекеровtracker-adaptersHTTP к Jira с circuit breaker
МониторингMonitoringModuleHealth, алерты, OpenTelemetry (опц.)

5. Функциональные характеристики веб-клиента

5.1. Аутентификация

  • Маршрут /login: внутренний вход/регистрация, Jira PAT, Яндекс OAuth.

5.2. Основные функции

ФункцияМаршрутОписание
Портфель продуктов/(private)/(products)/Список продуктов, связь с Jira
Карточка продукта/products/[id]/Сводка, финансовая аналитика, статус
Гипотезы/products/[id]/hypotheses/Список и детализация гипотез
Аналитика/analytics/Аналитические представления
Ресурсы/resources/Раздел ресурсов
Настройки/settings/Профиль, смена пароля

6. Функциональные характеристики сервера приложений (core-backend)

6.1. HTTP API

  • Платформа: NestJS, TypeScript; валидация Zod; Swagger на /api.
  • Сессии: access/refresh в httpOnly-cookie.

6.2. Контроллеры

МодульПутьНазначение
AuthauthРегистрация, вход, refresh, выход
Auth / Jiraauth/jiraВход по Jira PAT
Auth / Яндексauth/yandexOAuth
UseruserДанные пользователя
JirajiraЗапросы к Jira
IntegrationintegrationИнтеграционные операции
HealthhealthLiveness и readiness

6.3. Фоновые процессы

  • AnalyticsModule — запросы аналитики, кэш, BullMQ-воркер.
  • QueuesModule — обогащение, DLQ, cron синхронизации.

7. Ограничения экспертного экземпляра

  • Состав образов, теги и наличие внешних микросервисов для доменных маршрутов (/api/products, /api/hypotheses и др.) определяются актом поставки.
  • Производительность зависит от ресурсов СУБД, Redis и параметров пулов Prisma.
  • Полный перечень REST-операций — в Swagger развёрнутого backend.

Документ подготовлен ООО «ДИТЕКС» в соответствии с п. 2.1.4 методических рекомендаций ФГИС «Реестры ПО» (акцент на задачах, функциях, назначении, ресурсах, вводных и выходных данных).