This may span both rules authoring and the business process but I figured I would start here. We are using jBPM 5.2 to orchestration rule-execution and business logic. The issue we are running into now is as follows: The first 50-60% of the rules can be arbitraly fired on messages in any order(i.e if you have message 1, message 2 and message 3 in working memory the order in which the rules consequencesoccur does not matter). However the last 40%-50% order does matter(i.e message 1 consequences have to occur before number 2,etc.). For the purpose of speed we are looking for a way to execute the 1st n number of rule-flow groups/logic in a multithreaded way and the 2nd number single threaded in order. Is there anyway to have jBPM handle this orchestration. I have thought about having two seperate processes coordinated by some logic outside of the engine. I have also thought about doing something with a sub-process but I am unclear about how the session works with the sub-process(i.e if I start a subprocess does it have it's own working memory or does it utilize the same one as the parent)... Any light on this subject would be greatly appricated.