I want to build a full application using JBPM and Drools. I want to know what kind of people do I need to design and implement the project i.e. Competencies and skills of those people (JSP, GWT, JBOSS AS, Spring, Web services, Drools for Business rules....).
Can we do a medium project without using the eclipse, or make some java code?? Where we need an expert in Java Code.
The requirement of the project is:
- Design the Processes
- Design Forms
- Link the Forms data to a database
- Write the business rules and connect them to process
- Building a Web Application (Like the JBPM Console) to start, delegate and stop a process. Also to analyze old data (To look at the jbpm database and query data)
Based on my experience you will need to have people who knows how to use java to build applications.
The jBPM project uses standard technologies in the java space to work. So your devs will need to be familiar with Hibernate/JPA for example. Spring is not a requirement but you can use it if you want.
Your devs will need to know how to set up a database and how to add a library (the jbpm lib and all its dependencies to your project).
If your devs have those skills, then you will need at least one person which understand the BPM concepts and why you are planning to adopt BPM.
The same for the Rule Engine, you will need at least one person which understand how Rule Engines usually work and how to use it.
The rest is pure Java.
Thanks a lot Salaboy,
Just 2 other questions:
1- Where to start with the business rules? Guide and examples From A to Z. Can we connect JBPM to another business rules engine (Other than drools) and is it a good idea?
2- If I want to make a very small application like the JBPM console. What are the main components for the application:
- Component to Connect to BPMN2 directories (Definitions)
- Connection to Real Database for Data
- Connection to load the Forms??
Why am asking about another Rule Engine? because i want to design the business rules and export them to XML where Drools not support importing XML files.
1) did you check the drools docs? ->
There also 3 books about it that you can read to get started
You can integrate jBPM with another rule engine, but it doesn't make too much sense due the fact that jBPM is already integrated with drools. So if you integrate with another rule engineyou will end up having 2 rule engines
2) All the components are provided by the jbpm project and the drools project
Look at Drools Guvnor for the Process, Form and Rules repository.
And yes.. you will need a database that is used by the engines to store the runtime status.
Check my blog salaboy.com to find some slides about the architecture.
3) Why do you want to store rules in XML? that was deprecated long time ago. If you want to go in that direction, you can always create an exported from DRL to XML and viceversa.
Mauricio, thanks for your valuable feedback.
- What I am trying to do is working on a tool to design the business rules via modeling. So I want to export this design and run it on Drools. That's why I think about XML, so I can export the Modeling diagram to Business rules XML and then import it into drools to run it. Now, If I know how to write Drools rules in XML, it will help me export workable xml rules from the tool (if you have any resources that help me doing this, it will be great).
- I was surfing the JBPM engine database since I installed it on MySQL. Is there any documentation to understand this database? I want to build web app that analyze data of the engine in details i.e. running processes, closed processes in specific date, closed processes by specific user, how long a specific process took to accomlpish? and so on..