Документ
Документация программы «Своя лига»
- Описание функциональных характеристик программного обеспечения
- Информация, необходимая для установки и эксплуатации программного обеспечения
- Описание процессов, обеспечивающих поддержание жизненного цикла программного обеспечения
- Описание технических средств хранения исходного текста и объектного кода, а также компиляции
- Описание технических средств активации, выпуска, распространения и управления лицензионными ключами
Описание функциональных характеристик программного обеспечения
1. Общие сведения
Наименование: «Своя лига». Альтернативное название, под которым программа доступна пользователям: «Лига цифрового спорта».
Правообладатель и автор: Гаврилин Никита Александрович, гражданин Российской Федерации. Исключительное право принадлежит правообладателю как автору программы (статьи 1257, 1259, 1261 ГК РФ).
Назначение: веб-платформа для проведения спортивных, киберспортивных и фиджитал-турниров и вовлечения участников в занятия физической культурой.
Пользователи: спортивные федерации, клубы, фиджитал-центры, образовательные организации, участники соревнований и их представители.
Способ предоставления: программа работает на сервере правообладателя (модель «программа как услуга»). Пользователи работают в веб-браузере на компьютере или смартфоне и в мини-приложении социальной сети ВКонтакте. Устанавливать программу на компьютер пользователя не требуется.
Интерфейс: полностью на русском языке.
2. Состав программы
- Серверная часть (язык Go): программный интерфейс (API), обработчик отложенных задач, утилита администрирования. Хранение данных — СУБД MongoDB и Redis, доставка событий в реальном времени — сервер Centrifugo.
- Клиентская часть (языки TypeScript, React): приложение участника, консоль администратора клуба, экраны для залов и трансляций, кабинеты судьи, партнёра и федерации.
- Сайт программы и сайты клубов (HTML, CSS).
3. Функциональные характеристики
3.1. Турниры
- Создание турниров по видам спорта, киберспорту и фиджитал-дисциплинам с помощью пошагового мастера.
- Приём заявок команд и участников, в том числе заявок, подписанных на бумаге; анкеты участников, составы, капитаны и запасные.
- Жеребьёвка, турнирные сетки (олимпийская система, двойное выбывание, группы, «каждый с каждым»), расписание матчей по игровым дням.
- Судейство с телефона: счёт, результаты, протоколы матчей; подтверждение судей по QR-коду.
- Итоговые протоколы соревнований, дипломы и грамоты в формате PDF, рассылка грамот участникам и капитанам команд.
3.2. Вовлечение участников
- Личный кабинет участника: профиль, достижения, история участия, документы.
- Задания клуба, мини-игры, прогнозы на матчи, рейтинги и таблицы лидеров.
- Баллы участников и магазин наград клуба; выдача призов по QR-коду.
- Направления и нормативы ГТО, учёт результатов упражнений.
3.3. Фиджитал-центр
- Расписание зон центра, бронирование зон и мероприятий, посещения, отчёты о загрузке.
- Сайт центра с расписанием и формой заявки.
3.4. Экраны в зале и трансляции
- Вывод сеток, результатов, расписания, призов и рекламы партнёров на экраны в зале; темы оформления экранов.
3.5. Уведомления
- Уведомления в приложении и в сообщениях сообщества ВКонтакте (о матчах, заявках, готовых грамотах).
3.6. Администрирование и аналитика
- Учётные записи сотрудников клуба с ролями и правами доступа; одобрение доступа мастером клуба.
- Аналитика посещаемости и активности участников; панель федерации для просмотра протоколов и аналитики по центрам.
- Управление партнёрами клуба и их кабинетами.
3.7. Защита информации и персональные данные
- Программа обрабатывает персональные данные участников. Реализованы разграничение доступа по ролям, журналирование, сроки хранения и удаление данных, согласия субъектов на обработку.
- Вход участников — через учётную запись ВКонтакте или Яндекс ID; вход сотрудников — по логину и паролю, по желанию через Яндекс ID или Google.
4. Сведения о функциональной самостоятельности
Программа не требует для работы иностранного программного обеспечения, которое нельзя заменить. Все используемые сторонние компоненты — свободно распространяемые библиотеки с открытыми лицензиями. Программа не имеет принудительного обновления и управления из-за рубежа: обновления выпускает и устанавливает только правообладатель на серверах, расположенных в Российской Федерации.
Информация, необходимая для установки и эксплуатации программного обеспечения
1. Порядок получения доступа
Программа предоставляется на условиях лицензионного договора с правообладателем. Работа ведётся через сеть Интернет на серверах правообладателя; устанавливать программу на рабочие места не требуется.
Стоимость лицензии определяется лицензионным договором и зависит от числа подключённых организаций (клубов, центров, федераций).
- Правообладатель по договору создаёт для организации (клуба, центра, федерации) рабочее пространство и первую учётную запись администратора («мастер»).
- Администратор входит в консоль по ссылке, полученной от правообладателя, и приглашает сотрудников, назначая им роли.
- Участники входят в приложение по ссылке или QR-коду клуба через ВКонтакте или Яндекс ID.
Для проверки экспертами правообладатель предоставляет тестовое рабочее пространство и учётные данные по запросу (контакт — gavrilin2k02@gmail.com).
2. Требования к рабочему месту пользователя
| Параметр | Требование |
|---|---|
| Устройство | компьютер, ноутбук, планшет или смартфон; экран в зале — любой телевизор или монитор с браузером |
| Операционная система | любая, где работает современный браузер, в том числе Альт, Astra Linux, РЕД ОС, Windows, macOS, Android, iOS |
| Браузер | Яндекс Браузер, Chromium, Google Chrome, Mozilla Firefox, Safari — актуальных версий |
| Сеть | доступ в Интернет |
| Альтернатива | мини-приложение ВКонтакте |
3. Установка серверной части
Серверная часть устанавливается и обслуживается правообладателем. Сведения приведены для полноты.
- Сервер: x86-64, от 2 ядер и 4 ГБ памяти, операционная система семейства Linux (проверена работа на Альт и Astra Linux — см. протокол испытаний).
- Окружение: Docker и Docker Compose; MongoDB 7 (набор реплик), Redis 7, Centrifugo, веб-сервер Caddy.
- Порядок: получить исходный текст из хранилища правообладателя; задать параметры в файле окружения (адреса баз данных, секретные ключи, список клубов); собрать и запустить сервисы командой Docker Compose; проверить готовность по адресу /readyz.
- Клиентская часть собирается в статические файлы и размещается в объектном хранилище с сетью доставки содержимого.
- Резервное копирование: ежечасные зашифрованные копии баз данных в два независимых хранилища в Российской Федерации.
4. Эксплуатация
4.1. Роли пользователей
| Роль | Возможности |
|---|---|
| Мастер клуба | настройки клуба, сотрудники и их права, одобрение доступа |
| Администратор | турниры, заявки, расписание, награды, задания, экраны, аналитика |
| Судья | ввод счёта и результатов матчей с телефона |
| Участник | заявки, профиль, задания, игры, прогнозы, награды, грамоты |
| Партнёр | кабинет партнёра, призы, аналитика по своим призам |
| Федерация | просмотр протоколов и аналитики по центрам (только чтение) |
4.2. Типовой сценарий проведения турнира
- Администратор создаёт турнир в мастере: дисциплина, формат, сроки, требования к заявке.
- Участники подают заявки в приложении; администратор проверяет и принимает заявки.
- Проводится жеребьёвка, формируется сетка и расписание; матчи выводятся на экраны в зале.
- Судьи вводят результаты с телефона; сетка и таблицы обновляются автоматически.
- По окончании формируются протокол и грамоты; грамоты рассылаются участникам.
4.3. Справка
В консоли встроены подсказки и пошаговые обучающие материалы по каждому разделу. Вопросы по работе программы направляются правообладателю (gavrilin2k02@gmail.com).
Описание процессов, обеспечивающих поддержание жизненного цикла программного обеспечения
1. Общие положения
Поддержание жизненного цикла программы — исправление ошибок, совершенствование, гарантийное обслуживание и техническая поддержка — осуществляет правообладатель, Гаврилин Никита Александрович, гражданин Российской Федерации. Иностранные лица к поддержке и доработке не привлекаются.
2. Техническая поддержка
- Обращения принимаются по электронной почте gavrilin2k02@gmail.com, в сообщениях сообщества ВКонтакте и через раздел поддержки в программе.
- Обращение регистрируется, классифицируется по срочности и получает ответ.
| Срочность | Пример | Срок реакции |
|---|---|---|
| Критическая | программа недоступна, потеря данных | в течение 4 часов |
| Высокая | не работает важная функция | в течение 1 рабочего дня |
| Обычная | вопрос, пожелание, неудобство | в течение 3 рабочих дней |
3. Устранение неисправностей
- Доступность программы проверяется автоматически каждые 5 минут; о сбое правообладатель получает оповещение.
- Неисправность воспроизводится, причина устраняется в исходном тексте, исправление проверяется автоматическими тестами и выпускается.
- Выпуск обновления сервера выполняется без перерыва в работе: копии сервиса перезапускаются по очереди.
- При необходимости выполняется откат к предыдущей версии; данные восстанавливаются из резервных копий.
4. Совершенствование программы
- Предложения пользователей и заказчиков собираются в перечень задач и включаются в план доработок.
- Каждое изменение проходит автоматические проверки (форматирование, статический анализ, модульные и интеграционные тесты, сквозные тесты интерфейса) и проверку кода перед выпуском.
- Сведения о выпуске новых возможностей доводятся до пользователей в программе.
5. Хранение исходного текста и сборка
Исходный текст хранится в системе управления версиями на территории Российской Федерации; компиляция выполняется на территории Российской Федерации (подробно — в отдельном документе).
6. Персонал
| Функция | Исполнитель | Квалификация |
|---|---|---|
| Разработка, исправление ошибок, выпуск обновлений | Гаврилин Никита Александрович | разработчик программы, автор исходного текста |
| Техническая поддержка пользователей | Гаврилин Никита Александрович | — |
| Администрирование серверов и резервное копирование | Гаврилин Никита Александрович | — |
При росте числа пользователей правообладатель привлекает дополнительный персонал — граждан Российской Федерации.
Описание технических средств хранения исходного текста и объектного кода, а также компиляции
1. Хранение исходного текста
- Система управления версиями Git на платформе SourceCraft (оператор — ООО «Яндекс.Облако», Российская Федерация), приватный репозиторий правообладателя.
- Доступ к репозиторию — только у правообладателя; вход через Яндекс ID с двухфакторной аутентификацией; доступ автоматизированных процессов — по персональным токенам, ограниченным одним репозиторием и сроком действия.
- Рабочая копия исходного текста — на компьютере правообладателя в Российской Федерации.
2. Компиляция и сборка
| Часть | Где собирается | Расположение |
|---|---|---|
| Серверная часть (Go) | на сервере правообладателя, в процессе выпуска (Docker) | ООО «Селектел», г. Москва, регион ru-7 |
| Клиентская часть (TypeScript) | облачные исполнители CI/CD платформы SourceCraft | Яндекс Облако, зона ru-central1-d, Российская Федерация |
| Автоматические проверки и тесты | облачные исполнители CI/CD платформы SourceCraft | то же |
Подтверждение расположения исполнителей CI/CD: проверочный запуск 22.10.2026 — зона облака ru-central1-d, внешние IP-адреса 185.206.167.149 и 185.206.167.160 принадлежат ООО «Яндекс.Облако» (AS200350), страна — Россия, город — Москва.
3. Хранение объектного кода
- Исполняемые файлы серверной части — в образах контейнеров на сервере правообладателя (ООО «Селектел», г. Москва).
- Собранная клиентская часть — в объектном хранилище Yandex Object Storage (Российская Федерация).
- Резервные копии — в объектных хранилищах Яндекс Облака и ООО «Селектел» (Российская Федерация).
Описание технических средств активации, выпуска, распространения и управления лицензионными ключами
Программа не использует лицензионные ключи и не требует активации.
Программа предоставляется как услуга на серверах правообладателя. Доступ организации к программе открывается созданием её рабочего пространства и учётной записи администратора на сервере правообладателя (ООО «Селектел», г. Москва); прекращение доступа — блокировкой рабочего пространства. Доступ пользователей определяется учётными записями и ролями, которыми управляют администраторы организации.
Технические средства, обеспечивающие предоставление и прекращение доступа, находятся на территории Российской Федерации и контролируются правообладателем — гражданином Российской Федерации.