Последовательные задачи

– Хочу сделать цепочку задач, чтобы при завершение одной автоматически создавалась вторая, а при завершение второй – создавалась третья задача. Возможно ли так сделать?

– В своей работе используем логику постановки и выполнения задач в work-flow, то есть постановка задачи следующей (например в шаблоне проекта) делается только в случае выполнения предыдущей. В вашем решении такой механизм появления последовательных задач возможен?

– Скоро ли в продакшене появятся связные задачи? Это когда последующая задача не может быть принята и выполнена, пока не завершена предыдущая. А то уже немного утомляет “допихивать” следующую задачу в стопку каждый раз, когда студент завершает текущую.

Это примеры реальных запросов наших пользователей, на которые мы теперь с удовольствием отвечаем:
– Да, такое возможно, у нас это называется “Последовательные задачи”.

И вот как это работает.

Последовательные задачи в ПланФиксе

У задачи теперь есть признак “Последовательная”, который спрятан в дополнительных параметрах:

Последовательные задачи в ПланФиксе
Для последовательной отработки цепочки задач, они должны быть объединены в одну общую надзадачу. Порядок их расположения в чек-листе надзадачи определяет порядок выполнения этих задач в цепочке.

Чтобы последовательные задачи не были доступны исполнителям раньше времени, они должны находиться в статусе “Черновик”. Механизм последовательного выполнения задач работает следующим образом:

  • При активации надзадачи (переводе ее из черновика в статус “Новая”) автоматически активируется первая подзадача в цепочке.
  • После завершения первой подзадачи (или перевода ее в любой неактивный статус) автоматически активируется следующая подзадача в цепочке.
  • И так далее, до завершения всех подзадач в списке.

Основное преимущество последовательных задач заключается в том, что вся цепочка до поры до времени находится в черновиках – а значит, “будущие” задачи не загромождают списки исполнителей и их работа становится проще и понятнее

Мы постарались проработать различные сценарии создания последовательных задач и сделать их максимально удобными. Давайте рассмотрим этот процесс чуть подробнее.

Создавать цепочку лучше сразу начиная с корневой задачи:

Создание последовательной задачи в ПланФиксе

Как только вы активируете признак “Последовательная задача”, ПланФикс автоматически переведет статус создаваемой задачи в “Черновик”. Как вы уже понимаете, это нужно для того, чтобы она раньше времени не показывалась в списке входящих задач исполнителя и не сбивала его. При этом ПланФикс дает возможность вам вручную поменять статус создаваемой задачи на “Новая” – это тоже вполне нормальная ситуация.

Внутри надзадачи можно создавать подзадачи через полную форму или при помощи быстрого создания на панели “Подзадачи”:

Создание последовательных подзадач

Если надзадача находится в статусе “Черновик”, то создаваемые подзадачи тоже автоматически получат этот статус. Если вы создали надзадачу в статусе “Новая”, то первая из подзадач тоже получит этот статус, а последующие будут создаваться в статусе “Черновик”. В моем примере у надзадачи статус “Черновик” и все созданные подзадачи тоже созданы в этом статусе.

Цепочка последовательных задач создана, вот как она выглядит в моем списке задач:

Последовательные задачи в списке задач

Как видите, в списках последовательные задачи помечаются специальной пиктограммой. Для запуска цепочки в работу достаточно перевести статус корневой надзадачи в “Новая”:

Последовательные задачи в чек-листе

Как будет работать цепочка дальше, вы уже знаете.

Что вам еще рассказать про последовательные задачи?

  • Ну, например, вы можете сделать шаблон задачи с признаком “Последовательная задача” и использовать его в своих бизнес-процессах. При создании задачи по такому шаблону корневая задача и первая подзадача становится активными, остальные подзадачи ждут своей очереди.
  • Подзадачи могут быть назначены на разных исполнителей, поэтому система хорошо справляется с процессами типа “Задача верстальщику должна поставиться после того, как завершена задача дизайнера”. При этом дизайнер и верстальщик могут даже не подозревать о существовании друг друга и наличии таких зависимостей: всю цепочку задач видит только автор, а каждый исполнитель видит только свою задачу.
  • Вы сами определяете, нужно ли исполнителям подзадач знать о существовании надзадачи. Если вы не дадите им к ней доступ – они не будут ее видеть, для ПланФикса это нормальная ситуация. Поэтому то, что для вас является лишь одной из цепочки последовательных подзадач, для исполнителя может выглядеть как вполне себе обычная и независимая задача.

Дмитрий Гончаренко Команда ПланФикса

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

 

 

 

 

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

 

 

