I try to evaluate JBPM and Activiti. One of my points is to evaluate the BPM2.0 support and compliance.
In general there should be a fast roundtrip between business analysts and developers and BPMN2.0 should be used to support this. But BPMN2.0 supports also extensions and these extensions are used by the BPMN engine vendors to customize BPMN2.0 to their engines.
So in practice, I have to develop the basic BPMN2.0 diagram together with the business analyst. Afterwards I have to extend this BPMN2.0 diagram and customize it to the BPMN engine that I use. I must know which BPMN2.0 elements are supported and I must know the engine specific extensions. This is usually supported by the engine vendor specific BPMN2.0 tools. I assume also the business analyst should work with the BPMN2.0 tools that come from the BPMN engine vendors, otherwise these roundtrip concepts will not be so easy. If I change the engine later, I must change all my diagrams because of the extensions.
Now my questions:
1. Based on the documentation comparison (see below), JBPM and Activiti have nearly the same "BPMN2.0 expressiveness" und element support. For me it seems that Activiti uses BPMN2 extensions to make everything more comfortable and easy, but this results in the aspect that I also have to use their roundtrips tools to have the best results. In the JBPMN documentation (chapter 7.1), it is written that JBPM uses a subset of BPMN2.0. I didn't see an extensive usage of extensions. This makes JBPMN less depended from specialized tools. Is this right and is this a strategy of JBPM (easy and lightweight, preventing extensions)?
2. Is this table below, nearly correct (for JBPM) ?
I hope a can get some statements about these aspects from you.
Thanks in advance.