Wednesday, April 24, 2013

camunda BPM incubation space launched with contribution by plexiti

I am happy to announce the official launch of the camunda BPM incubation space with the first large community contribution by plexiti.

View it on github: 

The goal of the camunda BPM incubation space is to promote the development of interesting new projects and ideas around BPM, BPMN and process engines.

Due to the productization and stabilization focus in the camunda BPM core platform, we decided to separate out these experimental projects from the core platform. The core BPM platform is stable and maintained and can be found in the github repository camunda-bpm-platform. This is also the base for the supported (commercial) camunda BPM platform productThe camunda-bpm-incubation repository contains a list of incubation projects which may be located in that repository itself or inside a different repository. We hope that this helps us finding a balance between being able to try out new innovative ideas (possibly in an unstructured or even unstable manner) but still being able to provide a stable "core" project. I think that this is also helpful for users of the project: users immediately see which parts of the project are stable and maintained and which other parts are still experimental.

Plexiti makes the first large community contribution to camunda BPM

The first project started in the incubation space is located at https://github.com/camunda/camunda-bpm-fluent-testing and is a contribution by plexiti

Plexiti is an innovative company from Vienna / Austria and founded by Martin Schimak and Rafael Cordones. You can meet them at our jointly organized community event in Vienna.

Martin Schimak
Rafael Cordones




It's an emerging little library aiming at easing tests when developing process applications. We reach out to
  • ease the readability and maintainability of process model tests and make the writing of process model tests more fluent and more fun
  • make it even easier to mock the services available to a process instance than it already is
For that purpose, you can - aspect 1 - write FEST assertions, e.g. like
assertThat(processInstance).isWaitingAt("review");
assertThat(task).isAssignedTo("piggie");
but you can also - aspect 2 - query and drive "the process" via a somewhat more fluent API than currently available, e.g. like
processInstance.task().complete("approved", true);
You can find a bit more documentation of what's currently possible in the README.md of the github project.

We are currently working to completely separate these two independent aspects and would like to contribute them into the camunda.org incubation space, e.g. as

Project 1) camunda-bpm-fluent-tests
Project 2) camunda-bpm-fluent-engine-api

Try it out!

Since today we have a running Hudson job that deploys snapshot builds to the camunda BPM nexus repository. This allows you to easily try out camunda-bpm-fluent-tests:

Add the following maven dependency:

<dependency>
  <groupId>org.camunda.bpm.incubation</groupId>
  <artifactId>camunda-bpm-fluent-engine-api</artifactId>
  <version>0.4-SNAPSHOT</version>
  <scope>test</scope>
</dependency>
<dependency>
  <groupId>org.camunda.bpm.incubation</groupId>
  <artifactId>camunda-bpm-fluent-assertions</artifactId>
  <version>0.4-SNAPSHOT</version>
  <scope>test</scope>
</dependency>


And add the camunda BPM repository:

<repositories>
  <repository>
  <id>camunda-bpm-nexus</id>
  <name>camunda-bpm-nexus</name>
  <url>https://app.camunda.com/nexus/content/groups/public</url>
</repository> </repositories>

More contributions welcome!

If you have an interesting idea for an incubation project, read the technical guidelines in Github and talk to us on the DEV mailing list!

2 comments:

  1. It's just great to already have the ci build and the maven dependency. Thank you guys for making that possible so fast. Awesome!

    ReplyDelete
  2. Hi Martin, I'll forward your thanks to our QA-and-Build-Infrastructure-Super-Heroes: Stefan, Christian & Tim :)

    ReplyDelete