PLAY PODCASTS
Wrangling Business Process Models With Python and SpiffWorkflow
Episode 144

Wrangling Business Process Models With Python and SpiffWorkflow

The Real Python Podcast · Real Python

February 10, 202352m 17s

Audio is streamed directly from the publisher (dts.podtrac.com) as published in their RSS feed. Play Podcasts does not host this file. Rights-holders can request removal through the copyright & takedown page.

Show Notes

<p>Can you describe your business processes with flowcharts? What if you could define the steps in a standard notation and implement the workflows in pure Python? This week on the show, Dan Funk from Sartography is here to discuss SpiffWorkflow.</p> <p>SpiffWorkflow is a Python tool for translating Business Process Model and Notation (BPMN) diagrams into a workflow engine. You can manipulate this visual chain of events to suit your team&rsquo;s business requirements. Individual events in the workflow can contain blocks or scripts of Python code to be executed.</p> <p>We discuss the concept of low-code software tools. Dan also talks about how SpiffWorkflow aims at getting non-developers within an organization involved in development.</p> <div class="alert alert-primary" role="alert"> <p><strong>Course Spotlight:</strong> <a href="https://realpython.com/courses/new-features-python-311/">Cool New Features in Python 3.11 – Real Python</a></p> <p>In this video course, you&rsquo;ll explore what Python 3.11 brings to the table. You&rsquo;ll learn how Python 3.11 is the fastest and most user-friendly version of CPython yet, and learn about improvements to the typing system and to the asynchronous features of Python.</p> </div> <p>Topics:</p> <ul> <li>00:00:00 &ndash; Introduction</li> <li>00:02:14 &ndash; What is SpiffWorkflow?</li> <li>00:03:12 &ndash; What is BPMN? </li> <li>00:06:29 &ndash; What did you need to add to the project?</li> <li>00:07:12 &ndash; What are the components of a diagram?</li> <li>00:12:42 &ndash; Examples of workflow</li> <li>00:13:54 &ndash; Sponsor: TelemetryHub</li> <li>00:14:29 &ndash; What types of industries use BPMN?</li> <li>00:18:02 &ndash; Decision Model and Notation (DMN)</li> <li>00:19:34 &ndash; What is low-code?</li> <li>00:27:02 &ndash; How could someone get involved?</li> <li>00:28:02 &ndash; How do you host a workflow?</li> <li>00:29:43 &ndash; Video Course Spotlight</li> <li>00:31:05 &ndash; What has the project taught you as a developer?</li> <li>00:37:29 &ndash; Empowering more members of the organization</li> <li>00:42:07 &ndash; Project direction for the next year</li> <li>00:42:51 &ndash; Where to start with SpiffWorkflow?</li> <li>00:43:15 &ndash; What are you excited about in the world of Python?</li> <li>00:45:59 &ndash; What do you want to learn next?</li> <li>00:51:06 &ndash; Thanks and goodbye</li> </ul> <p>Show Links:</p> <ul> <li><a href="https://www.spiffworkflow.org/">SpiffWorkflow</a></li> <li><a href="https://spiffworkflow.readthedocs.io/en/latest/">Overview SpiffWorkflow 1.2.1 documentation</a></li> <li><a href="https://github.com/sartography/SpiffWorkflow">SpiffWorkflow: A powerful workflow engine implemented in pure Python - GitHub</a></li> <li><a href="https://sartography.com/">Sartography</a></li> <li><a href="https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation">Business Process Model and Notation - Wikipedia</a></li> <li><a href="https://www.omg.org/dmn/">Decision Model and Notation™ (DMN™) | Object Management Group</a></li> <li><a href="https://bpmn.io/">Web-based tooling for BPMN, DMN, CMMN, and Forms | bpmn.io</a></li> <li><a href="https://www.computer.org/csdl/magazine/so/2023/01/09994228/1JgvNO5CqwU">Creating a Low-Code Business Process Execution Platform With Python, BPMN, and DMN - IEEE Software</a></li> <li><a href="https://www.spiffworkflow.org/posts/articles/low_code/">The Low Code Wall, SpiffWorkflow</a></li> <li><a href="https://www.spiffworkflow.org/pages/spiffarena/">SpiffArena, SpiffWorkflow</a></li> <li><a href="https://www.youtube.com/watch?v=Fjdqb2tdxHg">Install SpiffArena then build and run your first diagram - YouTube</a></li> <li><a href="https://mindtrails.virginia.edu/">MindTrails - University of Virginia</a></li> <li><a href="https://www.manning.com/books/practices-of-the-python-pro">Practices of the Python Pro</a></li> <li><a href="https://realpython.com/podcasts/rpp/49/">Episode #49: The Challenges of Developing Into a Python Professional – The Real Python Podcast</a></li> <li><a href="https://docs.python.org/3/whatsnew/3.11.html#whatsnew311-pep678">PEP 678: Exceptions can be enriched with notes - Python 3.11.1 documentation</a></li> <li><a href="https://www.instructables.com/Building-A-Ship-In-A-Bottle/">Building a Ship in a Bottle. : 14 Steps (with Pictures) - Instructables</a></li> <li><a href="https://status.im/">Status - Private, Secure Communication</a></li> <li><a href="https://www.linkedin.com/in/funkdan/">Dan Funk - LinkedIn</a></li> <li><a href="https://twitter.com/SpiffWorkflow">SpiffWorkflow (@SpiffWorkflow) - Twitter</a></li> </ul> <p>Level up your Python skills with our expert-led courses:</p> <ul> <li><a href="https://realpython.com/courses/building-project-documentation-mkdocs/">Building Python Project Documentation With MkDocs</a></li> <li><a href="https://realpython.com/courses/new-features-python-311/">Cool New Features in Python 3.11</a></li> <li><a href="https://realpython.com/courses/editing-excel-python-openpyxl/">Editing Excel Spreadsheets in Python With openpyxl</a></li> </ul> <p><a rel="payment" href="https://realpython.com/join">Support the podcast &amp; join our community of Pythonistas</a></p>