Форум Сообщества Аналитиков

Общий раздел => Теория моделирования и нотации => IDEF ARIS BPMN и пр. => Тема начата: el-niko от 25 Ноября 2011, 17:02:44

Название: BPMN + DFD. Правильно ли это?
Отправлено: el-niko от 25 Ноября 2011, 17:02:44
Здравствуйте!
Встала задача описать бизнес-процессы компании. Раньше имел дело с DFD и IDFEx. "Рисовал" в BPWin, верхние уровени описывал на DFD, нижние подробно описывал  IDFE3.
Но недавно увидел BPMN и она показалась мне более удобочитаемой.
Можно ли заменить IDFEx на BPMN? Т.е. рисовать верхние уровни с помощью DFD (нравится), а какие-то операции на низком уровне описывать BPMN?
Можно ли делать декомпозицию для BPMN? Сейчас рисую в Visio и создаю отдельную владку, на которую делаю ссылку.

Приведу пример. Если можно, скажите, применим ли такой подход, не "осудят" ли меня иностранные коллеги и по возможности укажите на мои ошибки.
Заранее огромное спасибо!

Для простоты привожу только процесс создания заказа:
1. web-портал отправляет в erp-систему заказ (формат xml)
2. заказ сохраняется в БД erp-системы, на портал отправляется результат создания заказа.
3. заказ обрабатывается складом в результате получается физический заказ. в процессе формирования заказ проходит этапы:
- начало сборки: меняется статус в БД.
- сборка: в коробку кладут товары в соотвествии со списком заказа, меняется статус в БД.
- учет (подтверждение сборки): меняется статус в БД.
- контроль сборки: проверяется фактическое наличие товара в коробке и в списке заказа.
- - Если заказ полный - меняется статус
- - Если в заказе не хватает товара - на линии его дополняют и снова отправляют на контроль
- - Если заказ дополнить нечем - формируется лист недовложений и списывается сумма недовложений
4. заказ отправляется

На рисунках:
1 - Верхний уровень.
2 - Декомпозиция "ERP-системы"
3 - Декомпозиция "Обработка заказа на складе"
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: p_safin от 28 Ноября 2011, 09:57:24
Выражаю свою точку зрения.

Как я понимаю, Вам необходимо именно в графическом виде изобразить бизнес-процессы? Если да, то почему бы и не описать их именно в таком ключе, указав в итоговом документе общий принцип? Мне такой подход нравится. В нём, как и в других подходах заложен принцип декомпозиции. Единственное в чем разница - это то, что на нижних уровнях Вы используете BPMN, которая, на мой взгляд, является более подробной, насыщенной и понятной, нежели IDEF3.

Но я могу быть не прав. Интересно выслушать мнение коллег.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: darco от 28 Ноября 2011, 11:22:09
Можно ли заменить IDFEx на BPMN?
Ответ: Да.

Т.е. рисовать верхние уровни с помощью DFD (нравится), а какие-то операции на низком уровне описывать BPMN?
Ответ: Да. Если это разные диаграммы. Одна диаграмма верхнеуровневый процесс (DFD), и набор диаграмм низкоуровненых процессов (BPMN).

Но имеет ли смысл вводить такое разбиение? И корректно ли оно?
Мое мнение - нет.

Аналитик работает не чтоб ему нравилось рисовать диаграммы DFD, а чтоб процесс стал более понятен заинтересованным лицам, а им, если это профессиональные аналитики со знанием стандарта из семейства IDEF* и BPMN, будут непонятны различия этих диаграмм.
Практики использующие BPMN в качестве своего основного инструмента говорят, что нотация в среднем осваивается года за два.

Итого: аналитик должен использовать единообразный инструмент для описания БП.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: el-niko от 28 Ноября 2011, 17:27:38
Спасибо за ответы.

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

Скажите, а нормальная ли практика, если я рисую в BPMN субпроцесс (свернутый), а на отдельной диаграмме делаю подробное описание этого субпроцесса?
Т.е. все процессы, для которых я намерен делать описание на более низком уровне, на диаграмме я изображаю как субпроцесс, если не собираюсь делать декомпозицию, то использую таск.
Саму декомпозицию субпроцкссов делаю на отдельной диаграмме.

