2016-11-22 5 views
-1

В настоящее время я разрабатываю веб-службу RESTful, и требование состоит в том, что мне нужно реализовать множество сценариев, чтобы проверить, действителен ли бизнес-клиент. Если эти сценарии недействительны в процессе проверки, служба должна выдать исключение службы (например, 400) через службу REST.Какой из них выбрать Drools или jBPM?

Итак, в этот момент, когда Drools и jBPM являются новыми для меня. Что я должен выбрать среди них, чтобы эффективно обрабатывать эти сценарии и лучше интегрироваться с моим веб-сервисом RESTful, чтобы моя цель была лучше достигнута?

Я был бы признателен за лучшее предложение с образцом ресурса, если он доступен.

Спасибо!

ответ

1

IMO, этот вопрос лучше подходит для Software Engineering site, но так как я не могу отметить вопрос о его перемещении (потому что у него есть щедрость), я быстро остужусь на основе предыдущего опыта и надеюсь, что мой ответ помогает вам.

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

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

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

Итак, я попытался бы скомпоновать правила и бизнес-логику, если бы мог, но если вы вынуждены выбрать jBPM или Drools попробовать jBPM. Но я хочу сказать, что только вы знаете требования того, что вы разрабатываете. Исследование jBPM. Исследования. Узнайте, что они хорошо подходят для документов и узнают, насколько активны их соответствующие сообщества. Кроме того, создайте прототипы, чтобы понять, насколько легко вам работать с каждым из них. Вот как вы действительно хотите узнать ответ на свою проблему, а не иметь систему голосования для кодеров: «Мне нравится, что это лучший!». Удачи вам в оценке.

+0

Спасибо, это действительно полезно. Оценил !! – puru

+0

На самом деле вы можете создать [тестовые сценарии] (https://docs.jboss.org/drools/release/6.5.0.Final/drools-docs/html/ch19.html#drools.TestScenarioEditor) в Drools Workbench , Вы также можете написать модульные тесты Java для своих правил. – livthomas

1

Drools - это в основном двигатель business rule, что означает, что он может использоваться для выполнения небольшого фрагмента кода при выполнении некоторых условий. С другой стороны, jBPM - это механизм рабочего процесса, способный выполнять business process, последовательность действий, которые необходимо выполнить для достижения определенной цели. Посмотрите на описание этих двух областей, чтобы лучше понять, что они представляют и какой из них лучше подходит для вашего проекта.

Поскольку вы упомянули, что есть некоторая проверка процесс, я, вероятно, поеду на jBPM. Но трудно понять, что именно вы подразумеваете под этими сценариями и как вы собираетесь выполнять проверку.

+0

Спасибо, это достойно. – puru