Business Process Simulation in jBPM Designer

I’m very happy to blog about a new and exciting feature we have added to the jBPM Designer: Business Process Simulation.

This is still an experimental feature and subject to changes, so community input is very important. Business Process Simulation allows you to to simulate your process model, and view helpful simulation results that can guide you to improve your model as well as be able to better understand it and describe it to your peers and/or customers.

 
The below video showcasts Business Process Simulation in Designer as it is now. Make sure to watch it and give your feedback by either posting your questions/opinions here or hit us up on the jBPM user mailing list, IRC, or the jBPM forum.


Some important features of jBPM Simulation in Designer:

* Use of the BPS (Business Process Simulation) specification

* Simulation engine is based on jBPM 5 (of course )

* Easy to work with and extend

You can start using this new feature now by building the jBPM Designer from source. To do that run:

git clone https://github.com/droolsjbpm/jbpm-designer.git

cd jbpm-designer

mvn clean install

and use one of the three different wars generated in the /target directory.

Enjoy 🙂

2 Responses to Business Process Simulation in jBPM Designer

  1. Alessandro says:

    Hi Tihomir,
    I cloned your source code but I have the following problems:
    1) I cannot compile due to missing libraries in the pom.xml I think (e.g. org.jboss.drools.PoissonDistributionType)
    2) If I try to launch the application as webapp (http://localhost:8070/jbpm-designer/editor?profile=jbpm) in eclipse I receive the following errors in the logs:
    java.lang.NullPointerException
    at java.net.URLEncoder.encode(URLEncoder.java:188)
    at org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit.setupDefaultIcons(JbpmPreprocessingUnit.java:494)
    at org.jbpm.designer.web.preprocessing.impl.JbpmPreprocessingUnit.preprocess(JbpmPreprocessingUnit.java:116)
    at org.jbpm.designer.server.EditorHandler.doGet(EditorHandler.java:326)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.jbpm.designer.web.filter.impl.PluggableFilter.doFilter(PluggableFilter.java:70)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.__invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java)
    at org.apache.catalina.core.StandardHostValve.__invoke(StandardHostValve.java:127)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:864)
    at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:579)
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1665)
    at java.lang.Thread.run(Thread.java:662)

    Thank you for an answer.
    Alessandro

    • tsurdilovic says:

      1) Try with “mvn clean install -U” to get the latest snapshot release of jBPM installed
      2) Designer is tightly still integrated with Drools Guvnor. The standalone mode that you are using is not really useful ATM because Designer needs Guvnor’s asset repository to retrieve and store assets.

      Hope this helps.

Leave a comment