A presentation at J On The Beach in in Málaga, Spain by David G. Simmons
Automating the IoT with BPMN Why would you do that? David G. Simmons • April 27, 2022 @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
Very first assignment • Do something ‘fun’ to show off Camunda BPM • I’ve only been here a week! • “Write about what you know” • Hammer, meet nail @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 e r B • Built a candy dispenser • Automate it all • mumble mumble mumble • VC Funding bonanza! Revenue!! Riches!! 🤑💰💰💰 This is going to be super simple. 🙄 @davidgsIoT ! g n i ak
Hardware list I just happen to have all this lying around • Doorbell: • ESP32-Cam ($5.00) • Push-button ($0.50) • 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 fight them • They’re useless in a fight. @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 difficult to maintain • Don’t do it • Too much human interaction. • We can do better @davidgsIoT
Let’s collapse the model • Only one Human Task • All the decisions automated with DMN • Much more efficient! @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
Here’s what was said about this presentation on social media.
David G. Simmons is here!! Enjoy his talk at Kokunero Hall@davidgsIoT pic.twitter.com/6S9tRVB2Ng
— J On The Beach (@jotb22) April 28, 2022
David G. Simmons (@davidgsIoT
— J On The Beach (@jotb22) April 28, 2022
) explained how to automate automation with a very nice example: using BPMN and Google AI to distribute automatically candies to children at Halloween through the doorbell - you'll get a candy just if you are a child with a nice costume 😜 pic.twitter.com/P2UWfFHoIB
You could say @davidgsiot is a a good friend of #JOTB22. This is this 2nd year giving a talk and yesterday he also delivered a workshop! pic.twitter.com/KdvG6sXLx7
— J On The Beach (@jotb22) April 28, 2022
Rounding out my day @jotb22 is @davidgsIoT, showing us how to automate candy dispensing with Camunda's decision engine.
— 🇵🇭 Adrienne (@AdrienneTacke) April 28, 2022
I want one workflow that dispenses a torta loca to me every time I am determined to be sad 😁 #jotb22 pic.twitter.com/bh2Vdx9J8s
Yes! pic.twitter.com/EzkAa97CrW
— 🇵🇭 Adrienne (@AdrienneTacke) April 28, 2022
I learned a lot too 😅
— Alexandra M Sims💡 (@alexandrasimsM) April 30, 2022