cancel
Showing results for 
Search instead for 
Did you mean: 

Running customized (non-BPMN) process definitations with Activiti

manchandap
Champ in-the-making
Champ in-the-making
Respected Activiti Experts,

We are evaluating Activiti as a process engine to replace our existing home grown work flow engine. We are quite impressed by the capabilities of Activiti especially related to multi tenancy and REST WS.

However, one of the biggest challenge (and probably blocker) to adopt Activiti would be - How we can run or migrate our existing work flow definitions.

As I mentioned earlier, our work flow solution is a home grown one and doesn't adheres to BPMN specifications. There are thousands of templates out there. We can't simply ask our customers to redefine their templates using Activiti. These definitions are stored in proprietary XML format.

Looking at the level of customization in the templates, it would be very difficult to migrate these definitions to BPMN format. 

So, does Activiti provides any hooks to run such custom templates. Alternatively, please share your thoughts about migrating the templates from proprietary format to BPMN format.

I suppose such scenario would be common and other people would have faced the same.

I know I am being very vague with this query but at this stage I don't have specific problems that I can discuss.

Thanks and Regards
P Manchanda
5 REPLIES 5

pmsevestre
Champ in-the-making
Champ in-the-making
If your custom workflow definition is XML-like, maybe you can build a XSLT that takes your custom process definition and convert it to BPMN.

manchandap
Champ in-the-making
Champ in-the-making
That's one option that we are exploring. However, for that we would need the mapping of our custom constructs to the BPMN 2.0 constructs. Is there any place from where I can get the schema (XSD) for the BPMN 2.0 process definitions.

Also any thoughts about available hooks in Activiti to run the custom templates.

trademak
Star Contributor
Star Contributor
Activiti is build to run BPMN, so it won't run custom templates. In the activiti-bpmn-converter module in Github you can find the BPMN XSD. Does your custom template contain a lot of different constructs or do they need to be mapped to service tasks primarily?

Best regards,

manchandap
Champ in-the-making
Champ in-the-making
Thanks Tijs. Our custom templates have both: different (that is custom) constructs and the Java Classes(i suppose these can be mapped to service tasks)

jbarrez
Star Contributor
Star Contributor
I would try to map as much as possible to service tasks (stuff like user tasks and such are technically also service task implementations), and then write a converter from your custom element -> the service tasks.