We would like to design and implement our order management system as a workflow using JBPM.
An ?Order? goes through various states like ?submitted?, ?approved?, ?executed? and ?archived?.
In the object world, we do have an ?Order? object with an attribute called ?OrderStatus? to represent this ?Order? status.
In the workflow world, this is realized as workflow states and workflow transition to next state based on various factors.
Now my design issues is how should I model the ?OrderStatus? attribute? If I model this as part of the Order object, it is very much possible that some can potentially update this ?Order Status? for an ?Order?, which will make the workflow status out of synch with ?Order?.
Can I make this as part of the workflow? If it is possible to associate this with workflow (as process variable?) then do I need to query the workflow to get the status of the order? Or can I just join this at database level?
I would appreciate your early response to this query.