I'm not too sure why anybody would reject 3rd party software just because that software had defined its own schema for its own data storage. The data storage is as much a part of the software as anything else.
That said, I haven't used the workflow components of jBPM. However I have been working with Drools (and FICO Blaze Advisor) for a few years now. And yes, they are awesome! It can make a huge difference when you extract business rules from the infrastructural code base to provide various business rules services. Even when those rules are still maintained as technical all rules by the dev team. Well written rules are more readable than multiply nested if-then clauses. And evaluation speed is also impressive.
However for me they really shine when they are used to enable 'business' users to maintain the rules themselves with the help of DSLs, guided editors and decision tables.
One thing though ... they are not always the best solution. If you have never used Drools or another such rules engine before you should really run you ideas past someone who has some good experience. Otherwise they have the potential to make your application more complicated than it needs to be.
And of course, a badly written rules based application can be a real nightmare. The appearance of Drools has made rules engines available to the masses, but that also means that rules engine apps are no longer all being built by well trained consultants. Which means that there are some pretty nasty apps out there.
Alexandre Bretet <[address removed]> wrote:
I have used jBPM, which works quite well, but I don't
like the way it has its own database tables that I do not specify or
control. I have also used a custom written workflow engine with classes
to represent workflows and tasks, which me and my fellow developers had
full control over, but that seems like re-inventing the wheel. Has
anyone had much experience with workflow engines and if so, are there
any that you recommend?
Similarly, I have used rule engines such
as Drools, which I know are for evaluating rules rather than flow but to
me the concepts are similar, it is a choice to encapsulate certain
business logic in a separate component. As a second, more general
question, has anyone used such tools and found them better to just
writing the logic yourself in EJBs, factory methods and delegate classes
Please Note: If you hit "REPLY", your message will be sent to everyone on this mailing list ([address removed])
This message was sent by Alexandre Bretet ([address removed]) from LJC - London Java Community.
To learn more about Alexandre Bretet, visit his/her member profile
Set my mailing list to email me As they are sent | In one daily email | Don't send me mailing list messages
Meetup, POB 4668 #37895 NY NY USA 10163 | [address removed]