Size: a a a

Camunda BPM Group

2022 January 29

DK

Denis Kotov in Camunda BPM Group
А том что для этого есть инструменты попроще, без рантаймзависимости, которые можно нормально покрыть тестами, нормально дебажить, и которые будут идеоматичны для разработчиков
источник

PM

Petr Maishev in Camunda BPM Group
Ага. А потом добавляем правила ветвления и вот уже мини bpmn. Но из дерьма и палок.
источник

AB

Alexander Bright in Camunda BPM Group
Вот я о том же подумываю, поэтому хочется взвесить подходы
источник

DK

Denis Kotov in Camunda BPM Group
преждевременная оптимизация — корень всех зол
источник

DK

Denis Kotov in Camunda BPM Group
Ну возьмите ради развлечения нарисуйте бпмн диаграмму какого-нибудь Инстаграмма
источник

DK

Denis Kotov in Camunda BPM Group
Или похожего на ваше приложения
источник

AB

Alexander Bright in Camunda BPM Group
Но можно прорисовать диаграмму для покупки рекламы, для регистрации в инсте
источник

A

Alireza in Camunda BPM Group
Hello, where can I find examples for practicing bpmn?
источник

DP

Dmitrii Pisarenko in Camunda BPM Group
BPMN обычно используется для однонаправленных процессов.

Допустим, процесс покупки телефона.

Есть шлюз -- какой тип клиента?

А дальше два под-процесса -- один для физиков, другой для юриков.

Процесс всегда идет в одну сторону (возвраты, диспуты и т. п. -- это другие процессы).

В визарде процесс может "идти назад" и BPMN для этого подходит хуже, чем стейт-машина.
источник

DP

Dmitrii Pisarenko in Camunda BPM Group
Я бы вообще изучил, как в наше время делаются визарды на Андроиде. Вы же не первый человек, который решает такую задачу.
источник

AB

Alexander Bright in Camunda BPM Group
продажа физику и юрику предполагает наличие разных форм для заполнения продавцом (или покупателем). Как в данном случае UI (приложение) будет знать, какую форму рендерить согласно процессу, заложенному в BPMS?
источник

DP

Dmitrii Pisarenko in Camunda BPM Group
Я привел пример чисто серверного процесса.

Т. е. в данном примере Камунда вообще не общается с клиентом через форму.

В квадратиках про физика и юрика происходят запросы в разные сторонние системы, например

1. проверка платежеспособности,
2. подключение выбранных тарифных планов (там есть масса тонкостей),
3. активация сим-карты (там минимум два варианта -- обычная сим-карта или электронная, для каждой из них разные подпроцессы),
4. если при покупке клиент купил что-то, что надо отправлять почтой (например, наушники), то будет запущен процесс высылки ему этого товара,
5. для корпоративных клиентов может быть подключение дополнительных услуг, например, коротких номеров.

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

Конечный клиент никак не может повлиять на этот процесс, он идет на 99% автоматически.

Данные, связанные с этим процессом могут отображаться, например, в CRM-системе.
источник

DP

Dmitrii Pisarenko in Camunda BPM Group
Это пример процесса, для которого Камунда хорошо подходит. Токен, как правило, идет вперед и только вперед.
источник

MS

Mark Sinakaev in Camunda BPM Group
Хорошо объяснил. А что за плюсик на задачах?
источник

DP

Dmitrii Pisarenko in Camunda BPM Group
I  am not aware of any good BPMN exercises.

You may want to check out books by Bernd Rücker ("Real-Life BPMN" and "Practical Process Automation").
источник

DP

Dmitrii Pisarenko in Camunda BPM Group
Это вызов подпроцесса (call activity).

Подпроцессы могут вызывать другие подпроцессы.
источник

DP

Dmitrii Pisarenko in Camunda BPM Group
источник

MS

Mark Sinakaev in Camunda BPM Group
Спасибо, еще не сталкивался с этим, сейчас изучу.
источник

AB

Alexander Bright in Camunda BPM Group
Ясно. Спасибо за разъяснения, буду ещё изучать этот вопрос
источник

DP

Dmitrii Pisarenko in Camunda BPM Group
Есть минимум две причины использовать подпроцессы:

1. Для того, чтобы совладать со сложностью диаграммы (чтобы диаграмма не была слишком большой)
2. Для повторного использования куска диаграммы. Если некий кусок кода повторяется несколько раз, его выносят в функцию. Подпроцесс в BPMN -- это аналог функции/метода.
источник