Menu

Architecture

Maciej Swiderski

Components

Simulation Engine consists of following components:

  • simulation-api - interfaces that will be exposed to the client or should be implemented by the client
  • simulation-engine - core implementation responsible for preparing simulation and execution of simulation
  • simulation-signavio-plugin - plugin to Signavio modeler to be able to launch simulation directly from the modeler
  • simulation-engine-adapter-activiti - Activiti adapter to be able to utilize Activiti Engine
  • simulation-engine-adapter-jbpm4 - JBPM4 adapter to be able to utilize JBPM4 Engine (process diagram format is JPDL)

Simulation Engine

Simulation engine will run every simulation is stages:

  • preparation stage
    • load process diagram
    • resolve alternative paths
    • calculate alternative path probability
    • calculate number of instances for alternative path
    • generate random start times
  • simulation stage
    • create instance for every alternative path
    • invoke registered simulation features for every activity (including sequence flows or transitions if you like)
    • record every activity statistic
    • record every path statistic
  • generation stage
    • generate report based on recorded statistics

Something that is rather not clear is what is Simulation Feature. Simulation Feature represents a unit of work that could be applied to simulation on one of four defined phases:

  • PATH - it will be invoked on every alternative path, only once
  • PATH_INSTANCE - it will be invoked for every instances of given alternative path during simulation stage
  • ELEMENT - it will be invoked on every element (activity or sequence flow), only once
  • ELEMENT_INSTANCE - it will be invoked for every instance of an element (activity or sequence flow) during simulation stage

An example of such Simulation Feature is - Activity execution time - that is responsible for calculating execution and wait time for an activity.


Related

Wiki: Simulation Engine

Discussion

Anonymous
Anonymous

Add attachments
Cancel