Вскоре я буду добавлять контент прямо на веб-сайт WEBCON, но я хочу поделиться рядом открытий / наблюдений, которые я сделал на пути к ним. Если вы знакомы с Nintex или Microsoft Flow, эта серия статей посвящена тому, чем WEBCON BPS отличается (а зачастую и лучше) от этих инструментов.

Некоторая предыстория стадий / конечных автоматов

Для тех из вас, кто просто использовал то, что SharePoint Designer 2013 называет «этапами» или то, что Nintex называет «конечными автоматами», не задавая слишком много вопросов, нам понадобится быстрый набор уровней ...

Я не буду слишком сильно волноваться, но конечный автомат - это концепция информатики, которую нетрудно проиллюстрировать:

Рассмотрим светильник с натяжной цепочкой. Если он выключен, и я дергаю за цепь, он будет включен. Снова потяните за цепь, и лампа погаснет. Чтобы изобразить это как конечный автомат, это выглядит так:

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

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

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

Итак, состояния, события и переходы. Это язык государственных автоматов.

Конечные автоматы, возможно, проще спроектировать и, очевидно, легче контролировать и проверять. Да, и они лучше отражают реальность. Но дело не в том, почему конечные автоматы хороши (я напишу эту статью позже). Речь идет о том, как WEBCON BPS справляется с ними лучше всего.

Пример пресс-релиза

Давайте возьмем в качестве примера процесс автор-рецензия-публикация пресс-релиза:

В любой момент, пока он не будет готов, пресс-релиз пишется / переписывается, рассматривается руководством, рассматривается юридическим отделом или публикуется. Стрелки объясняют, как перейти из одного состояния в другое.

Как это делают другие

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

Поскольку у меня не было разрешения на использование реальных снимков экрана других продуктов, я создал абстрактную диаграмму, которая показывает суть того, как некоторые продукты могут представлять такой процесс. Взгляни:

Стоит отметить четыре вещи, которые в лучшем случае являются неудобными:

  1. Вам нужно поставить задачу, чтобы событие (ваше решение) произошло. В любое время рабочий процесс все еще запущен и ждет, пока вы его завершите.
  2. Диаграмма пронизана значками «перейти». Нужно много прыгать. Это не зло, но может быть неуклюжим.
  3. Изменения состояния происходят не сразу. Когда вы указываете, каким будет следующее состояние (отображается овальными значками), рабочий процесс не перейдет к новому состоянию сразу. Если после значка «Изменить состояние» появляются дополнительные действия, они будут выполнены до начала нового состояния.
  4. Видите дополнительные значки начала и конца и раздел этапов? По правде говоря, это действительно последовательный / линейный рабочий процесс, в центре которого находится секция конечного автомата. Во время моего пребывания в Nintex я наблюдал, как большинство людей используют свои действия конечного автомата как способ сделать перерыв в быстром возвратно-поступательном взаимодействии в середине линейного процесса.

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

И на самом деле, если вы хотите подражать этому в Microsoft Flow, это то, что вам нужно сделать, если вы (а) не заплатили за план 2 Power Platform (для использования комбинации Business Process Flows + Model-Driven PowerApps + Common Data Service) или (b) использовали еще более сложную диаграмму, включающую в себя набор потоков, которые снова и снова рекурсивно связываются друг с другом, что будет хрупким (мягко говоря) и потребует оплаты плана 1 (Flow / PowerApps хороши, но давайте перестанем называть их «бесплатными», не так ли?)

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

Как это делает WEBCON BPS

Сначала вернитесь и посмотрите на исходную диаграмму с пятью прямоугольниками и несколькими стрелками. А теперь посмотрите на это:

Это… пять квадратов и несколько стрелок! За ним действительно легко следить и очень легко создавать. Здесь происходит только две «дополнительных» вещи: (1) действие «Сохранить и продолжить», которое является намеком на необходимость сохранения / отмены изменений во время редактирования и предоставляет способ сохранения без отправки, и (2) маленькие значки шестеренок, которые указывают на то, что во время этих переходов выполняется некоторая работа с названиями «Отправить», «Вперед» и т. д.

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

Весь рабочий процесс - это настоящий конечный автомат. WEBCON BPS вызывает значки состояния Шаги и переходы пути. События - это кнопки, автоматически добавляемые в пользовательский интерфейс; они могут также быть вызовами веб-служб, событиями таймера или прибытием электронных писем и / или документов в контролируемые места.

Легко спроектировать, легко понять

Как правило, в дизайне WEBCON BPS значков гораздо меньше. Настройка переменных, отправка предупреждений и т. Д. - все процедурные аспекты относятся к настройкам конфигурации.

Это означает, что когда вы видите диаграмму, вы смотрите на то, что будет (или может) случиться. Если вы хотите узнать, как это происходит, дважды щелкните что-либо, чтобы открыть это.

Почему это важно для тебя

Как я сказал ранее, я скоро напишу кое-что о том, почему машины состояний так важны. Я скажу, что такой подход упрощает создание рабочих процессов и, что более важно, их легче изменять. Фактически, WEBCON в основном делает все, исходя из предположения, что вы будете регулярно менять процессы.

Собственно, предположение тут ни при чем. Из десятилетий наблюдений мы знаем, что приложения-процессы в частности (и почти все приложения в целом) претерпевают регулярные изменения.

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

Это еще одна причина посетить www.webcon.com и проверить его. Или посетите стенд WEBCON на конференции SharePoint в Лас-Вегасе в конце этого месяца. Или загрузить экспресс-версию WEBCON BPS и использовать ее сколько душе угодно (серьезно, это бесплатно).

Еще не все…

Другие статьи из этой серии

Чем отличается WEBCON, часть 2: UX, управляемый процессами

Чем отличается WEBCON, Часть 3: Файлы дела - это гораздо больше, чем элементы списка. Некоторые сведения о стадиях / государственных машинах

Чем отличается WEBCON, Часть 4: Истинные многоступенчатые формы