This blog post describes how to use Generative AI to create business processes from a graphic or a textual description as a BPMN file and import them into SAP Cloud ALM or SAP Signavio. Anyone can try the examples without any programming knowledge.
Generative AI has taken the world by storm and is set to change the way we communicate and work forever. SAP Business AI is an excellent example of how this new technology can help businesses become more innovative and productive. The challenge now is to translate the amazing capabilities of generative AI into real-world solutions.
One use case is to generate business processes from textual descriptions or graphics. In this blog, I will show you some examples and how to use the generated process models in SAP Cloud ALM and SAP Signavio. I used ChatGPT 4 and Claude 3.5 for this purpose. The terms "Large Language Model (LLM)" and "Generative AI" are often used interchangeably, but they refer to different concepts within the field of artificial intelligence. From here on, I will use the term LLM when talking about generative AI to make the text more readable. See the section Comparison of AI models used for more information.
There is an important note to consider before you try out the examples with your own process models: With the standard generative AIs that are available to the public, such as ChatGPT or Claude 3.5, you cannot be sure that your data will not be used for training purposes. Internal business critical data or processes should not be used.
The SAP Generative AI Hub provides you with secure access for the use of your business-critical or internal data. I recommend the blog post How SAP's Generative AI Hub facilitates embedded, trustworthy, and reliable AI by @andreas_roth as an introduction.
SAP Cloud ALM is SAP's new cloud-based application lifecycle management platform that helps you to implement and operate intelligent cloud and hybrid business solutions. SAP Cloud ALM can be used without additional license costs. It is already included in SAP Cloud Service subscriptions and SAP Enterprise Support. Customers can also try SAP Cloud ALM for free in the public demo tenant.
In the Process Authoring app, you can create and maintain custom solution processes. In addition, there are three other options for the import of process models into SAP Cloud ALM:
I will use the BPMN import for my examples.
Let's take a very simple process description for the first example:
For the first demo, I used ChatGPT-4 via the SAP AI Launchpad . SAP AI Launchpad is a multitenant software as a service (SaaS) application in SAP Business Technology Platform. A restricted free tier plan is available for trial and exploration purposes. But you can also use the openai web interface or an app - just make sure that ChatGPT-4 is used.
The trick in the prompt is the second part about the bpmndi:BPMNDiagram section:
Generate BPMN xml code that I can import into a bpmn editor. Don't forget the bpmndi\:BPMNDiagram section to ensure that the graphical information is included.
Otherwise, the BPMN code is valid, but nothing is displayed when importing into SAP Cloud ALM. The result was copied into an editor, saved with the suffix .bpmn2 and uploaded to SAP Cloud ALM. This is the result:
The first experiment was successful, and I was able to show that you can generate correct BPMN2 xml code with a LLM and upload it to SAP Cloud ALM. You can also use a LLMs for brainstorming - just enter the process description without instructions and ChatGPT will suggest what a business process could look like. Now let's explore another use case with a slightly more complex process.
You would be surprised how often MS Excel is used to model or describe business processes as a spreadsheet. This is a typical example of a process description as a table:
I saved the table as a .csv, loaded it this time into Claude 3.5 and entered this prompt:
This file contains a table that describes a business process.
Use this file to generate BPMN xml code that I can import into a bpmn editor.
Don't forget the bpmndi:BPMNDiagram section to ensure that the graphical information is included.
The generated bpmn code was saved with the suffix .bpmn2 and uploaded to SAP Cloud ALM. And here's the result:
This result was not edited in SAP Cloud ALM but generated in the same way.
More recently, LLMs have become available that can analyze and interpret images. These are referred to as multimodal LLM or Vision Language Model (VLM). Examples include GPT-4o, Claude 3.5 sonnet and LLaVA (Large Language and Vision Assistant). These new models are both magical and a little scary. Upload a photo of a place or your last restaurant visit and ask where it is then you'll understand what I mean.
In my experience, the two most common "process modeling tools" are MS Excel and MS PowerPoint. Neither is suited for the job, but that's how it is. Here's one example of a process model in MS PowerPoint:
As you can see, this model is a bit more complex. With the usual prompt, only the lanes (customer, travel agent, taxi driver) were visible. For this reason, I have extended the prompt one more time.
Analyze the picture.
Generate BPMN xml code that I can import into a bpmn editor.
Don't forget the bpmndi\:BPMNDiagram section to ensure that the graphical information is included.
Provide a complete BPMN XML with the necessary BPMN DI elements for all shapes and connections.
SAP Cloud ALM can easily import the generated XML code but does not recognize message flows. That's why I used SAP Signavio this time:
Not perfect, but you can fix the visual layout within seconds. There is another interesting detail in the example. The original graphic contains an error: A Message Flow cannot be linked to a Start Event; the correct way would be to use a Start Message Event. Claude 3.5 has created a correct xml in this case by creating the message flow for the subsequent task. While I was testing, it often happened that LLM automatically corrected wrong models.
Another idea is to create BPMN xml from other visual representation. A further option would be to generate BPMN XML code from other graphical process descriptions, such as flowcharts or eEPKs. Let me know in the comments if this works for you.
Let's move on to the last, and I think most exciting, example. When a team creates a new business process or adapts an existing one, they typically don't model with a BMPN editor, but with a whiteboard or flipchart. Getting creative is more important than getting the modeling right. Nevertheless, someone must then transfer the sketch into a BPMN model. This tedious manual work can be made a bit easier.
The idea of automatically transforming hand-drawn business process models into BPMN code is not a new one. In 2021, the first ALMathon took place as part of the ALM Summit EMEA. The winner was the BPMN creator from Team Vostura, who was able to do this using traditional programming methods. ChatGPT was still relatively unknown at the time. The big hype did not start until the end of 2022, with the release of version 3.5, which was free for everyone to use.
Let's look at how an LLM performs this task. This image was drawn on a whiteboard, photographed, and exported as a JPEG.
The image is uploaded to Claude 3.5. After that, the familiar prompt is used again:
Analyze the picture. Generate BPMN xml code that I can import into a bpmn editor. Don't forget the bpmndi\:BPMNDiagram section to ensure that the graphical information is included.
Imagine what it would have taken just a short time ago to convert that image into an editable BPMN model. You would need complex algorithms for object recognition, some graph theory, and capable programmers to implement the whole thing. Now everyone can do this with just one prompt. Here's the result:
Once again, the result has not been edited. If you don't believe it - just try it out! The free versions of ChatGPT-4o and Claude 3.5 sonnet are sufficient to generate one or two models per day.
SAP Cloud ALM covers all areas of application lifecycle management and includes a simple BPMN editor for modeling business processes. If you tend to use the process models provided by SAP and model only a few business processes yourself, this is often sufficient.
However, if you want to model company-wide business processes in teams or use individual workflows and approval processes, SAP Signavio Process Manager is the way to go. Unlike SAP Cloud ALM, SAP Signavio supports full BPMN 2 and even has functions for process simulations. A comprehensive list of all the benefits is beyond the scope of this blog post, so it's best to take a look at the SAP Signavio Process Manager homepage. You need a license to use the SAP Signavio Process Manager, but you can also request a 30-day trial version. There is a free version for students as part of the "Academics Initiative".
To import BPMN xml models, switch first to the Process Manager. Here you can import BPMN xml files:
It has proven to be extremely helpful that SAP Signavio displays errors or warnings during the import. This allows you to detect errors during generation and adjust your prompt if necessary.
I tried out several LLMs for this blog:
I also tested a few open source LLMs that I installed locally on my computer:
With the available open source LLMs running at acceptable speeds on my machine, I have had no luck. ChatGPT-3.5 could sometimes generate valid xml code, but the visual layout was never satisfactory. The best results were delivered by ChatGPT-4 and the VLMs ChatGPT-4o (released May 2024) and Claude 3.5 Sonnet (released in June 2024). ChatGPT-4o was able to generate all models correctly, but Claude 3.5 was slightly twice as fast, and the graphical layout was usually more accurate.
My experiments showed that you can generate business process models from a simple textual description, from tables, from pictures, or even from hand-drawn whiteboard graphics. At the time of writing this blog, ChatGPT-4o and Claude 3.5 Sonnet have only been available for a few weeks. These impressive results are only possible with these LLMs.
What is your experience? Have you been able to successfully generate BPMN models, or have you discovered other LLMs that work? Thanks for reading and let me know what you think in the comments below.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
26 | |
13 | |
12 | |
11 | |
9 | |
9 | |
7 | |
5 | |
5 | |
5 |