[CSF] Build Yourself a COVID-Safe Halloween Candy Dispenser Using Arduino and Camunda BPM

It's a very Camunda Halloween, and this project should keep you safe from the Trick-or-Treaters!

In this year of COVID-19, I needed to find a way to make Trick-or-Treating safe and fun for everyone. I knew it needed to be no-contact, but I also knew I needed a way to properly evaluate the costumes and Trick-or-Treaters to give out candy. What I came up with is a combination of IoT and Business Process Management (BPM) that allows you to safely evaluate Trick-or-Treaters from afar and dispense candy on demand! It's more than just a BPM process, of course. It's an IoT project that uses Camunda BPM to deliver the goods.

Voxxed Days Microservices 2019: Bernd Rucker on “Complex Event Flows in Distributed Systems”

Hi Bernd, tell us who you are and what lead you into microservices?

Our customers. Over the last years they adopted that architectural style more and more – and of course, had questions around it. Then I saw a lot of misunderstandings around how to implement end to end business processes or workflows in these microservices architectures – as people tried to avoid mistakes made with BPM and SOA. That got me into thinking about that whole topic and I got quite enthusiastic about it – which lead to a couple of articles and more than 100 talks around the world.  

Unit Testing of jBPM Process Flows

Unit testing is an important step in the software development life cycle to ensure that your product works the way it is intended to work. Back in the day, it used to be just a step that developers had to perform to evaluate their work. In today’s world, it has become an essential part of the CI/CD pipeline as it is not just used to determine quality based on functionality but also to determine code promotion eligibility based on various numbers (pass/fail ratio or code coverage percentage).

jBPM, being one of the most modern, open-source bpm products, provides rich capabilities for unit testing BPM processes. This allows jBPM processes to be treated just like any other Java-based artifact. The jBPM tool kit provides an extension of JUnit test classes that allow one to easily unit test business processes defined in BPMN2.

Don’t Confuse Business Process Management with Network Automation

It is not uncommon for enterprises to confuse the role of a Business Process Management (BPM) system with that of a network automation solution. Because there are a lot of similarities between the two, we often see organizations attempt to leverage BPM systems to automate network activities in an effort to leverage their existing investments in these tools. Additionally, the allure of open source BPM options is often mistakenly seen as low-cost alternatives to network automation solutions. While the differences between the two are vast at their core, they are often overlooked or discounted in the planning process due to their common traits and similarities at the surface. Inevitably, their differences always present themselves as major problems during implementation when operators discover they can’t force a network focused automation process into a system not designed with that in mind; it’s just not the right tool for the job and as a result, falls short in automating critical network operations.

When looking at the capabilities of a BPM system as compared to a network automation solution, they both share similar features such as: