Оптимизировать правила

Оптимизация передовой практики для управляемости

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

 

  • Правила автоматизации призваны помочь вашему бизнесу и операционным процессам работать более эффективно и они должны согласовываться. Анализ ваших правил автоматизации должен происходить одновременно с обзором вашего бизнеса и операционных процессов.

Оптимизировать для повышения производительности

  • Ограничьте свои правила только определенными проектами - Преобразуйте как можно больше правил из глобальных в правила проекта. Все события из проектов, для которых нет правила соответствия, отфильтровываются. Таким образом, меньше правил, которые нужно ставить в очередь для выполнения.
  • Объединить правила - у вас может быть одно правило, которое разветвляется на текущее правило, а затем запускает условия и действия под ним.

 

  • Постарайтесь выловить действия из запущенных как можно раньше - постарайтесь уточнить, когда выполняется ваше правило, например «Значение поля изменено» ("Field Value Changed") намного экономичнее, чем «Задача обновлена» ("Issue Updated"), даже лучше, если вы ограничиваете его определенными действиями.

 

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

 

  • Отодвиньте более дорогие проверки как можно дальше назад, если они вам нужны. Условия JQL дороже, чем выполнение условия сравнения - например, проверка того, что status = ‘Done’ хуже, чем сравнение {{issue.status.name}}. равно «Готово» ("Done’") - поэтому старайтесь избегать их как можно чаще или отодвигайте их в конец цепочки.

 

  • Используйте правила ветвления только там, где это абсолютно необходимо. Например, правило ветки «Для текущей задачи» ("For current issue") порождает новый процесс. Великолепно, если вы комбинируете правила, как упомянуто выше, но если это не служит цели, это будет вас сдерживать.

По материалам Automation for Jira - Server: Optimize rules