Можно попросить вас покритиковать мою первую BPMN диаграмму? Пожалуйста:
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: IAFedorov от 28 Ноября 2011, 19:11:12
т.к. швейцарские коллеги считаюи IDEFx архаизмом =(
Может ваши коллеги подскажут нам какую еще аналогичную по наглядности, пониманию и простоте, нотацию вместо IDEF0 использовать для отображения деятельности в виде ICOM модели?
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: el-niko от 28 Ноября 2011, 19:32:27
Я лишь перпедал мнение коллег. Я использовал IDEF по сей день, однако сотрудничество вынуждает менять инструментарий...
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: bas от 29 Ноября 2011, 10:06:08
el-niko,
Как Вы уже правильно поняли - в BPMN можно рисовать модели верхнего уровня, ИМХО так и нужно делать, две нотации смешивать я бы не стал.

IAFedorov,
Сорри, за глупый вопрос, а что такое ICOM модель?
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: p_safin от 29 Ноября 2011, 10:23:11
Сорри, за глупый вопрос, а что такое ICOM модель?

I - input
C - control
O - output
M - mechanism

По сути, это стрелки, которые входят в IDEF0-блок.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: el-niko от 29 Ноября 2011, 11:45:15
bas, спасибо, а есть где-то описание методологии "декомпозиции" BPMN-диаграмм? Т.е. как правильно делать описание процессов переходя от верхнего уровня к более низким? В разных статьях это делается по разному и в разных инструментах это предлагается делать тоже неодинаково.
Например в Intalio предлагается рисовать подпроцесс непосредственно на той же диаграмме, что и процесс верхнего уровня, это не удобно.
Возможно есть способ описать субпроцес на отдельной диаграмме и связать потоки сообщений на верхнем уровне?

Может посоветуете информативный блог или книгу (жалетельно на русском) по bpmn?
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: bas от 29 Ноября 2011, 19:31:57
Идем в соответствующий раздел форума и, вот это да, находим там:
http://www.uml2.ru/forum/index.php?topic=326.0

Особенно рекомендую присмотреться к комментариям АБ.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: bas от 29 Ноября 2011, 19:36:46
I - input
C - control
O - output
M - mechanism

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

По сути:
* IO - есть в BPMN
* C - в какой-то мере, это кто исполняет БП (есть BPMN), но более шире
* М - не так часто встречал, что в реальных примерах это использовалось.

Я думаю не зря ушли от CM в более новых нотациях.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: p_safin от 30 Ноября 2011, 10:15:15
Про стрелки в IDEF0 знаю, только никогда не знал, что это так называется одним сокращением )

По сути:
* IO - есть в BPMN
* C - в какой-то мере, это кто исполняет БП (есть BPMN), но более шире
* М - не так часто встречал, что в реальных примерах это использовалось.

Я думаю не зря ушли от CM в более новых нотациях.

Александр, не совсем с тобой соглашусь.

C - это правила, документация, в соответствии с которыми должен выполняться процесс, а вот M - это как раз тот, кто исполняет БП.

Кстати, по поводу ICOM... Я в литературе читал (автор Черемных или Маклаков), что правильно говорить не ICOM-модель, а ICOM-коды. Ведь именно эти коды идентифицируют стрелки, входящие (исходящие) из IDEF-блока.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: Galogen от 30 Ноября 2011, 10:43:58
C - это правила, документация, в соответствии с которыми должен выполняться процесс, а вот M - это как раз тот, кто исполняет БП.

Кстати, по поводу ICOM... Я в литературе читал (автор Черемных или Маклаков), что правильно говорить не ICOM-модель, а ICOM-коды. Ведь именно эти коды идентифицируют стрелки, входящие (исходящие) из IDEF-блока.
По последней фразе, совершенно верно. ICOM-коды

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

M-механизм, инструмент, средство - это то с помощью чего требуется исполнять процесс: персонал, оборудование, и т.п.

ни С ни М - само по себе не преобразуется в результат О, но участвует в его создании.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: АБ от 30 Ноября 2011, 21:25:43
Т.е. рисовать верхние уровни с помощью DFD (нравится), а какие-то операции на низком уровне описывать BPMN?

Регулярно так делаю и другим рекомендую. Вопрос только в том, что считать верхним уровнем. Для вашего примера достаточно BPMN.

по возможности укажите на мои ошибки.

Ну раз просите :)

На DFD-диаграмме логично было бы трактовать Navision как внешнюю сущность, а Заказ как источник данных. У вас сделано наоборот.

На BPMN-диаграмме ошибок много. Самая вопиющая - сообщения внутри одного пула. Промежуточное событие Довложение без исходящих потоков управления. Опять заказ в роли внешней сущности.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: АБ от 30 Ноября 2011, 21:35:52
нормальная ли практика, если я рисую в BPMN субпроцесс (свернутый), а на отдельной диаграмме делаю подробное описание этого субпроцесса?

Не просто нормальная - это рекомендуемая практика.

