Министерство образования и науки РФ Санкт-Петербургский политехнический университет Петра Великого Институт компьютерных наук и
2.77M
Категория: ПрограммированиеПрограммирование

Jira Analyzer — сервис анализа и визуализации задач

1. Министерство образования и науки РФ Санкт-Петербургский политехнический университет Петра Великого Институт компьютерных наук и

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
САНКТ-ПЕТЕРБУРГСКИЙ ПОЛИТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ПЕТРА ВЕЛИКОГО
ИНСТИТУТ КОМПЬЮТЕРНЫХ НАУК И КИБЕРБЕЗОПАСНОСТИ
ВЫСШАЯ ШКОЛА ПРОГРАММНОЙ ИНЖЕНЕРИИ
КУРСОВОЕ ПРОЕКТИРОВАНИЕ
Факультативный курс
«Введение в язык программирования Go»
Jira Analyzer — сервис анализа и визуализации задач
Санкт-Петербург
2026
Исполнители
Витковский А. А.
Вырва Е. В.
Лановенко И. С.
Руководитель
Клочкова Л. И.

2.

Цель
проекта
Microservice
Разработать микросервисное
приложение
ETL
Реализовать ETL-процесс для
выгрузки данных из JIRA.
DataBase
Использовать базу данных для
offline хранения информации
Backend
Реализовать backend с RESTинтерфейсом
Web
Реализовать web-интерфейс для
взаимодействия с пользователем

3.

Концептуальная схема проекта
1
Входные данные
Адрес Jira
репозитория
DB
хранение данных
сбор и загрузка
Connector данных
Backend обработка и
аналитика
UI
2
отображение и
взаимодействие
Выходные данные
web-страничка для
просмотра
аналитических
данных по проекту

4.

Высокоуровневая архитектура
Connector

5.

1. Worker pool
2. Graceful Shutdown
Во время отмены контекста
доступно 3 состояния горутины:
1. Собирается делать запрос
2. Делает запрос
3. Спит

6.

1. Worker pool
2. Graceful Shutdown
Во время отмены контекста
доступно 3 состояния горутины:
1. Собирается делать запрос
2. Делает запрос
3. Спит

7.

8.

Высокоуровневая архитектура
Backend

9.

Высокоуровневая архитектура
UI

10.

Data Base
project_key

11.

Jira Analyzer
Использованные
технологии
Postman
GoLand
REST – клиент для
тестирования API бэкенда
IDE для написания кода
Go
Язык для разработки
бэкенда
Docker
Создание и запуск
контейнеров
PostgreSQL
Управление
структурированными
данными
Angular
Фреймворк для создания
Frontend
Telegram
GitHub
Хранение кода, создание
веток
Общение между
участниками команды

12.

GitHub
Задачи
Единый репозиторий
Ведение системы

13.

GoLand
Docker

14.

ДЕМОНСТРАЦИЯ
РАБОТОСПОСОБНОСТ
И
И •ТЕКУЩЕГО
СТАТУСА
Работоспособность системы
Реализован многопоточный коннектор, который
загружает проекты и задачи из Jira. Данные успешно
обрабатываются и передаются дальше в систему без
ошибок.
• Текущий функционал
Бэкенд интегрирован с коннектором и базой данных.
Реализовано 5 основных эндпоинтов для работы с
проектами. Система уже может выдавать базовую
(сухую) статистику.
• Работа с базой данных и ограничения
Проекты сохраняются и удаляются по вызову
эндпоинтов. База данных настроена и стабильно
используется. Аналитические методы пока не
реализованы — это следующий этап развития системы.

15.

GET /connector/projects
• Получение списка проектов
• Поддержка пагинации
• Поддержка поиска
Эндпоитны
для
взаимодействия
с коннектором
POST /connector/updateProject
• Обновление данных
• Загрузка задач
• Многопоточность

16.

GET /projects
• Список проектов
• Данные из БД
• Краткая информация
Эндпоитны
для
взаимодействия
с базой данных
GET /projects/{id}
• Один проект
• Подробные данные
• Статистика задач

17.

Эндпоитны
для
взаимодействия
с базой данных
DELETE /projects/{id}
• Удаление проекта
• Очистка данных
• Обновление БД
Sensitive Data

18.

Jira Analyzer
Спасибо за
внимание !
English     Русский Правила