Hi all,
I'm analysing BPMN and CMMN for my master degree, with the objective to verify the needs of flexibility of software engineering processes and if they are handled by BPMN and CMMN.
The term flexibility means ability to deal with foreseen and unforeseen changes during modelling or execution phase.
Than, some authors created types for flexibility and I don't know if Camunda and CMMN implements a few of these types. In that way, I wan't your help to identify if Camunda implements directly or by some workaround:
- Flexibility by underspecification (you define only part of the process and another part will be defined at runtime by part of a defined process - late binding - or by a new process that will be created - late modeling)
- Flexibility by multiple instances - as an example, imagine 10 students making a solicitation at the university for an administrative process and they have the same datas for 3 of for 4 activities. The system open 1 only instance for the 3 activities that have the same information. Only for the other activity, user needs to create 10 instances with with different values for data.
- Flexibility by design (Create Multiple activities) - create multiple instances of activity.
- Flexibility by deviation (undo) - Moving control to the moment before the execution of task A.
Cheers,
Rodrigo Borges