Actually looking for an OpenSource BPM engine, it’s good to see a serious challenger. Regarding some other engines, I have few questions after doing some tests using API via unit tests: (testing 5.6 embedded in Spring 3 /Postgresql environment)
• Swimlane : this concept is widely used in many BPM engines, and is BPMN compliant, will Activiti engine implements it ? It’s useful to manage initiators / owners. • Initiator of process done via API (as a workaround for lack of swimlane): is the IdentityService.setAuthenticatedUserId(String) thread safe ? Javadoc is not clear enough on that point, when sharing IdentityService using Spring configuration. • WS Human Task: will the specification be implemented? A conform API for TaskService would be great. Actually how can I manage “started” tasks, and a “suspend”/ “resume” goal. (Resume on Event is my target). I saw http://forums.activiti.org/en/viewtopic.php?f=6&t=2027 but this should be done by engine, not by me. • Transitions: I agree http://forums.activiti.org/en/viewtopic.php?f=6&t=1279 answers, but I also understand purpose of questions. So far a direct access to Transition could be a great Task/gateways pattern shortcut. (and would help to migrate from JPDL)
Less important but maybe I’ve missed some points: • deploymentResources in SpringProcessEngineConfiguration : Is the filtering preventing duplicate deployments working ? In my junits, I have new deployments each run, and this is the only non rollbacked part.
regarding swimlanes, see the discussion long ago in https://issues.jboss.org/browse/JBPM-2341 (yes, me, Joram etc… ;-)) I do not know the details now, but if a swimlane is stateless, you cannot use it to remember things… unfortunately