Является ли jBPM тем, что мне нужно?

Привет всем форумчанам,

У меня к вам вопрос. У нас есть какой-то сложный проект, который должен иметь рабочий процесс, в котором пользователь может вводить такие функции в поток.

  • созданный на заказ java-код, который будет обрабатывать данные, например, но нам нужны эти данные позже в других процессах либо
  • необходимость разделения процессов, что под я имею в виду, что я хочу запускать некоторые процессы асинхронно рядом друг с другом
  • Также синхронизируются точки
  • точки принятия решения: на основе некоторых результатов предыдущего процесса (просто выйти из кода ИЛИ, может быть, я бы сделал какой-то интерфейс, который мы реализуем, чтобы иметь некоторые проверки сложных данных и т. д.), нам нужна функциональность, чтобы решить, где продолжить
  • может быть, некоторые другие вещи, которые я забыл здесь сейчас

У нас будет сложный графический интерфейс для вещей, а также мы должны поместить дизайнер рабочего процесса в наше приложение. Мои вопросы тогда:

  1. Будет ли jBPM поддерживать то, что я набросал выше?
  2. Если почти все можно сделать с помощью jBPM, можем ли мы каким-то образом встроить конструктор в наше приложение?
  3. Если 1. или 2. на самом деле не так, есть ли способ программно настроить интерфейс jBPM и так далее? Я действительно не нашел туториалов, как программно использовать jBPM.

Спасибо за ваши ответы!


person newhouse    schedule 20.09.2011    source источник


Ответы (4)


Я думаю, что jBPM5 идеально подходит для вашего случая использования. Если вы являетесь Java-разработчиком, jBPM5 позволит вам делать почти все программным способом. Если вы хотите смоделировать и спроектировать сложный сценарий, вы можете использовать возможности бизнес-процессов в jBPM5 и Drools для бизнес-логики вашего приложения, делая вещи более декларативными и простыми для понимания. Как упомянул Андрей, вы можете встроить веб-дизайнер в свое приложение. Ваше здоровье

person salaboy    schedule 21.09.2011

смотреть на

  • Открытое решение Bonita (http://www.bonitasoft.com/)
  • Активити (http://www.activiti.org/)
  • JBoss Drools (http://www.jboss.org/drools) и jBPM (http://www.jboss.org/jbpm)
  • Создатель процессов (http://www.processmaker.com/)
person Piotr Gwiazda    schedule 20.09.2011

jBPM фокусируется на BPMN, графическом моделировании бизнес-процессов. С другой стороны, вы можете моделировать бизнес-процессы, используя BPEL (язык выполнения бизнес-процессов).

BPEL является стандартом де-факто для моделирования оркестровок исполняемых веб-сервисов. Это язык на основе XML, используемый для определения и выполнения бизнес-процессов, а также научных рабочих процессов с использованием веб-сервисов. Сервер бизнес-процессов WSO2 (WSO2 BPS) и механизм Apache Orchestration Director Engine (ODE) — это два исполняемых модуля рабочих процессов, совместимых с WS-BPEL, которые поддерживают композицию веб-служб путем организации взаимодействия служб.

Вы можете моделировать бизнес-процессы с асинхронными/синхронными внешними взаимодействиями. Кроме того, спецификация WS-BPEL поддерживает ваши требования, которые вы упомянули, а также предоставляет некоторые важные функции для реальных бизнес-процессов, таких как обработка компенсаций, обработка ошибок и т. д. Вы можете использовать редактор WSO2 Carbon Studio BPEL в качестве редактора рабочего процесса, который обеспечивает функциональность. легко моделировать бизнес-процессы с помощью WS-BPEL 2.0 и BPEL4WS 1.1.

С уважением,
Денис Вирасири

person Denis Weerasiri    schedule 22.09.2011

Если быстро просмотреть документацию по jBPM, можно получить следующие ответы:

  • Для пользовательского кода Java вы можете использовать задание сценария или создать например веб-службы и вызовите ее с помощью Service Task.
  • Для разделения процессов вы можете использовать Расходящийся шлюз с типом AND .
  • Для обратного присоединения - Конвергентный шлюз с типом AND.
  • Точки принятия решений могут быть реализованы с использованием Diverging Gateway с типом OR и применением ограничений к нему.
  • Что касается дизайнера, у jBPM есть веб-дизайнер, который основан на проекте с открытым исходным кодом. Вы можете либо получить этот исходный код и применить его к потребностям вашего приложения, либо попробовать использовать какую-либо интеграцию iframe.
person Andrey Adamovich    schedule 20.09.2011