Automating the IoT with BPMN Why would you do that? David G. Simmons • October 20, 2021 @davidgsIoT

Why would anyone want to? • IoT is ripe for automation • Wait, you mean automating automation? • That’s so meta • Business automation, rather than engineering automation • What does that even mean? @davidgsIoT

How it started • 15+ years in IoT • Job negotiations involved “this is not an IoT position” • Also: “not an IoT company” • Executives kept mentioning IoT • I told them not to encourage me! • They didn’t listen @davidgsIoT

Automating a Greenhouse @davidgsIoT

According to Veri ied Market Research, The Global Smart Greenhouse Market was valued at USD 0.98 Billion in 2018 and is projected to reach USD 2.46 Billion by 2026, growing at a CAGR of 12.11% from 2018 to 2026. https://www.veri iedmarketresearch.com/product/global-smart-greenhouse-market-size-and-forecast-to-2025/ f f @davidgsIoT

That’s it for the greenhouse! Wait, what? • I haven’t inished it! • I had other things come up • I have a better demo • It dispenses Skittles™!! f @davidgsIoT

Very irst assignment • Do something ‘fun’ to show off Camunda BPM • I’ve only been here a week! • “Write about what you know” • Hammer, meet nail f @davidgsIoT

The Halloween Project! • Deep in the Covid times • No one wants to talk to people face to face • It’s Halloween FFS! • Hammer, meet nail @davidgsIoT

I KNOW NOTHING! • Have to pull off a project • Do it quick! • Keep it simple • Write it in Go • Write what you know • Hammer, meet nail @davidgsIoT

Basic Idea • Kid rings doorbell • Take a picture of the kid • Evaluate the picture • Award candy • Dispense candy without opening the door 💡I could do this without even being home! @davidgsIoT

If you build it, they will come • Build a doorbell that will take a picture • Built a candy dispenser • Automate it all • mumble mumble mumble • VC Funding bonanza! Revenue!! Riches!! 🤑💰💰💰 This is going to be super simple. 🙄 @davidgsIoT

Hardware list I just happen to have all this lying around • Doorbell: • ESP32-Cam ($5.00) • Push-button ($1.00) • 2 LEDs ($0.25) • Candy Dispenser: • ESP8266 ($2.00) • Stepper Motor ($8.00) • Stepper driver ($6.00) @davidgsIoT This should surprise no one

Start with Hardware Note: Never start with hardware • First the schematic: • Then build it (spot on!): @davidgsIoT

Candy Dispenser Hardware • First comes the Schematic: @davidgsIoT

Candy Dispenser Hardware • Then the build (Nailed it!): @davidgsIoT

Build a Candy Dispenser Note: I’m terrible at 3-D CAD • Design a Candy Dispenser • Copy a Candy Dispenser • Print! • Awkward @davidgsIoT

Where’s the BPM? • Long, complicated process • 3 tasks require human interaction • Not easily maintainable @davidgsIoT

Let’s see it in action! @davidgsIoT

Your kids look weird • The candy dispenser I built stole wasn’t designed for candy • It was designed for dog treats • Dogs are acceptable standins for kids. • Fight me. • Dont’ try to ight them • They’re useless in a ight. f f @davidgsIoT

We can make this better That’s a universal truth • Most of the ‘decisions’ are coded into the model itself • That’s a terrible idea • I didn’t know any better • It’s very dif icult to maintain • Don’t do it • Too much human interaction. • We can do better f @davidgsIoT

Let’s collapse the model • Only one Human Task • All the decisions automated with DMN • Much more ef icient! f @davidgsIoT

Let’s use DMN to automate decisions • Use nested decision tables • Same result, but faster • Less human interaction @davidgsIoT

Who needs people anyway? I did say “automating IoT with BPM” • We can completely remove all human tasks • If we move the goal posts just a little bit @davidgsIoT

Even shorter Task • No human tasks • A single Decision Table @davidgsIoT

Ok, so it’s not a single decision table • Wait, what? Anger, Sorrow, Surprise, and Joy? @davidgsIoT

Using AI to augment the automation • Google image processing • Get the emotions @davidgsIoT

All talk, no demo @davidgsIoT

I hate this damned machine I wish that they would sell it. It never does what I want But only what I tell it. My mom @davidgsIoT

Questions? David G. Simmons, Principal Developer Advocate Camunda, Inc. david.simmons@camunda.com https://github.com/davidgs https://davidgs.com/ @davidgsIoT