Всем привет, меня зовут Дмитрий. Я руковожу продуктами EvaTeam. Так как Jira ушла из России, мы занялись её заменой и обнаружили интересный факт – Jira это не только отдельный продукт, но и вся экосистема вокруг неё. Сообщество, плагины, видео и мануалы, куча сертифицированных админов и много чего ещё. И чтобы полноценно заменить австралийское решение, нужно не просто скопировать функционал, а ещё и воссоздать всё что его окружало.

Конкретно в этой статье хочу рассказать о популярных плагинах Jira: Scriptrunner, Tempo Timesheets, Structure и т.д. Что они позволяли делать в Jira и чем их заменить.

О плагинах в Jira 

Сейчас будет небольшая справка о том, как вообще существует рынок плагинов.

Маркетплейс плагинов и сама Jira появились не в один день. Сначала австралийцы рассчитывали на свои силы и самостоятельно добавляли функционал в систему. Что в целом, наверно, было стандартом отрасли на тот момент. Но в 2012 году компания запустила платформу, которая позволяла расширять систему с помощью сторонних плагинов. Множество разработчиков приступило к созданию расширений, которые они могли продавать в маркетплейсе и иметь с этого неплохую выручку.

Интересно что Atlassian иногда смотрела на популярные плагины и добавляла их функционал в свои продукты. Из-за этого существовал небольшой конфликт интересов. Но все же это можно считать частными случаями. Ведь маркетплейс настолько разросся, что все добавить в продукт было просто нереально. Однако существовал определенный набор плагинов, который использовали большинство компаний, но их функционала по дефолту в системе не было.

Кстати, интересный факт об особенностях блокировки пользователей из России со стороны Atlassian. Уже, наверно все знают, что выборочно блокируются учетки из России. Но не все знают что ещё и разработчики плагинов из России попали под санкции. Некоторых из них просто заблокировали. Некоторые теперь «прописались» в других странах. Возможно, некоторых это ещё не коснулось.

Есть ещё интересная сторона таких санкций. Ведь плагины на маркетплейс выкладывают сторонние компании. Соответственно, иногда они тоже блокируют пользователей из России, при этом не сильно обращая внимание на политику Atlassian. Иногда санкции даже жестче — с полной блокировкой доступа к данным пользователя и к функционалу.

В целом идея с маркетплейсом иногда даёт сбой. Потому что разные разработчики это разные лицензии, за которыми нужно следить. За покупкой "Джиры" обычно следует выбор плагинов, потому что без них она очень слабая. Соответственно, это дополнительное время, выбор поставщика, утверждение бюджета и прочие прелести, которые ждут вас при выборе продукта. Ведь по факту это покупка нового ПО.

Когда мы начали опрашивать клиентов на тему «какие плагины им нужны», удалось выделить ряд решений, которыми пользовалось большинство компаний. И тут мы решили пойти дальше Atlassian и добавить их функционал к себе по умолчанию. Вот так вот просто. Этим пользуются почти все, значит и мы это к себе добавим. Чтобы пользователям не нужно было докупать какие-то решения на маркетплейсе, и они могли просто пользоваться этим «из коробки».

И вот что мы добавили…

ScriptRunner 

Уже упоминал этот плагин в статье про автоматизацию в российском аналоге Jira. Но расскажу ещё раз.

Это плагин для Jira, который позволяет пользователям настраивать и автоматизировать различные задачи и процессы с помощью скриптов. Автоматизация пишется на языке Groovy — это скриптовый язык с Java-подобным синтаксисом. С его помощью можно настраивать любую автоматизацию в системе. Это не единственный плагин в системе с таким функционалом. Но точно самый популярный.

По факту Jira без автоматизаций не подходит компаниям, в которых есть хотя бы несколько отделов или им нужно хоть немного сократить ручной труд. Из-за этого мы и решили добавить в EvaProject такой функционал. Автоматизация пишется на bzpython – python-язык с дополнительными методами и встроенными переменными окружения. Позволяет настраивать автоматизацию:

  • Бизнес процессов,

  • Триггеров,

  • Экранов,

  • По крону.

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

В документации представлено множество готовых скриптов, которые можно использовать в своих проектах. Есть и другие возможности, которые использовали в Jira. Например, Behaviors-поля в EvaProject, которые были в ScriptRunner, можно использовать у нас. Называется это – Автоматизация Экраны.

Небольшой пример этого функционала в EvaProject. Например, при запуске спринта с названием Backend мы хотим создавать дочерние задачи под каждой задачей в спринте⁠. Для этого:

  1. Зайдём в настройки Автоматизация – Триггеры и создадим новый. В настройках укажем:

  2. А в выполняемом коде напишем:

if self.status.is_changed and self.status.name == "В работе" and 'Backend' in self.name:
    # Лучше завести отдельный logic_type для спринта Backend и проверять на logic_type спринта
    for par_task in self.members:
        name_daughter_task = f'Дочерняя задача(auto). {par_task.name}'
        daughter_task = models.CmfTask.get(filter=[['parent_task', '==', par_task], ['name', '==', name_daughter_task]])
        if not daughter_task:
            daughter_task = models.CmfTask(parent_task=par_task, name=name_daughter_task, logic_type='task.feature:default')
            daughter_task.save()

Сохраняем всё и радуемся новой автоматизации.

eazyBI 

Плагин для Jira отвечающий за создание и анализ отчетов и дашбордов. Даёт кучу инструментов для анализа данных: различные графики, диаграммы, таблицы и много чего ещё.

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

Стоит сказать что eazyBI не просто плагин для Jira. Также его можно использовать как полноценное решение для аналитики, сравнимое с популярным Power BI. Точно также можно импортировать различные виды данных из разных источников: от Excel-таблиц до различных баз данных (поддерживаются MySQL , PostgreSQL , MS SQL и Oracle). Нужно уточнить что это по факту два продукта: плагин eazyBI и Private eazyBI. Оба можно подключить к Jira, но лучше всего будет работать именно решение с маркетплейса. Там лучше интеграция, оптимизированное API, проще настройка и разные возможности по отображению отчетов сразу в Jira или Confluence. 

Без аналитики сложно представить себе любую систему для управления проектами. Поэтому мы постепенно добавляем функционал плагина к нам. Уже готово большое количество основных видов отчетов, есть их шаблоны, которые можно быстро добавить. Ещё есть дашборды, чтобы создать отдельную страницу и отслеживать все показатели на ней. Быстро, удобно, как в Jira.

Structure и Structure.Gantt 

Огромный плагин, который позволяет управлять задачами. Нужен для создание гибкой настраиваемой иерархии задач. Суммирования, группировки и сортировки данных для получения необходимой информации. Если у вас несколько проектов, большое количество задач и сотрудников, то с помощью плагина вы сможете всем этим жонглировать. Его дополнение Structure.Gantt – позволяет выводить данные на диаграмме Ганта.

У этого плагина действительно обширный функционал, который затрагивает планирование, учет времени по задачам, составление отчетов и много что ещё. С одной стороны, странно что этого нет в Jira по умолчанию. С другой стороны, в плагине действительно много инструментов, которые сложно перенести в систему. Хотя мы же как-то добавили это в EvaProject:)

Тут мы постарались не изобретать велосипед. И просто полностью переносим все что было в «Стракче» в EvaProject. Не нужно будет привыкать к чему-то новому. Можно будет просто работать как раньше.

BigPicture 

Этот плагин по своему функционалу похож на Structure. Точно также можно управлять задачами, строить диаграмму Ганта, использовать фильтры и всё остальное. Есть небольшие отличия в этих плагинах, но в целом, даже по количеству скачиваний они одинаковые. Реализуя схожий функционал мы ориентировались на все эти плагины. По мимо них смотрели и менее популярные решения. Но, по факту, сделав замену одному из них, остальные заменяются на 98%.

JQL / UBQL 

После рассказа о плагинах для построения отчетов, диаграмм и графиков, хочется сразу упомянуть о возможностях фильтрации. Потому что фильтры используются в куче мест в системе и ещё затрагивают огромное количество плагинов, которые добавляются сверху. И у нас тут всё как в Jira – два вида фильтров: простой и с использованием запросов.

Для уточнения каких-то данных при фильтрации в Jira можно было воспользоваться языком запросов JQL (Jira Query Language). У нас же есть UBQL (User Business Query Language) – это мощный инструмент для быстрого доступа к данным проекта. Можно отсортировать данные по любым параметрам, которые вам нужны. Результаты запроса можно сохранить и использовать в качестве фильтров для отчетов и дашбордов. Вот небольшой пример его использования.

Мы хотим отсортировать сверху вниз все незакрытые задачи. Для этого нужно зайти в любой список задач (можно и в диаграмму Ганта), найти поле с фильтрами и раскрыть его, нажав «Ещё». А в поле «Дополнительный UBQL-фильтр» уже ввести запрос:

[status.status_type != CLOSED] [order_by = [-name]]

И вуаля! Все данные отсортированы!

Кстати, в поле «Вычисленный UBQL-запрос» мы получим полный код, состоящий из простых фильтров, которые можно выбрать просто из списка, и ранее введенного руками запроса. Это всё можно будет сохранить и использовать дальше. Можно просто Ctrl+C и Ctrl+V в любое нужное вам место.

Tempo Timesheets 

«Лучшая система учета времени для Jira» – так пишут в отзывах о плагине. С помощью него можно было следить за временем, потраченным на задачи, строить календарь с расписанием, планировать сроки выполнения. Без него точно нельзя обойтись в командах с почасовой оплатой, крупных компания, где требуется автоматизировать учет рабочего времени и других предприятиях.

Тут мы опять постарались реализовать все точно также как в плагине Tempo Timesheets, чтобы не нужно было привыкать к новому интерфейсу. Скрин выше – это с нашей системы. Хотя может показаться что это и есть Tempo Timesheets. Как-то случайно получилось, что они выглядят одинаково. Удивительно…

Tempo Planner 

«Мы с Тамарой – ходим парой» - если коротко сказать о связке Tempo Timesheets и Planner.

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

Очень удобная штука для управления проектами. Простой интерфейс, все инструменты для планирования – в общем все сделано круто. Не зря им пользовалось огромное количество компаний, которые переходят к нам.

Timetracker 

Ещё один плагин, позволяющий отслеживать время, потраченное на задачи. Можно сказать что он налаживает связь между конкретным исполнителем и руководителем. Пользователь или любой другой ответственный сотрудник (например, скрам-мастер) указывает сколько он планирует потратить на задачу и за сколько он по факту её выполнил. А руководитель уже может строить по этим данным аналитику.

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

В Jira такие плагины пользуются популярностью, ведь по ним удобно планировать время на проекты, следить за эффективностью. Понятно что кто-то может быстрее делать одни задачи, а над другим сидеть дольше. Поэтому плагин, по итогу, позволяет ещё и трудовые ресурсы правильно распределять.

Все эти данные, которые отправляют пользователи, не исчезают бесследно. В шаблонах отчетов можно найти "Отработанное время". С помощью него можно отслеживать время затраченное на проекты, пользователей и конкретные задачи. Удобно формировать данные по датам, готовым фильтрам и вообще любым другим условиям.

Time to SLA 

Плагин использовался для отслеживания SLA (Service Level Agreement). Позволял быть в курсе событий с помощью цветной настраиваемой панели, которая зависит от статуса соглашения об уровне обслуживания. Ещё информировал о просроченных задачах. Не и конечно предоставлял большие возможности для аналитики по SLA.

Это достаточно важный и полезный функционал. Поэтому мы добавили его к нам в систему. Можно тоже настраивать SLA, контролировать все сроки и отслеживать задачи.

Git Integration 

В Jira можно было интегрироваться с Git-репозиториями и следить за ветками, коммитами, pull(merge)-реквестами. Очень удобно, ведь можно меньше переключаться между разными окнами.

Вообще у компании Atlassian есть своя Git-система Bitbacket, с которой можно законнектиться. Мы в 2025 году планируем выпустить продукт EvaGit, который сможет и её заменить. А пока довольствуемся готовой интеграцией с другими системами в EvaProject. На эту тему есть достаточно большая, но понятная документация в базе знаний.

Zephyr 

Очень популярное решение для управления процессом тестирования. Если вы серьезно занимаетесь разработкой, то наверняка используете либо плагины вроде этого, либо какие-то сторонние продукты. В них можно управлять библиотеками тестов, запускать ручные и автоматические тесты. Легко следить за циклами, планами и результатами тестирования. В общем, возможностей очень много.

Подробно изучив этот плагин, мы решили что это должен быть полноценный и отдельный продукт. Здесь на столько много интересных возможностей, которые в рамках простого плагина не имеет смысла делать. Это и не нужно всем клиентам, чтобы добавлять в систему, и требует больше внимания, чтобы полноценно реализовать весь функционал. Поэтому мы решили добавить в наш роудмап отдельный продукт - EvaTest. Он позволит делать все тоже самое что было в Zephyr и других подобных продуктах.

Заключение 

Это часть плагинов, которые мы заменили для EvaProject – аналога Jira. Но у нас есть ещё и EvaWiki – аналог Confluence. Там тоже большое количество интересных плагинов, в которых можно поковыряться, и которые мы уже заменили. О них в следующей статье.

Мы не упомянули плагины вроде Automation, Rich Filters и другие. Они пользуются меньшей популярность, но по факту функционал их схожий с теми плагинами, которые мы упомянули. А иногда он просто есть в EvaProject, как само собой разумеющееся. Уверен, что таких найдется ещё ни одна штука, которые мы случайно смогли заменить. Хоть и не планировали.

При этом есть понимание по тому какой функционал нужен, а какой нет. Во-первых, не все плагины нужны в базовой версии системы. Во-вторых, у всех есть свое понимание как должен работать тот или иной функционал, а также свои собственные запросы по доработкам. И поэтому, как и Atlassian в своё время, мы придём к собственному маркетплейсу плагинов. А пока такой площадки нет, систему можно просто дорабатывать и добавлять функционал своими силами или с нашей помощью.

Вроде об основных плагинах написал. Напишите в комментах, если не упомянул ещё какие-то супер важные. 

Комментарии (2)


  1. Yuri_nedre
    31.08.2023 05:45
    +1

    Спасибо за подборку, надо будет глянуть внимательнее!


  1. headliner1985
    31.08.2023 05:45

    Так атлассиан уже всё, для РБ и РФ, будут высылать нотификации и отключать в течение 30 дней. Надо было уже переехать к этому времени на альтернативы. Оставаться с джирой и работать в наших регионах это ждать выстрела в ногу в любой момент.