Как бы вы разработали приложение рабочего процесса на Java? - PullRequest
3 голосов
/ 28 марта 2009

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

Моя среда - JBoss, поэтому, естественно, я рассматриваю jBPM.

Я НЕ МОГУ использовать инструменты проектирования графических рабочих процессов jBPM, поскольку мои рабочие процессы очень специфичны, и я не хочу предоставлять своим пользователям все функции jBPM.

Вопросы:

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

Ответы [ 4 ]

1 голос
/ 16 апреля 2009
  1. Является ли jBPM надежным и масштабируемым?

    Ответ: Да, Jbpm является надежным и масштабируемым. Необходимо правильно настроить / разработать ..

  2. Является ли стандарт jBPM (т.е. используется достаточным количеством людей)?

    Ответ: Вам нужно спросить на форуме jbpm.

  3. Как связать мой собственный графический интерфейс рабочего процесса с механизмом jBPM?

    Ответ. Вам необходимо разработать файл processConfiguration для каждого рабочего процесса и развернуть
    эти файлы конфигурации (XML-файл), обновляет таблицы, связанные с jbpm, и ваши связанные с рабочим процессом таблицы.

  4. Подходит ли jBPM для работы, выбрать другую платформу или, возможно, сделать это? (логика рабочего процесса) сам?

    Ответ: Подходит для больших рабочих процессов (где больше этапов / узлов и логики). И легко интегрируется с движком правил.

0 голосов
/ 17 декабря 2011
  1. Является ли jBPM надежным и масштабируемым?

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

  1. Является ли стандарт jBPM (т.е. используется достаточным количеством людей)?

Трудно определить стандарт;) Но на прошлой неделе он имел, например, несколько тысяч загрузок, и он максимально использует стандарты, такие как спецификация BPMN 2.0 для определений процессов, стандарт, который в настоящее время внедряется почти всеми поставщиками BPM. .

  1. Как связать мой собственный графический интерфейс рабочего процесса с механизмом jBPM?

Зависит от того, для чего предназначен графический интерфейс. Предполагая, что вы используете графический интерфейс для определения определений процесса и не хотите использовать редакторы на основе Eclipse или на основе веб-интерфейса, которые предлагаются по умолчанию, вы можете: - используйте любой графический интерфейс, который вам нравится, пока он генерирует BPMN2 XML, который затем может быть прочитан механизмом процесса - в вашем графическом интерфейсе используется свободный API-интерфейс процесса для создания процессов с использованием Java, который затем может быть загружен в движок

  1. Подходит ли jBPM для работы, мне следует рассмотреть другую платформу или, возможно, сделать это (логику рабочего процесса) самостоятельно?

Попытка создать простой механизм рабочего процесса самостоятельно, вероятно, потребует больше усилий, чем вы думаете, поскольку вы можете начать с простого, но обычно заканчиваете добавлением таких функций, как постоянство, мониторинг, интеграция, динамическая загрузка новых определений процессов и миграция экземпляров процессов и т. д., и в конечном итоге вы получите самодельный рабочий процесс, который вам нужно поддерживать;) Вы получаете эти функции "из коробки" с jBPM.

Kris

0 голосов
/ 31 марта 2009

Как связать мой собственный графический интерфейс рабочего процесса с механизмом jBPM?

Читается на главной странице jBPM :

JBoss jBPM предоставляет модель процессно-ориентированного программирования (jPDL), в которой сочетаются лучшие методы Java и декларативного программирования.

Обзор документации по API jPPL jBPM

0 голосов
/ 29 марта 2009

Не прямой ответ на ваш вопрос, но я думаю, вы также должны принять во внимание:

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