33 комментария

  1. Неудобно, что нельзя подзадачи одной задачи связывать с подзадачами другой задачи…У нас 1этап =1Задача для одного отдела, 2 этап=2Задача с подзадачами для другого отедала, и в процессе работы последовательность действий подзадач обеих Задач перекрещиваются, взаимодействуют..Диаграмма Ганта не может помочь в нашем случае?

    1. С последовательными задачами такого сделать не получится – в данном случае, вложенность задач используется для того, чтобы показать последовательность их активации, соответственно невозможно увязывать таким образом подзадачи разных надзадач.

      Ганта (а скорее, связи между задачами) можно использовать для связи подзадач разных надзадач – но связи изменяют сроки выполнения задач, активировать другие задачи они не могут, их предназначение не в этом.

  2. Добрый день!
    Не нашёл подходящую тему в блоге, потому оставлю обращение здесь.

    Суть обращения – как мне кажется нелогичность работы с шаблонами задач которые выставлены на автоповтор (раз в месяц к примеру).

    Допустим есть 1 шаблон задачи который поставлен на автоповтор для 30 проектов. Каждое 1 число создается задача по шаблону для каждого проекта.

    А сама проблема – когда я вношу маленькую правку в шаблон задачи (добавил к примеру 1 пункт в чек-лист), то шаблон обновился, а задачи на автоповторе по этому шаблону не обновились. И получается что нужно проходить все 30 задач для каждого проекта и вносить в каждой правку. Это же жесть! А если проектов будет 200, придётся вносить 200 правок в задаче у каждого проекта.

    Обращался в поддержку, мне написали что это норма. Как блин это может быть норма? Зачем тогда все эти шаблоны если внеся в них правки, они не отображаются, а работают по старой версии шаблона?

    Для наглядности нарисовал схему https://yadi.sk/i/4mMt-Hk73LsL7U

    Уже сил нет реально править постоянно повторяющиеся задачи по мелочам. Каждое обновление в шаблоне задачи превращается в АДЪ.

    1. Вообще, с такими вопросами правильнее выходить на форум ПланФикса – там они и в тему будут, и обсуждать их там удобнее. Тем более, что раньше уже такая тема, если я правильно помню, подымалась и можно попробовать поискать ее там.

      Если коротко по теме: действительно, мы используем логику связи шаблона и созданных по нему задач по принципу “форма наследуется, контент – нет”. То есть, если в шаблон внести новое поле, то оно появится у всех задач, созданных по нему. Но если в шаблоне изменить, к примеру, название, это не приведет к изменению названий всех созданных по нему задач. То же касается и чек-листа. В Вашем случае было бы удобно, чтобы добавленный или измененный чек-лист обновлялся во всех созданных по шаблону задачах, но во множестве других случаев это привело бы к крайне нежелательным последствиям в работе.

      Это не значит, что вопрос необсуждаемый – просто объясняю почему используется такая логика. Если найдете тему на форуме (или создадите новую), сможем там продолжить.

  3. Сейчас ( ситуация): В автоматических сценариях при создании новой задачи я могу выбрать ее Надзадачу

    Предложение:
    – внести возможность выбрать не только Надзадачу, но и подзадачу.

    *Из-за этого маленького нюанса вся логическая цепочка рушится.

  4. Хотели использовать последовательные задачи для процесса обучения,
    составив Шаблон задач с послед.задачами, столкнулись с тем, что так как этот шаблон запускает пользователь, который одновременно и Постановщик задачи, и ее Исполнитель, весь список задач Отобразился ему сразу.

    1. Анастасия, тут будет правильнее ставить эти задачи от лица другого сотрудника. Для этого он должен быть указан в шаблоне в качестве постановщика (там есть такая возможность).

  5. А как передавать результат первой подзадачи исполнителю второй подзадачи? Например, по первой задаче сделали дизайн визитки, завершили подзадачу, автоматически активировалась вторая подзадача “печать визиток” на другого исполнителя. Ему же для старта нужен сам файл дизайна. А где брать его? Искать ту закрытую первую надзадачу? А если у него к ней нет доступа (как писалось, он может и не знать об этих цепочках).

    Мне видится лишь один вариант реализации – это дать всем исполнителям всех подзадач доступ к главной НАДзадаче и сказать всем “итоги своей работы перед завершением обязательно кладите в НАДзадачу, чтобы все это видели”.

    Но как то это не совсем удобно. Есть ли другие решения?

    1. Тут помогут автоматические сценарии. Два примера:

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

      2. Альтернативный вариант, удобный если не хочется держать общую для всех задачу: в момент создания задачи “Печать визиток” в нее добавляется действие с файлами, взятыми из задачи “Разработка дизайна”. Действие добавляется от имени постановщика, исполнитель задачи может не иметь доступа к другим задачам, имя дизайнера тоже не светится:

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

      1. Дмитрий! Вопрос продолжает быть актуальным и сейчас, в 2020-м. )

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

        Но мы пошли дальше и стали использовать это всё в сочетании с опцией “У каждого исполнителя своя подзадача”, чтобы не нарезать подзадачи вручную. В теории было изящно, на практике посыпались баги. Часть из них ваш саппорт уже пофиксил, но остался последний: иногда, после автоматического закрытия последовательной задачи с параллельными подзадачами, следующая по цепочке задача не стартует. Вот скрин: http://joxi.ru/gmvEbdvTvZLlDr

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

        1. Здравствуйте, Михаил!
          Да, я видел эту задачу, там действительно все сложно. Дорабатывать систему, чтобы она могла переварить в том числе и такой наворот, мы обязательно будем. Просто это не будет быстро, потому что работы очень много, а возникает такая ситуация крайне редко. Поэтому ее рейтинг в общей очереди невысок и придется подождать.

          Хорошая новость в том, что Вы один из двух людей, кто дошел до края этой Вселенной и заглянул за него. Это о чем-то да говорит 🙂

                1. У нас пока вся работа инхаус, так что это будет затруднительно – вряд ли Вам захочется так серьезно переезжать 🙂 Но если со временем решим запускать распределенные команды, то почему бы и нет.

          1. Кстати, Дмитрий! При доработках системы в этой части я бы на вашем месте пошел таким путем:
            1. При активации опции “У каждого исполнителя своя подзадача” запрещал добавлять другие подзадачи вручную. Во избежание иерархического конфликта. Потому что с пользовательской точки зрения (и, подозреваю, с технической тоже) опцией “У каждого исполнителя своя подзадача” создаются не столько подзадачи, сколько клоны одной задачи. И перемешивать их с “настоящими” подзадачами – история с непредсказуемыми последствиями.
            2. При завершении всех подзадач, созданных с помощью опции “У каждого исполнителя своя подзадача”, автоматически завершал саму задачу. Как следствие пункта 1. Потому что, опять же, с пользовательской точки зрения – если завершены все клоны, закрыта и сама клонированная задача.
            Самописные сценарии по закрытию задач с опцией “У каждого исполнителя своя подзадача”, таким образом, станут не нужны.
            3. При активации опции “У каждого исполнителя своя подзадача” в последовательных задачах автоматически снимал у подзадач признак последовательности. Иначе мы получаем произвольную последовательность (подозреваю, что сейчас система формирует последовательность исходя из id пользователей, попавших в исполнители), на которую постановщик задачи никак не влияет. Так происходит сейчас и это странно.

            Логично. Непротиворечиво. И, возможно, не так сложно в реализации.
            Но это так – взгляд дилетанта со стороны. Вам, конечно, виднее.

            1. Спасибо, Михаил! Обсудим эти предложения в команде, может быть это действительно подскажет более простой путь.

  7. Скажите, а есть возможность создания последовательных задач в виде организационной диаграммы? чтобы были видны информационные потоки. Что-то вроде жизненного цикла или сетевого графика.

    1. В принципе да, они будут отображаться на сетевом графике, как и другие задачи. Но вообще лучше для этой цели использовать связи между задачами – ну и смотреть все это в виде отображения Диаграмма Ганта. Это дает больше возможностей по управлению такими задачами.

      1. Однако Диаграмма Ганта мне не удобна, а вот вкладка зависимости это опять список, а хотелось бы организационную диаграмму.

        1. Ближайшее в ПланФиксе, что похоже на организационную диаграмму в ее классическом понимании – это Структура компании. Она передает только часть отношений, “начальник-подчиненный”. функциональная часть на ней никак не отражена.

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

          1. А как же блок-схема программы? Или любые другие графические способы отображения работы? Ведь есть и графический интерфейс создания программ, где работа с блоками и связями позволяет создать программу, без погружения в синтаксис языка. Например https://ru.wikipedia.org/wiki/%D0%92%D0%B8%D0%B7%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5

            1. В ПланФиксе такого нет, по крайней мере на текущий момент. Мы используем каскадный механизм автоматических сценариев, который не очень хорошо ложится в блок-схемы и/или BPMN. Периодически мы делаем очередной подход к тому, чтобы добавить им визуальности, но пока серьезных успехов не достигли.

              1. Удивлён. Мне кажется вы усложняете задачу. Для начала хватит обычного конвертера в направление графика -> таблица. Т. ж. самое визуальное программирование. Добавил блок, появилась задача, добавил вектор появилось подчинение и т. д.

Добавить комментарий