Sometimes we frustrate for the business logic inside code. So we try to use many different design patterns to solve the problem. But we still experience like, Scattered Business Logic and mixed up with everything else, Business Logic hidden in Code, frameworks for everything else except business knowledge. I have spent some time to use JBoss jBPM to solve those problem, and it’s not perfect but it is better than before.

The basic Advantages to use jBPM is
1. Declarative Programming or Domain Specific Language (DSL)
2. Logic and Data Separation
3. Speed and Scalability
4. Centralization of Knowledge
5. Adopt JBoss Drool then you can set rule with your BPM.

1. JBoss jBPM
2. JBoss jBPM articles
3. JBPM Tutorial-Hands On Guide
4. jBPM Tools Reference Guide
5. Top 10 Java Workflow Engine

Also my previous post discussed the web flow at front-end. Some projects consider the web flow pattern to combine with jBPM and make web page and business logic together such as Spring Web Flow and Seam Page Flow.
1. jBPM and Spring
2. Integrating jBPM3 With Spring
3. Seam and JBoss jBPM

At the end, you may be interested how to work with ESB…
1. JBoss jBPM meets ESB
2. ESB Service Orchestration with JBPM