bptlab / scylla

Extensible BPMN process simulator
MIT License
19 stars 9 forks source link

Determining gateway flow from data attribute #51

Open hpl002 opened 3 years ago

hpl002 commented 3 years ago

Feature request:

I have two new features that i think would come in very handy.

Adding colored tokens

Comparable process simulation approaches such as Colored petri-nets and CPN Tools allow for colored tokens. These tokens are basically just object which can contain any number of attributes.

adding actual task execution to tasks

here we could write additional attributes to these colored tokens which could then impact behavior further out in the process

Adding branching conditions

the token attributes should be evaluated and then used to determine process flow This would allow for much more complex process behavior.

hpl002 commented 3 years ago

Story

Screenshot 2021-03-05 at 13 28 36

For example in this credit card application process we would permit perpetual repetitions of the application dispute.

Meaning that the application can be rejected, and then the applicant is allowed to try to apply more than once.

Here we might want to add a condition that would allow the dispute to occur once, and on the second try we force a rejection.

Using only probabilities does not allow for this behavior.

LeonBein commented 3 years ago

Sorry for the late answer. There already exists the DataObject Plugin to support bpmn data objects with values that influence the simulation. I am not sure how elaborate the plugin is, but it contains possibilities to make decisions depending on the data and I think also to change the data on task termination.

In the example, one maybe would use a data object called "application", which is created at the start event and then updated at the according tasks.