2012-05-09 5 views
2

В настоящее время я анализирую систему компании по техническому обслуживанию воздушных судов с использованием BPMN.Анализ системы с использованием BPMN

У меня есть 3 вопроса относительно BPMN:

Первое:

enter image description here

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

Второе:

enter image description here

Здесь мы говорим об инструментах, если они доступны или нет. Если инструменты доступны, то техник может взять их и начать работу. Если они недоступны, они будут проверять, является ли неисправность (загвоздка) малой и не займет много времени, и в этом случае они возьмут инструменты, которые используются на другом самолете (отправив запрос технику, который работает на этом самолете). Если уловка не мала, то он должен ждать, пока инструменты не будут доступны. Проблема с использованием правильных шлюзов. Являются ли шлюзы, которыми я пользуюсь, или нет?

enter image description here

Здесь проблема авиационных частей. Если отдел снабжения не имеет части, то они обращаются в отдел контроля работы, который проверяет, есть ли какие-либо воздушные суда под техническим обслуживанием, чтобы они принимали участие, пока не получили новую часть от промышленности. Является ли мое моделирование правильным или нет?

Так что в основном все, что я хочу, это проверка правильности моделирования, которое я сделал с этими частями, или их нужно изменить.

Благодаря

+0

@vanto Мне нужна помощь здесь – Nasser

ответ

0

Некоторые общие сведения:

  • BPMN 2.0 является OMG стандарт, так что вы всегда можете проверить спецификацию, в случае, если вы не уверены, если ваш способ моделирования является правильным: http://www.omg.org/spec/BPMN/2.0/
  • Есть инструменты, обеспечивающие автоматическую проверку синтаксиса, например Signavio. Вы можете проверить, имеет ли инструмент, который вы используете, аналогичную функцию.

Для ваших конкретных вопросов:

  1. Использование шлюза является правильным. Однако я бы сказал, что «не получение новой части» может не быть сообщением. Возможно, лучше использовать здесь intermediate timer event, что означает «если часть не получена после X, остановите работу».
  2. Здесь вам определенно не нужно использовать event-based Gateways. См BPMN Spec, стр 287 (317 в PDF-файла):> «Шлюзы используются для управления Sequence Потоки взаимодействуют, как они сходятся и расходятся в процессе
  3. В основном так же, как 2 .: Нет event-based gateways необходимости.Кроме того, я бы проверил здесь синтаксис и попытался уменьшить сложность, поскольку сочетание технологических связей и параллельных шлюзов выглядит довольно сложно.