Гадание на кишках или визуализация спринтов

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Всем привет! В данной статье я расскажу о том как забавы ради сделал простенькую визуализацию спринтов из Jira. Кто не любит читать много букв может сразу посмотреть на результат или же на исходники.

Все началось с D3 - я проникся примерами и решил попробовать нарисовать что-нибудь свое. В качестве идеи для визуализации были выбраны спринты. Я решил построить график такого типа, чтобы по нему было видно кто по каким задачам работал и сколько на это уходило времени.

Внимание: для построения графика требуется, чтобы задачи были оценены в часах и чтобы программисты, тестировщики списывали потраченное время по задачам.

Чтение данных из Jira

Для чтения данных я использовал RestAPIs. Здесь модуль, в котором реализованы нужные методы. Последовательность чтения такова:

  • По boardId получаем список спринтов и находим среди них активный.

  • По activeSprintId получаем список issues

  • Для списка issues получаем statuses, worklogs, storyPoints и т.д.

Подготовка данных для визуализации сделана здесь. Так как данных довольно много, код получился муторным. Надеюсь, что найдется время его порефакторить.

Сохранение данных

Хранить данные я решил в AzureStorage. Здесь модуль, в котором реализованы нужные методы. Со стораджа нам нужно будет считать шаблоны в память, добавить в них данные из Jira и сохранить результаты на сторадж для дальнейшего просмотра.

Шаблон TimeBoardTemplate используется для построения таблицы. По данной таблице можно посмотреть прогресс вашей команды, сравнить его с другими командами, при необходимости перейти по линкам в Jira или же открыть графический отчет по спринту.

Шаблон TimeFlowTemplate используется для построения графического отчета. По данному отчету видно кто по каким задачам работал, сколько ушло на это времени. Сколько времени еще потребуется на каждую задачу. Как продвигаются задачи от несделанных к сделанным. Для детальной информации можно перейти по ссылкам в Jira.

Обновление данных

Для обновления данных была создана AzureFunction с триггером на запуск раз в полчаса. Также была сделана небольшая оптимизация, чтобы функция ничего не делала по выходным или по ночам. Весь процесс занимает совсем немного времени - так что для функции хватит самого дешевого плана.

Входные данные

Входные данные задаются здесь. С небольшими правками код должен заработать на любой облачной Jira. Нужно подправить id для кастомного поля 'Story Points' здесь. Если в вашей Jira это поле и называется по другому, то нужно будет также подправить соответствующий запрос. Ну и конечно же заполнить корректно входные данные.

Безопасность данных

Если вы не хотите, чтобы данные отчеты можно было посмотреть с любого устройства, то можно ограничить доступ к стораджу по ip.

P.S.

  • Почему 'кишки'? Коллега увидев график первый раз спросил: "Это что за кишки?" Так название и прижилось.

  • В приведенных ссылках реальные имена пользователей, задач, спринтов были заменены на сгенеренные. Сам код конечно же такой подмены делать не будет.

  • "Есть ложь, большая ложь и статистика" - делать какие либо выводы по графикам, таблицам можно только зная и понимая текущий контекст работы команд.

  • Спасибо всем кто прочитал статью!

Источник: https://habr.com/ru/post/685324/


Интересные статьи

Интересные статьи

Dash является довольно интересным Веб-фреймворком для визуализации данных и имеет в семе довольно много полезных функций в сочетании с простотой их применения.
ВведениеВ данной статье я бы хотел рассмотреть проблему обновления PHP в виртуальной машине BitrixVM, и действия, которые возможно применить если выполнение переезда на машину с обновленным ПО невозмо...
На работе я занимаюсь поддержкой пользователей и обслуживанием коробочной версии CRM Битрикс24, в том числе и написанием бизнес-процессов. Нужно отметить, что на самом деле я не «чист...
Дисциплина Computational fluid dynamics(CFD) или, на русском языке, Вычислительная гидродинамика изучает поведение различных потоков, в том числе вихревых. Это и моделирование цунами,...
Согласно многочисленным исследованиям поведения пользователей на сайте, порядка 25% посетителей покидают ресурс, если страница грузится более 4 секунд.