Giter VIP home page Giter VIP logo

camunda-bpm-simulator's Introduction

camunda-bpm-simulator

Camunda process engine plugin to simulate process execution.

Purpose

When execution process definitions, the process engine waits from time to time for external events, for example user actions, conditions, timeouts etc. This process engine plugin will generate these events to run processes without external interaction, hence, to simulate real world scenarios.

They way if and when these events are triggered and if and what payload data is to be generated is configured by Camunda Properties in the bpmn-files. Optionally, all these properties can be set externally, for example in property files.

The plugin is able to simulate the past...

How-To

Have a look at the example project, it is intended to be self explanatory.

Properties for controlling

None/Message/Signal/Conditional start event

  • simNextFire : <expression giving date>
  • simInitBusinessKey : <expression giving string>
  • simInitPayload : <varname>=<expression giving arbitrary value>

Message Receive events, Receive Task, Signal receive events

  • simNextFire : <expression giving date>

Note for signals: The signal is not delivered globally but only to the execution that waits at the receive event.

User Task

  • simNextFire : <expression giving date>

TODO: Also simulate assignee, candidates, claiming...

Service Task (Send Task, Business Rule Task, Script Task)

Replace behaviour by no-op, except following is set:

  • simCallRealImplementation : true

External Service Task

  • simNextFire : <expression giving date>

Business Rule Task

Replace behaviour by no-op, except DMN, this is "normally" called.

All Flow Elements

Execution (Task) Listeners

Always stripped away, except the following is set:

  • simKeepListeners : true

Properties for payload generation

  • simGeneratePayload : <varname>=<expression giving arbitrary value>

TODO

  • think about throwing BPMN errors
  • think about keeping execution/task listeners/

camunda-bpm-simulator's People

Contributors

benhoffmann avatar berndruecker avatar falko avatar felix-mueller avatar nevries avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.