как правильно делать описание процессов переходя от верхнего уровня к более низким? В разных статьях это делается по разному и в разных инструментах это предлагается делать тоже неодинаково.

Как правильно моделировать в BPMN не объяснить в двух словах. У меня на объяснения уходит два полных дня.

Например в Intalio предлагается рисовать подпроцесс непосредственно на той же диаграмме, что и процесс верхнего уровня, это не удобно.

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

Может посоветуете информативный блог или книгу (жалетельно на русском) по bpmn?

Да простят мне саморекламу, http://mainthing.ru/ru/tag/bpmn/
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: el-niko от 30 Ноября 2011, 21:47:49
АБ, большое спасибо за ответы.
В процессе дальнейшего изучения понял свои ошибки на первой диаграмме, пожалуй тогда я не совсем верно понял нотацию.

Про своебразие Инталио много где читал, стараюсь быть на чеку и придерживаться рекомендуемым (в том числе и в Ваших статьях) паттернам.
Этот инструмент подкупил меня прежде всего возможностью описать процесс а затем использовать его wsdl на других диаграммах проекта, это мне показалось чертовски удобным.

Как только закончу моделирование описанного мной в самом начале бизнес-процесса посредством Интелио, представлю модель на суд.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: АБ от 01 Декабря 2011, 01:32:46
WSDL? Вообще-то в BPMN для этого есть штатные механизмы: 1) повторно-используемые подпроцессы и 2) ссылочные подпроцессы.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: el-niko от 01 Декабря 2011, 10:06:16
АБ, я при них читал, но не совсем понял как реализовать такой подпроцесс например в том же Intalio.

Возможно порекомендуете какой-то другой бесплатный инструмент?
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: АБ от 01 Декабря 2011, 11:56:20
Я пользуюсь BizAgi Modeler и BizAgi BPMS, www.bizagi.com
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: el-niko от 02 Декабря 2011, 09:25:32
Если я правильно понял, то у BizAgi бесплатный только Modeler , а BPMS даже Express-версия триальная, так?

Не подскажете, как в BizAgi создать диаграмму на которой можно разместить несколько Пулов и связать их Message Flow, сейчас могу только добавить Lane и Milestone...
В остальном инструмент понятен и очень понравился, спасибо!
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: АБ от 02 Декабря 2011, 11:49:10
Modeler бесплатный, Express пробная версия до 10 пользователей полнофункциональная и неограниченная по времени.

В моделере просто размещаете сколько хотите пулов на одном листе.

В студии рисуете схемы для отдельных процессов, потом переключаетесь в режим "Modules" и находите в нем Collaboration Diagram.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: el-niko от 02 Декабря 2011, 12:30:13
АБ, спасибо, перехожу на BizAgi. К сожалению не смог экспортировать модели из Intalio никуда, поэтому придется перерисовывать.

На странице Downloads (http://www.bizagi.com/index.php?option=com_content&view=article&id=27&catid=5&Itemid=98)  надел лишь ссылку на Xpress Edition (<50 users). Вы говорите об этой версии? Если нет, приведите пожалуйста ссылку на скачивание.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: Galogen от 02 Декабря 2011, 12:35:31
АБ, спасибо, перехожу на BizAgi. К сожалению не смог экспортировать модели из Intalio никуда, поэтому придется перерисовывать.

На странице Downloads (http://www.bizagi.com/index.php?option=com_content&view=article&id=27&catid=5&Itemid=98)  надел лишь ссылку на Xpress Edition (<50 users). Вы говорите об этой версии? Если нет, приведите пожалуйста ссылку на скачивание.
Именно об этой редакции и говорил АБ
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: 899480 от 04 Декабря 2011, 23:29:08
"Я пользуюсь BizAgi Modeler и BizAgi BPMS"
Предпочитаю ELMA - http://elma-bpm.ru/
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: el-niko от 05 Декабря 2011, 15:38:02
В студии рисуете схемы для отдельных процессов, потом переключаетесь в режим "Modules" и находите в нем Collaboration Diagram.

Великолепно! А как мне сохранить Collaboration Diagram как изображение или например как-то импортировать дигамму (не процесс) в Моделер? Просто встала задача показать итоговую диаграмму, попытался распечатать, ноне работает ни печать, ни предпросмотр. Это ограничения версии или мой персональный "глюк"?
Заранее спасибо.
Название: Re: BPMN + DFD. Правиьлно ли это?
Отправлено: АБ от 07 Декабря 2011, 11:48:17
Действительно фигня какая-то с печатью. Отправляю рекламацию BizAgi.