🔧 Camunda 7.x - 8.8 to 8.9 Migration Project Report

Complete migration analysis
📅 2026-07-06 16:08:06
Camunda BPMN
8.9.0
Camunda SDK
8.5.0
Spring Boot
3.4.0
JDK
21
43
BPMN Processes
✅ Migrated
229
Source Nodes
✅ Parsed
229
Migrated Nodes
✅ Parsed
29
Delegates Referenced
✅ Found
26
Delegates in JAR
⚠️ 3 not in JAR
26
Spring Boot Workers
✅ Generated
26
Plain Java Workers
✅ Generated
67
Service Tasks
✅ Converted
252
User Tasks
⚠️ 250 No Forms
2
Script Tasks
⚠️ Need Workers
169
FEEL Expressions
✅ Converted
2
Forms
✅ Migrated
4
Critical/High Issues
🚨 Must Fix

📊 Complexity Distribution

Simple 33
Medium 10
Complex 0
Very Complex 0
Critical 0
Very Critical 0
Extreme Critical 0

📋 Executive Summary

📊
43 BPMN processes migrated successfully
29 JavaDelegates referenced in BPMN → 26 found in JAR ⚠️ 3 missing
⚙️
26 Plain Java workers generated from available delegates
📝
2 Script Tasks across 2 processes
⚠️
4 critical/high and 40 medium issues
🎯
169 FEEL expressions converted from JUEL

📊 Process Complexity Distribution

BPMN File Score Process Complexity Nodes Service Script User Gateways Events Timer Cancel Comp Cond Trans Java
xquery-example.bpmn 12 XQuery Example Simple 3 0 1 0 0 0 0 0 0 0 0 0
invoiceApproval.bpmn 9 Camunda Forms Quickstart Simple 3 0 0 1 0 0 0 0 0 0 0 0
camunda-testing-job-announcement.bpmn 53 camunda-testing-job-announcement Medium 22 1 0 4 1 0 0 0 0 0 0 1
react-example.bpmn 12 React Example Simple 5 0 0 1 1 0 0 0 0 0 0 0
xslt-example.bpmn 12 XSLT Example Simple 3 0 1 0 0 0 0 0 0 0 0 0
process-history-full.bpmn 14 process-history-full Simple 3 1 0 0 0 0 0 0 0 0 0 1
process.bpmn 29 Customer Data Process Simple 8 1 0 3 1 0 0 0 0 0 0 1
TwitterDemoProcess.bpmn 32 TwitterDemoProcess Medium 7 2 0 1 2 0 0 0 0 0 0 2
process-history-activity.bpmn 14 process-history-activity Simple 3 1 0 0 0 0 0 0 0 0 0 1
tenant1_process.bpmn 17 tenant1_process Simple 4 1 0 1 0 0 0 0 0 0 0 1
sample.bpmn 9 Sample Simple 3 0 0 1 0 0 0 0 0 0 0 0
camunda-testing-job-announcement-publication.bpmn 51 Job Announcement Publication (Subprocess) Medium 11 3 0 0 6 0 0 0 0 0 0 3
mainProcess.bpmn 20 Main Process Simple 3 0 0 0 0 0 0 0 0 0 0 0
loanApproval.bpmn 9 Generated Forms Quickstart Simple 3 0 0 1 0 0 0 0 0 0 0 0
SpringExpressionResolvingTest.testResolveBean.bpmn 14 SpringExpressionResolvingTest.testResolveBean Simple 3 1 0 0 0 0 0 0 0 0 0 1
loanRequest.bpmn 17 loanRequest Simple 5 1 0 1 0 0 0 0 0 0 0 1
instantiating_process.bpmn 17 instantiating_process Simple 4 1 0 1 0 0 0 0 0 0 0 1
bpmnParseListener.bpmn 22 BpmnParseListener Simple 4 2 0 0 0 0 0 0 0 0 0 2
waitingState.bpmn 9 waitingState Simple 3 0 0 1 0 0 0 0 0 0 0 0
invokeSoapService.bpmn 23 Get Weather Forecast Simple 7 1 0 2 1 0 0 0 0 0 0 0
support.bpmn 40 Handle Support Ticket Medium 9 3 0 1 1 0 0 0 0 0 0 3
order-handling.bpmn 46 Order Process Medium 9 2 0 0 0 1 1 0 0 1 1 2
testProcess.bpmn 9 testProcess Simple 3 0 0 1 0 0 0 0 0 0 0 0
process-history-none.bpmn 14 process-history-none Simple 3 1 0 0 0 0 0 0 0 0 0 1
taskAssignmentEmail.bpmn 9 Task Assignment Email Simple 3 0 0 1 0 0 0 0 0 0 0 0
asynchronousServiceInvocation.bpmn 20 Asynchronous Service Invocation Simple 5 1 0 2 0 0 0 0 0 0 0 1
subProcess.bpmn 12 Sub-Process (tenant-specific) Simple 4 0 0 2 0 0 0 0 0 0 0 0
loan-granting.bpmn 51 Granting Loans Medium 13 3 0 0 1 0 1 0 0 0 0 3
process-history-custom-variable.bpmn 14 process-history-custom-variable Simple 3 1 0 0 0 0 0 0 0 0 0 1
retry-example.bpmn 41 retry-example Medium 6 4 0 0 0 0 0 0 0 0 0 4
synchronousServiceInvocation.bpmn 20 Synchronous Service Invocation Simple 5 1 0 2 0 0 0 0 0 0 0 1
create-customer-rating.bpmn 32 Create Customer Rating (Embedded Forms with Serializable java Objects Example) Medium 7 2 0 1 2 0 0 0 0 0 0 2
SpringExpressionResolvingTest.testResolveBeanFromJobExecutor.bpmn 14 TestDeployProcessArchive Simple 3 1 0 0 0 0 0 0 0 0 0 1
setAccountName.bpmn 14 setAccountNameProcess Simple 3 1 0 0 0 0 0 0 0 0 0 1
tenant2_process.bpmn 17 tenant2_process Simple 4 1 0 1 0 0 0 0 0 0 0 1
feature.bpmn 26 Handle Feature Request Simple 5 2 0 1 1 0 0 0 0 0 0 2
bpmnParseListenerOnUserTask.bpmn 12 bpmnParseListenerOnUserTask Simple 4 0 0 2 0 0 0 0 0 0 0 0
message_start_process.bpmn 19 message_start_process Simple 3 0 0 1 0 0 0 0 0 0 0 0
exampleProcess.bpmn 9 Example Process Simple 3 0 0 1 0 0 0 0 0 0 0 0
dataformat-demo.bpmn 40 Dataformat demo Medium 8 3 0 1 2 0 0 0 0 0 0 3
invoicePayment.bpmn 40 Embedded Forms BPMN Events Medium 9 0 0 3 0 2 0 0 0 0 0 0
EjbExpressionResolvingTest.testResolveBean.bpmn 14 EjbExpressionResolvingTest.testResolveBean Simple 3 1 0 0 0 0 0 0 0 0 0 1
invokeRestService.bpmn 23 Get Holiday Simple 7 1 0 2 1 0 0 0 0 0 0 0

☕ Delegate to Worker Mapping

Java Delegate Used In Plain Java Worker Spring Boot Worker
org.camunda.bpm.quarkus.example.datasource.ApprovalServiceDelegate ApprovalServiceDelegate, as ApprovalServiceDelegate, as
org.camunda.bpm.example.invoice.service.ArchiveInvoiceService ArchiveInvoiceService ArchiveInvoiceService
org.camunda.quickstart.servicetask.invocation.AsynchronousServiceTask asynchronousServiceInvocation.bpmn→Asynchronous Service Task
org.camunda.bpm.example.loanapproval.CalculateInterestService CalculateInterestService CalculateInterestService
org.camunda.bpm.example.usertask.embedded.serialized.delegate.CalculateRating create-customer-rating.bpmn→Calculate Rating http-connector, as http-connector, as
org.camunda.bpm.example.CreateVariablesDelegate process-history-full.bpmn→Create Variables, process-history-activity.bpmn→Create Variables and 2 more...
org.camunda.bpm.quickstart.ejb.EjbJavaDelegate EjbJavaDelegate EjbJavaDelegate
org.camunda.bpm.example.spring.servlet.pa.ExampleDelegateBean ExampleDelegateBean ExampleDelegateBean
org.camunda.bpm.example.tasklistener.InformAssigneeTaskListener InformAssigneeTaskListener, as InformAssigneeTaskListener, as
org.camunda.bpm.example.event.message.InstantiateProcessByMessageDelegate instantiating_process.bpmn→Send Message http-connector http-connector
org.camunda.bpm.example.JsonJavaDelegate process.bpmn→Validate customer JsonJavaDelegate JsonJavaDelegate
org.camunda.bpm.quickstart.LoggerDelegate support.bpmn→Close ticket, support.bpmn→Escalate and 3 more...
org.camunda.bpm.quarkus.example.MyServiceDelegate MyServiceDelegate MyServiceDelegate
org.camunda.bpm.example.usertask.embedded.serialized.delegate.ProcessRating create-customer-rating.bpmn→Process Rating LoggerDelegate, as LoggerDelegate, as
org.camunda.bpm.example.executionlistener.ProgressLoggingExecutionListener ProgressLoggingExecutionListener ProgressLoggingExecutionListener
org.camunda.bpm.spring.boot.example.twitter.RejectionNotificationDelegate RejectionNotificationDelegate RejectionNotificationDelegate
org.camunda.bpm.spring.boot.example.webapp.delegate.SayHelloDelegate SayHelloDelegate SayHelloDelegate
org.camunda.bpm.example.delegate.ServiceTaskOneDelegate bpmnParseListener.bpmn→ServiceTask 1, retry-example.bpmn→Fetch data from the CRM system  and 1 more... ServiceTaskOneDelegate, , as ServiceTaskOneDelegate, , as
org.camunda.bpm.example.delegate.ServiceTaskTwoDelegate bpmnParseListener.bpmn→ServiceTask 2, retry-example.bpmn→Send customer data to the ERP system and 1 more... , ServiceTaskTwoDelegate, as , ServiceTaskTwoDelegate, as
org.camunda.bpm.tutorial.multitenancy.SimpleServiceTask SimpleServiceTask, as SimpleServiceTask, as
org.camunda.bpm.quarkus.example.service.StoreOrderItemService StoreOrderItemService StoreOrderItemService
org.camunda.quickstart.servicetask.invocation.sync.SynchronousServiceTask synchronousServiceInvocation.bpmn→Synchronous Service Task
org.camunda.bpm.quickstart.TaskAssignmentListener TaskAssignmentListener, as TaskAssignmentListener, as
org.camunda.bpm.tutorial.multitenancy.TenantAwareServiceTask tenant1_process.bpmn→tenant-aware service task, tenant2_process.bpmn→tenant-aware service task TenantAwareServiceTask, as TenantAwareServiceTask, as
org.camunda.bpm.spring.boot.example.twitter.TweetContentDelegate TweetContentDelegate TweetContentDelegate
org.camunda.bpm.spring.boot.example.twitter.TweetContentOfflineDelegate TweetContentOfflineDelegate TweetContentOfflineDelegate
org.camunda.bpm.quickstart.as as as
org.camunda.bpm.platform.example.servlet.can can can
org.camunda.quickstart.servicetask.invocation.sync.will as, will as, will
Summary: 29 delegates referenced in BPMN → 26 found in JAR → 26 Spring Boot workers + 26 Plain Java workers generated | ⚠️ 3 delegate(s) missing from JAR: AsynchronousServiceTask, SynchronousServiceTask, LoggerDelegate

🔵 Camunda 8.9 Special Migration Summary

Migration Pattern Count Affected Processes
Conditional Event JUEL → FEEL 1 Order Process
Escalation Event → Escalation Event (with FEEL) 1 Embedded Forms BPMN Events
Script Task → Job Worker 2 XQuery Example, XSLT Example

📦 JAR Summary

Category Count Description
Plain Java Individual JARs 0 None generated
Spring Boot Individual JARs 0 None generated
Plain Java Group JAR 0 None generated
Spring Boot Group JAR 0 None generated
ScriptWorker Individual JARs 0 None generated
TOTAL JARs 0 All JAR files generated
Deployment Options: Microservice (0 JARs) | Monolith (Spring Boot: 0 JAR) | Monolith (Plain Java: 0 JAR)

🔄 Transformation Analysis - Actual BPMN Nodes

Note: All BPMN nodes are listed.

BPMN File Name Score Source Node Source ID Source Type Migrated Node Migrated ID Migrated Type Status
xquery-example.bpmn 12 give input StartEvent_1 Start give input StartEvent_1 Start ✅ Preserved
convert input ScriptTask_1 Script Task convert input ScriptTask_1 Script Task ✅ Preserved
show output EndEvent_1 End show output EndEvent_1 End ✅ Preserved
invoiceApproval.bpmn 9 Invoice Received StartEvent_1 Start Invoice Received StartEvent_1 Start ✅ Preserved
Invoice Processed EndEvent_1 End Invoice Processed EndEvent_1 End ✅ Preserved
Approve Invoice UserTask_1 User Task Approve Invoice UserTask_1 User Task ✅ Preserved
camunda-testing-job-announcement.bpmn 53 LaneSet_0938wst laneSet LaneSet_0938wst laneSet ✅ Preserved
Automated Lane_105il6x lane Automated Lane_105il6x lane ✅ Preserved
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
Management Lane_0sb6j56 lane Management Lane_0sb6j56 lane ✅ Preserved
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
HR Lane_1klekz5 lane HR Lane_1klekz5 lane ✅ Preserved
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
flowNodeRef LaneSet_0938wst laneSet 🔄 ID Changed
New open position Event_0nt3pjb Start New open position Event_0nt3pjb Start ✅ Preserved
Send confirmation mail Service Task Send confirmation mail Service Task ✅ Preserved
New position announced Event_194gsd3 End New position announced Event_194gsd3 End ✅ Preserved
Execute announcement publication Call Activity Execute announcement publication Call Activity ✅ Preserved
Review job role description review User Task Review job role description review User Task ✅ Preserved
OK? Gateway_0o79ay3 Exclusive Gateway OK? Gateway_0o79ay3 Exclusive Gateway ✅ Preserved
Describe job role edit User Task Describe job role edit User Task ✅ Preserved
Improve job role description correct User Task Improve job role description correct User Task ✅ Preserved
Publish announcement publish User Task Publish announcement publish User Task ✅ Preserved
react-example.bpmn 12 Invoice Received StartEvent_1 Start Invoice Received StartEvent_1 Start ✅ Preserved
Approve Invoice Task_1a9adlo User Task Approve Invoice Task_1a9adlo User Task ✅ Preserved
Invoice not processed EndEvent_0fmx4bw End Invoice not processed EndEvent_0fmx4bw End ✅ Preserved
Invoice Approved? ExclusiveGateway_0kzw7nc Exclusive Gateway Invoice Approved? ExclusiveGateway_0kzw7nc Exclusive Gateway ✅ Preserved
Invoice Processed EndEvent_0zc07k5 End Invoice Processed EndEvent_0zc07k5 End ✅ Preserved
xslt-example.bpmn 12 give input StartEvent_1 Start give input StartEvent_1 Start ✅ Preserved
convert input ScriptTask_1 Script Task convert input ScriptTask_1 Script Task ✅ Preserved
show output EndEvent_1 End show output EndEvent_1 End ✅ Preserved
process-history-full.bpmn 14 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
Create Variables ServiceTask_1 Service Task Create Variables ServiceTask_1 Service Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
process.bpmn 29 Customer entered StartEvent_1 Start Customer entered StartEvent_1 Start ✅ Preserved
Approve customer UserTask_1 User Task Approve customer UserTask_1 User Task ✅ Preserved
Customer age? ExclusiveGateway_1 Exclusive Gateway Customer age? ExclusiveGateway_1 Exclusive Gateway ✅ Preserved
Under 21 UserTask_3 User Task Under 21 UserTask_3 User Task ✅ Preserved
Over 21 UserTask_2 User Task Over 21 UserTask_2 User Task ✅ Preserved
Old customer validated EndEvent_2 End Old customer validated EndEvent_2 End ✅ Preserved
Young customer vaildated EndEvent_3 End Young customer vaildated EndEvent_3 End ✅ Preserved
Validate customer Task_0n2pfas Service Task Validate customer Task_0n2pfas Service Task ✅ Preserved
TwitterDemoProcess.bpmn 32 Send rejection notification service_task_send_rejection_notification Service Task Send rejection notification service_task_send_rejection_notification Service Task ✅ Preserved
Approved? gateway_approved Exclusive Gateway Approved? gateway_approved Exclusive Gateway ✅ Preserved
Join gateway_join Exclusive Gateway Join gateway_join Exclusive Gateway ✅ Preserved
Publish on Twitter service_task_publish_on_twitter Service Task Publish on Twitter service_task_publish_on_twitter Service Task ✅ Preserved
Tweet handled end_event_tweet_handled End Tweet handled end_event_tweet_handled End ✅ Preserved
Tweet written start_event_new_tweet Start Tweet written start_event_new_tweet Start ✅ Preserved
Review Tweet user_task_review_tweet User Task Review Tweet user_task_review_tweet User Task ✅ Preserved
process-history-activity.bpmn 14 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
Create Variables ServiceTask_1 Service Task Create Variables ServiceTask_1 Service Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
tenant1_process.bpmn 17 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
user task UserTask_0ip48n0 User Task user task UserTask_0ip48n0 User Task ✅ Preserved
tenant-aware service task ServiceTask_0dsnjuy Service Task tenant-aware service task ServiceTask_0dsnjuy Service Task ✅ Preserved
sample.bpmn 9 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
do something UserTask_1 User Task do something UserTask_1 User Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
camunda-testing-job-announcement-publication.bpmn 51 Event_0izgki4 Start Event_0izgki4 Start ✅ Preserved
Publish announcement on website publish_announcement_website Service Task Publish announcement on website publish_announcement_website Service Task ✅ Preserved
Gateway_0z7rp9m Parallel Gateway Gateway_0z7rp9m Parallel Gateway ✅ Preserved
Chose Twitter? Gateway_0c0k10n Exclusive Gateway Chose Twitter? Gateway_0c0k10n Exclusive Gateway ✅ Preserved
Publish announcement on Twitter publish_announcement_twitter Service Task Publish announcement on Twitter publish_announcement_twitter Service Task ✅ Preserved
Gateway_030yxlx Exclusive Gateway Gateway_030yxlx Exclusive Gateway ✅ Preserved
Gateway_1loiva2 Parallel Gateway Gateway_1loiva2 Parallel Gateway ✅ Preserved
Gateway_0j1qkse Exclusive Gateway Gateway_0j1qkse Exclusive Gateway ✅ Preserved
Publish announcement on Facebook publish_announcement_facebook Service Task Publish announcement on Facebook publish_announcement_facebook Service Task ✅ Preserved
Chose Facebook? Gateway_1bdrrsh Exclusive Gateway Chose Facebook? Gateway_1bdrrsh Exclusive Gateway ✅ Preserved
Event_087qk1c End Event_087qk1c End ✅ Preserved
mainProcess.bpmn 20 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
subprocess CallActivity_0ahffuc Call Activity subprocess CallActivity_0ahffuc Call Activity ✅ Preserved
EndEvent_0pf67o7 End EndEvent_0pf67o7 End ✅ Preserved
loanApproval.bpmn 9 Loan Request Received StartEvent_1 Start Loan Request Received StartEvent_1 Start ✅ Preserved
Done EndEvent_1 End Done EndEvent_1 End ✅ Preserved
Approve Request UserTask_1 User Task Approve Request UserTask_1 User Task ✅ Preserved
SpringExpressionResolvingTest.testResolveBean.bpmn 14 Start theStart Start Start theStart Start ✅ Preserved
End endevent1 End End endevent1 End ✅ Preserved
Service Task servicetask1 Service Task Service Task servicetask1 Service Task ✅ Preserved
loanRequest.bpmn 17 Loan Request Received StartEvent_1 Start Loan Request Received StartEvent_1 Start ✅ Preserved
Loan Approved EndEvent_1y4bj2w End Loan Approved EndEvent_1y4bj2w End ✅ Preserved
Calculate Interest ServiceTask_1tvk8uj Service Task Calculate Interest ServiceTask_1tvk8uj Service Task ✅ Preserved
Approve Loan UserTask_0eay4mh User Task Approve Loan UserTask_0eay4mh User Task ✅ Preserved
TextAnnotation_1xesufm textAnnotation TextAnnotation_1xesufm textAnnotation ✅ Preserved
instantiating_process.bpmn 17 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
Send Message ServiceTask_1 Service Task Send Message ServiceTask_1 Service Task ✅ Preserved
Wait in Instantiating Process UserTask_1 User Task Wait in Instantiating Process UserTask_1 User Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
bpmnParseListener.bpmn 22 Start StartEvent_1 Start Start StartEvent_1 Start ✅ Preserved
ServiceTask 1 ServiceTask_1 Service Task ServiceTask 1 ServiceTask_1 Service Task ✅ Preserved
ServiceTask 2 ServiceTask_2 Service Task ServiceTask 2 ServiceTask_2 Service Task ✅ Preserved
End EndEvent_1 End End EndEvent_1 End ✅ Preserved
waitingState.bpmn 9 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
EndEvent_0nrd2ju End EndEvent_0nrd2ju End ✅ Preserved
Wating state Task_0xibf8v User Task Wating state Task_0xibf8v User Task ✅ Preserved
invokeSoapService.bpmn 23 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
Get Weather Forecast (Soap) ServiceTask_2 Service Task Get Weather Forecast (Soap) ServiceTask_2 Service Task ✅ Preserved
ExclusiveGateway_1 Exclusive Gateway ExclusiveGateway_1 Exclusive Gateway ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
Pack for cold weather UserTask_2 User Task Pack for cold weather UserTask_2 User Task ✅ Preserved
EndEvent_2 End EndEvent_2 End ✅ Preserved
Pack for warm weather UserTask_1 User Task Pack for warm weather UserTask_1 User Task ✅ Preserved
support.bpmn 40 Select Support Ticket StartEvent_1 Start Select Support Ticket StartEvent_1 Start ✅ Preserved
Handle Support Ticket UserTask_1 User Task Handle Support Ticket UserTask_1 User Task ✅ Preserved
EndEvent_3 End EndEvent_3 End ✅ Preserved
How To Handle Support Ticket? ExclusiveGateway_1 Exclusive Gateway How To Handle Support Ticket? ExclusiveGateway_1 Exclusive Gateway ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
EndEvent_2 End EndEvent_2 End ✅ Preserved
Close ticket ServiceTask_1 Service Task Close ticket ServiceTask_1 Service Task ✅ Preserved
Escalate ServiceTask_2 Service Task Escalate ServiceTask_2 Service Task ✅ Preserved
Respond to customer ServiceTask_3 Service Task Respond to customer ServiceTask_3 Service Task ✅ Preserved
order-handling.bpmn 46 Task_1nbdup3 Sub Process Task_1nbdup3 Sub Process ✅ Preserved
StartEvent_1iul9gy Start StartEvent_1iul9gy Start ✅ Preserved
EndEvent_036eexy End EndEvent_036eexy End ✅ Preserved
Create Invoice Task_06z99p1 Service Task Create Invoice Task_06z99p1 Service Task ✅ Preserved
EndEvent_00asnpf End EndEvent_00asnpf End ✅ Preserved
EndEvent_0q2wrcp End EndEvent_0q2wrcp End ✅ Preserved
Order received StartEvent_1 Start Order received StartEvent_1 Start ✅ Preserved
Archive invoice? BoundaryEvent_1y1bvad Boundary Event Archive invoice? BoundaryEvent_1y1bvad Boundary Event ✅ Preserved
Archive invoice Task_1yjkccw Service Task Archive invoice Task_1yjkccw Service Task ✅ Preserved
testProcess.bpmn 9 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
Handle Request UserTask_1 User Task Handle Request UserTask_1 User Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
process-history-none.bpmn 14 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
Create Variables ServiceTask_1 Service Task Create Variables ServiceTask_1 Service Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
taskAssignmentEmail.bpmn 9 Start Event StartEvent_1 Start Start Event StartEvent_1 Start ✅ Preserved
do something UserTask_1 User Task do something UserTask_1 User Task ✅ Preserved
End Event EndEvent_2 End End Event EndEvent_2 End ✅ Preserved
asynchronousServiceInvocation.bpmn 20 Start StartEvent_1 Start Start StartEvent_1 Start ✅ Preserved
Wait State Before waitStateBefore User Task Wait State Before waitStateBefore User Task ✅ Preserved
Asynchronous Service Task serviceTaskActivity Service Task Asynchronous Service Task serviceTaskActivity Service Task ✅ Preserved
Wait State After waitStateAfter User Task Wait State After waitStateAfter User Task ✅ Preserved
End EndEvent_1 End End EndEvent_1 End ✅ Preserved
subProcess.bpmn 12 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
task in tenant specific subprocess UserTask_17fr4ij User Task task in tenant specific subprocess UserTask_17fr4ij User Task ✅ Preserved
another task UserTask_0wbry7k User Task another task UserTask_0wbry7k User Task ✅ Preserved
EndEvent_001dp5e End EndEvent_001dp5e End ✅ Preserved
loan-granting.bpmn 51 Check credit score Task_1lvjtd4 Service Task Check credit score Task_1lvjtd4 Service Task ✅ Preserved
Decide if a loan is granted SubProcess_16kr5xn Sub Process Decide if a loan is granted SubProcess_16kr5xn Sub Process ✅ Preserved
ExclusiveGateway_12xhuxz Exclusive Gateway ExclusiveGateway_12xhuxz Exclusive Gateway ✅ Preserved
EndEvent_1alwvtl End EndEvent_1alwvtl End ✅ Preserved
EndEvent_0zj88y0 End EndEvent_0zj88y0 End ✅ Preserved
StartEvent_01840xx Start StartEvent_01840xx Start ✅ Preserved
Grant loan Task_0v4gadf Service Task Grant loan Task_0v4gadf Service Task ✅ Preserved
Reject loan request Task_0j0sjlk Service Task Reject loan request Task_0j0sjlk Service Task ✅ Preserved
TextAnnotation_0u1nkri textAnnotation TextAnnotation_0u1nkri textAnnotation ✅ Preserved
TextAnnotation_0qjs0yj textAnnotation TextAnnotation_0qjs0yj textAnnotation ✅ Preserved
EndEvent_0q9wl5o End EndEvent_0q9wl5o End ✅ Preserved
StartEvent_1 Start StartEvent_1 Start ✅ Preserved
TextAnnotation_0k1pblj textAnnotation TextAnnotation_0k1pblj textAnnotation ✅ Preserved
process-history-custom-variable.bpmn 14 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
Create Variables ServiceTask_1 Service Task Create Variables ServiceTask_1 Service Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
retry-example.bpmn 41 Start StartEvent_1 Start Start StartEvent_1 Start ✅ Preserved
End EndEvent_1wq706h End End EndEvent_1wq706h End ✅ Preserved
Fetch data from the CRM system  service-fetch-data Service Task Fetch data from the CRM system  service-fetch-data Service Task ✅ Preserved
Fetch address data from CRM system service-fetch-address Service Task Fetch address data from CRM system service-fetch-address Service Task ✅ Preserved
Send customer data to the ERP system service-send-data Service Task Send customer data to the ERP system service-send-data Service Task ✅ Preserved
Add address data in the ERP system service-add-address Service Task Add address data in the ERP system service-add-address Service Task ✅ Preserved
synchronousServiceInvocation.bpmn 20 Start StartEvent_1 Start Start StartEvent_1 Start ✅ Preserved
Wait State Before waitStateBefore User Task Wait State Before waitStateBefore User Task ✅ Preserved
Synchronous Service Task ServiceTask_1 Service Task Synchronous Service Task ServiceTask_1 Service Task ✅ Preserved
Wait State After waitStateAfter User Task Wait State After waitStateAfter User Task ✅ Preserved
End EndEvent_1 End End EndEvent_1 End ✅ Preserved
create-customer-rating.bpmn 32 Customer Data Sumitted StartEvent_1 Start Customer Data Sumitted StartEvent_1 Start ✅ Preserved
Calculate Rating ServiceTask_1 Service Task Calculate Rating ServiceTask_1 Service Task ✅ Preserved
Rating calculated? ExclusiveGateway_1 Exclusive Gateway Rating calculated? ExclusiveGateway_1 Exclusive Gateway ✅ Preserved
Calculate Rating Manually UserTask_1 User Task Calculate Rating Manually UserTask_1 User Task ✅ Preserved
ExclusiveGateway_2 Exclusive Gateway ExclusiveGateway_2 Exclusive Gateway ✅ Preserved
Process Rating ServiceTask_2 Service Task Process Rating ServiceTask_2 Service Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
SpringExpressionResolvingTest.testResolveBeanFromJobExecutor.bpmn 14 Start theStart Start Start theStart Start ✅ Preserved
End endevent1 End End endevent1 End ✅ Preserved
Service Task servicetask1 Service Task Service Task servicetask1 Service Task ✅ Preserved
setAccountName.bpmn 14 Start StartEvent Start Start StartEvent Start ✅ Preserved
End EndEvent_1t5qdfu End End EndEvent_1t5qdfu End ✅ Preserved
Set account name SetAccountNameServiceTask Service Task Set account name SetAccountNameServiceTask Service Task ✅ Preserved
tenant2_process.bpmn 17 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
user task UserTask_0ip48n0 User Task user task UserTask_0ip48n0 User Task ✅ Preserved
tenant-aware service task ServiceTask_0dsnjuy Service Task tenant-aware service task ServiceTask_0dsnjuy Service Task ✅ Preserved
feature.bpmn 26 Create Feature Request StartEvent_1 Start Create Feature Request StartEvent_1 Start ✅ Preserved
Accept Feature Request? ExclusiveGateway_1 Exclusive Gateway Accept Feature Request? ExclusiveGateway_1 Exclusive Gateway ✅ Preserved
Reject Feature Request ServiceTask_2 Service Task Reject Feature Request ServiceTask_2 Service Task ✅ Preserved
Accept Feature Request ServiceTask_1 Service Task Accept Feature Request ServiceTask_1 Service Task ✅ Preserved
Handle Feature Request UserTask_1 User Task Handle Feature Request UserTask_1 User Task ✅ Preserved
bpmnParseListenerOnUserTask.bpmn 12 Start StartEvent_1 Start Start StartEvent_1 Start ✅ Preserved
End EndEvent_1ea8dnn End End EndEvent_1ea8dnn End ✅ Preserved
User Task 1 Task_1i9jsnp User Task User Task 1 Task_1i9jsnp User Task ✅ Preserved
User Task 2 Task_01v3a6u User Task User Task 2 Task_01v3a6u User Task ✅ Preserved
message_start_process.bpmn 19 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
Wait in Message Process UserTask_1 User Task Wait in Message Process UserTask_1 User Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
exampleProcess.bpmn 9 StartEvent_1 Start StartEvent_1 Start ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
Example User Task UserTask_14494ua User Task Example User Task UserTask_14494ua User Task ✅ Preserved
dataformat-demo.bpmn 40 Customer attributes entered StartEvent_1 Start Customer attributes entered StartEvent_1 Start ✅ Preserved
Select XML or Json Task_1vjuj1c User Task Select XML or Json Task_1vjuj1c User Task ✅ Preserved
Dataformat? ExclusiveGateway_06znf1b Exclusive Gateway Dataformat? ExclusiveGateway_06znf1b Exclusive Gateway ✅ Preserved
Create customer as Xml Task_03zh96w Service Task Create customer as Xml Task_03zh96w Service Task ✅ Preserved
Customer converted EndEvent_1nrs79a End Customer converted EndEvent_1nrs79a End ✅ Preserved
ExclusiveGateway_0tj5ibz Exclusive Gateway ExclusiveGateway_0tj5ibz Exclusive Gateway ✅ Preserved
Create customer as Json Task_1x6a2xs Service Task Create customer as Json Task_1x6a2xs Service Task ✅ Preserved
Log customer Task_1p179ep Service Task Log customer Task_1p179ep Service Task ✅ Preserved
invoicePayment.bpmn 40 Invoice Receipt StartEvent_1 Start Invoice Receipt StartEvent_1 Start ✅ Preserved
Pay Invoice Task_16y91ka User Task Pay Invoice Task_16y91ka User Task ✅ Preserved
Invoice Paid EndEvent_1ug8ljt End Invoice Paid EndEvent_1ug8ljt End ✅ Preserved
Unspecified Amount BoundaryEvent_18unjdv Boundary Event Unspecified Amount BoundaryEvent_18unjdv Boundary Event ✅ Preserved
Invoice Archived EndEvent_1ga7c7t End Invoice Archived EndEvent_1ga7c7t End ✅ Preserved
Archive Invoice Task_1a2twqz User Task Archive Invoice Task_1a2twqz User Task ✅ Preserved
Inform Supervisor Task_0q869n2 User Task Inform Supervisor Task_0q869n2 User Task ✅ Preserved
Invoice Escalated EndEvent_1irlotk End Invoice Escalated EndEvent_1irlotk End ✅ Preserved
Suspicous sender BoundaryEvent_1uy9o9h Boundary Event Suspicous sender BoundaryEvent_1uy9o9h Boundary Event ✅ Preserved
EjbExpressionResolvingTest.testResolveBean.bpmn 14 Start theStart Start Start theStart Start ✅ Preserved
End endevent1 End End endevent1 End ✅ Preserved
Service Task servicetask1 Service Task Service Task servicetask1 Service Task ✅ Preserved
invokeRestService.bpmn 23 start with date StartEvent_1 Start start with date StartEvent_1 Start ✅ Preserved
Check if date is holiday ServiceTask_1 Service Task Check if date is holiday ServiceTask_1 Service Task ✅ Preserved
ExclusiveGateway_1 Exclusive Gateway ExclusiveGateway_1 Exclusive Gateway ✅ Preserved
Pack for holiday UserTask_1 User Task Pack for holiday UserTask_1 User Task ✅ Preserved
Pack for work UserTask_2 User Task Pack for work UserTask_2 User Task ✅ Preserved
EndEvent_1 End EndEvent_1 End ✅ Preserved
EndEvent_2 End EndEvent_2 End ✅ Preserved
TOTAL NODES ANALYZED: 229
Source Nodes: 229 → Migrated Nodes: 229 Diff: 0
Preserved  |  🔄 Changed  |  🔵 Transformed  |  🟠 Review Required  |  🔴 Verify Required  |  Removed  |  New Node Added
📄 xquery-example.bpmn ⚠️ With Warnings Simple
XQuery Example Nodes: 3 Transforms: 1 Warnings: 1 Special: 1 Delegates: 0
Process ID: xquery-example  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: XQuery Example
🔵 Special Migrations (Camunda 8.9)
📌 Script Task → Job Worker
Node: convert input (ScriptTask_1)
Original: Script Tasks with JavaScript/Groovy/Python are NOT supported natively in Camunda 8.9
Converted: Converted to Service Task with Job Worker (zeebe:taskDefinition type="script")
Reason: Camunda 8.9 only supports FEEL scripts natively. Non-FEEL scripts must be extracted to Job Workers.
Recommendation: Extract script logic to a Zeebe Job Worker or convert to FEEL expression
Camunda 8 Way: FEEL expressions for simple logic, Job Workers for complex logic
Status: Completed - Needs Worker
Script Language: javascript
✅ Improvement Suggestions
[CRITICAL] Script Task 'convert input' needs Job Worker extraction
💡 Create a Zeebe Job Worker for the script logic
🏗️ Camunda 8 Way: Implement as @JobWorker in Spring Boot or plain Java worker
📋 Source BPMN
✅ Converted BPMN
🔵 Transformations in this BPMN
Script Task 'convert input' → Job Worker (language: javascript) Converted
Reason: Auto-converted for Camunda 8.9 compatibility
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 give input Start Start ✅ Success
2 -- (Start) ScriptTask_1 convert input Script Task Script Task ✅ Success
3 -- (Start) EndEvent_1 show output End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: Script Task 'convert input' uses javascript
💡 Recommendation: Extract to Job Worker or convert to FEEL
📄 invoiceApproval.bpmn ⚠️ With Warnings Simple
Camunda Forms Quickstart Nodes: 3 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: camundaFormsQuickstart  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Camunda Forms Quickstart
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Approve Invoice ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Invoice Received Start Start ✅ Success
2 -- (Start) EndEvent_1 Invoice Processed End End ✅ Success
3 -- (Start) UserTask_1 Approve Invoice User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Approve Invoice' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 camunda-testing-job-announcement.bpmn ⚠️ With Warnings Medium
unnamed Nodes: 22 Transforms: 0 Warnings: 4 Special: 0 Delegates: 0
Process ID: camunda-testing-job-announcement  |  Version: Camunda 8.9.0 Complexity: Medium ⚠️ Missing Process Name
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
[MEDIUM] 4 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
review Review job role description ❌ No
edit Describe job role ❌ No
correct Improve job role description ❌ No
publish Publish announcement ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) LaneSet_0938wst laneSet laneSet ✅ Success
2 -- (Start) Lane_105il6x Automated lane lane ✅ Success
3 -- (Start) flowNodeRef flowNodeRef ✅ Success
4 -- (Start) flowNodeRef flowNodeRef ✅ Success
5 -- (Start) flowNodeRef flowNodeRef ✅ Success
6 -- (Start) flowNodeRef flowNodeRef ✅ Success
7 -- (Start) Lane_0sb6j56 Management lane lane ✅ Success
8 -- (Start) flowNodeRef flowNodeRef ✅ Success
9 -- (Start) flowNodeRef flowNodeRef ✅ Success
10 -- (Start) Lane_1klekz5 HR lane lane ✅ Success
11 -- (Start) flowNodeRef flowNodeRef ✅ Success
12 -- (Start) flowNodeRef flowNodeRef ✅ Success
13 -- (Start) flowNodeRef flowNodeRef ✅ Success
14 -- (Start) Event_0nt3pjb New open position Start Start ✅ Success
15 -- (Start) mail Send confirmation Service Task Service Task ✅ Success
16 -- (Start) Event_194gsd3 New position announced End End ✅ Success
17 -- (Start) publication Execute announcement Call Activity Call Activity ✅ Success
18 -- (Start) review Review job role description User Task User Task ✅ Success
19 -- (Start) Gateway_0o79ay3 OK? Exclusive Gateway Exclusive Gateway ✅ Success
20 -- (Start) edit Describe job role User Task User Task ✅ Success
21 -- (Start) correct Improve job role description User Task User Task ✅ Success
22 -- (Start) publish Publish announcement User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Review job role description' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Describe job role' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Improve job role description' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Publish announcement' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 react-example.bpmn ⚠️ With Warnings Simple
React Example Nodes: 5 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: reactExample  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: React Example
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
Task_1a9adlo Approve Invoice ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Invoice Received Start Start ✅ Success
2 -- (Start) Task_1a9adlo Approve Invoice User Task User Task ✅ Success
3 -- (Start) EndEvent_0fmx4bw Invoice not processed End End ✅ Success
4 -- (Start) ExclusiveGateway_0kzw7nc Invoice Approved? Exclusive Gateway Exclusive Gateway ✅ Success
5 -- (Start) EndEvent_0zc07k5 Invoice Processed End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Approve Invoice' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 xslt-example.bpmn ⚠️ With Warnings Simple
XSLT Example Nodes: 3 Transforms: 1 Warnings: 1 Special: 1 Delegates: 0
Process ID: xslt-example  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: XSLT Example
🔵 Special Migrations (Camunda 8.9)
📌 Script Task → Job Worker
Node: convert input (ScriptTask_1)
Original: Script Tasks with JavaScript/Groovy/Python are NOT supported natively in Camunda 8.9
Converted: Converted to Service Task with Job Worker (zeebe:taskDefinition type="script")
Reason: Camunda 8.9 only supports FEEL scripts natively. Non-FEEL scripts must be extracted to Job Workers.
Recommendation: Extract script logic to a Zeebe Job Worker or convert to FEEL expression
Camunda 8 Way: FEEL expressions for simple logic, Job Workers for complex logic
Status: Completed - Needs Worker
Script Language: javascript
✅ Improvement Suggestions
[CRITICAL] Script Task 'convert input' needs Job Worker extraction
💡 Create a Zeebe Job Worker for the script logic
🏗️ Camunda 8 Way: Implement as @JobWorker in Spring Boot or plain Java worker
📋 Source BPMN
✅ Converted BPMN
🔵 Transformations in this BPMN
Script Task 'convert input' → Job Worker (language: javascript) Converted
Reason: Auto-converted for Camunda 8.9 compatibility
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 give input Start Start ✅ Success
2 -- (Start) ScriptTask_1 convert input Script Task Script Task ✅ Success
3 -- (Start) EndEvent_1 show output End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: Script Task 'convert input' uses javascript
💡 Recommendation: Extract to Job Worker or convert to FEEL
📄 process-history-full.bpmn ✅ Success Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 1
Process ID: process-history-full  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.CreateVariablesDelegate Create Variables
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) ServiceTask_1 Create Variables Service Task Service Task ✅ Success
3 -- (Start) EndEvent_1 End End ✅ Success
📄 process.bpmn ⚠️ With Warnings Simple
Customer Data Process Nodes: 8 Transforms: 0 Warnings: 3 Special: 0 Delegates: 1
Process ID: customerDataProcess  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Customer Data Process
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.JsonJavaDelegate Validate customer JsonJavaDelegate JsonJavaDelegate
✅ Improvement Suggestions
[MEDIUM] 3 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Approve customer ❌ No
UserTask_3 Under 21 ❌ No
UserTask_2 Over 21 ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Customer entered Start Start ✅ Success
2 -- (Start) UserTask_1 Approve customer User Task User Task ✅ Success
3 -- (Start) ExclusiveGateway_1 Customer age? Exclusive Gateway Exclusive Gateway ✅ Success
4 -- (Start) UserTask_3 Under 21 User Task User Task ✅ Success
5 -- (Start) UserTask_2 Over 21 User Task User Task ✅ Success
6 -- (Start) EndEvent_2 Old customer validated End End ✅ Success
7 -- (Start) EndEvent_3 Young customer vaildated End End ✅ Success
8 -- (Start) Task_0n2pfas Validate customer Service Task Service Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Approve customer' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Under 21' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Over 21' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 TwitterDemoProcess.bpmn ⚠️ With Warnings Medium
TwitterDemoProcess Nodes: 7 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: TwitterDemoProcess  |  Version: Camunda 8.9.0 Complexity: Medium Process Name: TwitterDemoProcess
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
user_task_review_tweet Review Tweet ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) service_task_send_rejection_notification Send rejection notification Service Task Service Task ✅ Success
2 -- (Start) gateway_approved Approved? Exclusive Gateway Exclusive Gateway ✅ Success
3 -- (Start) gateway_join Join Exclusive Gateway Exclusive Gateway ✅ Success
4 -- (Start) service_task_publish_on_twitter Publish on Twitter Service Task Service Task ✅ Success
5 -- (Start) end_event_tweet_handled Tweet handled End End ✅ Success
6 -- (Start) start_event_new_tweet Tweet written Start Start ✅ Success
7 -- (Start) user_task_review_tweet Review Tweet User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Review Tweet' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 process-history-activity.bpmn ✅ Success Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 1
Process ID: process-history-activity  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.CreateVariablesDelegate Create Variables
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) ServiceTask_1 Create Variables Service Task Service Task ✅ Success
3 -- (Start) EndEvent_1 End End ✅ Success
📄 tenant1_process.bpmn ⚠️ With Warnings Simple
unnamed Nodes: 4 Transforms: 0 Warnings: 1 Special: 0 Delegates: 1
Process ID: example-process  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.tutorial.multitenancy.TenantAwareServiceTask tenant-aware service task TenantAwareServiceTask, as TenantAwareServiceTask, as
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_0ip48n0 user task ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) EndEvent_1 End End ✅ Success
3 -- (Start) UserTask_0ip48n0 user task User Task User Task ✅ Success
4 -- (Start) ServiceTask_0dsnjuy tenant-aware service task Service Task Service Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'user task' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 sample.bpmn ⚠️ With Warnings Simple
Sample Nodes: 3 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: Sample  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Sample
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 do something ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) UserTask_1 do something User Task User Task ✅ Success
3 -- (Start) EndEvent_1 End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'do something' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 camunda-testing-job-announcement-publication.bpmn ✅ Success Medium
Job Announcement Publication (Subprocess) Nodes: 11 Transforms: 0 Warnings: 0 Special: 0 Delegates: 0
Process ID: camunda-testing-job-announcement-publication  |  Version: Camunda 8.9.0 Complexity: Medium Process Name: Job Announcement Publication (Subprocess)
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) Event_0izgki4 Start Start ✅ Success
2 -- (Start) publish_announcement_website Publish announcement on website Service Task Service Task ✅ Success
3 -- (Start) Gateway_0z7rp9m Parallel Gateway Parallel Gateway ✅ Success
4 -- (Start) Gateway_0c0k10n Chose Twitter? Exclusive Gateway Exclusive Gateway ✅ Success
5 -- (Start) publish_announcement_twitter Publish announcement on Twitter Service Task Service Task ✅ Success
6 -- (Start) Gateway_030yxlx Exclusive Gateway Exclusive Gateway ✅ Success
7 -- (Start) Gateway_1loiva2 Parallel Gateway Parallel Gateway ✅ Success
8 -- (Start) Gateway_0j1qkse Exclusive Gateway Exclusive Gateway ✅ Success
9 -- (Start) publish_announcement_facebook Publish announcement on Facebook Service Task Service Task ✅ Success
10 -- (Start) Gateway_1bdrrsh Chose Facebook? Exclusive Gateway Exclusive Gateway ✅ Success
11 -- (Start) Event_087qk1c End End ✅ Success
📄 mainProcess.bpmn ✅ Success Simple
Main Process Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 0
Process ID: mainProcess  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Main Process
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) CallActivity_0ahffuc subprocess Call Activity Call Activity ✅ Success
3 -- (Start) EndEvent_0pf67o7 End End ✅ Success
📄 loanApproval.bpmn ⚠️ With Warnings Simple
Generated Forms Quickstart Nodes: 3 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: generatedFormsQuickstart  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Generated Forms Quickstart
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Approve Request ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Loan Request Received Start Start ✅ Success
2 -- (Start) EndEvent_1 Done End End ✅ Success
3 -- (Start) UserTask_1 Approve Request User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Approve Request' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 SpringExpressionResolvingTest.testResolveBean.bpmn ✅ Success Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 0
Process ID: testResolveBean  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) theStart Start Start Start ✅ Success
2 -- (Start) endevent1 End End End ✅ Success
3 -- (Start) servicetask1 Service Task Service Task Service Task ✅ Success
📄 loanRequest.bpmn ⚠️ With Warnings Simple
unnamed Nodes: 5 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: loanRequest  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_0eay4mh Approve Loan ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Loan Request Received Start Start ✅ Success
2 -- (Start) EndEvent_1y4bj2w Loan Approved End End ✅ Success
3 -- (Start) ServiceTask_1tvk8uj Calculate Interest Service Task Service Task ✅ Success
4 -- (Start) UserTask_0eay4mh Approve Loan User Task User Task ✅ Success
5 -- (Start) TextAnnotation_1xesufm textAnnotation textAnnotation ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Approve Loan' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 instantiating_process.bpmn ⚠️ With Warnings Simple
unnamed Nodes: 4 Transforms: 0 Warnings: 1 Special: 0 Delegates: 1
Process ID: Instantiating_Process  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.event.message.InstantiateProcessByMessageDelegate Send Message http-connector http-connector
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Wait in Instantiating Process ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) ServiceTask_1 Send Message Service Task Service Task ✅ Success
3 -- (Start) UserTask_1 Wait in Instantiating Process User Task User Task ✅ Success
4 -- (Start) EndEvent_1 End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Wait in Instantiating Process' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 bpmnParseListener.bpmn ✅ Success Simple
BpmnParseListener Nodes: 4 Transforms: 0 Warnings: 0 Special: 0 Delegates: 2
Process ID: bpmnParseListener  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: BpmnParseListener
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.delegate.ServiceTaskOneDelegate ServiceTask 1 ServiceTaskOneDelegate, , as ServiceTaskOneDelegate, , as
2 org.camunda.bpm.example.delegate.ServiceTaskTwoDelegate ServiceTask 2 , ServiceTaskTwoDelegate, as , ServiceTaskTwoDelegate, as
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start Start ✅ Success
2 -- (Start) ServiceTask_1 ServiceTask 1 Service Task Service Task ✅ Success
3 -- (Start) ServiceTask_2 ServiceTask 2 Service Task Service Task ✅ Success
4 -- (Start) EndEvent_1 End End End ✅ Success
📄 waitingState.bpmn ⚠️ With Warnings Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: waitingProcess  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
Task_0xibf8v Wating state ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) EndEvent_0nrd2ju End End ✅ Success
3 -- (Start) Task_0xibf8v Wating state User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Wating state' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 invokeSoapService.bpmn ⚠️ With Warnings Simple
Get Weather Forecast Nodes: 7 Transforms: 0 Warnings: 3 Special: 0 Delegates: 0
Process ID: weatherForecast  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Get Weather Forecast
✅ Improvement Suggestions
[MEDIUM] 2 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_2 Pack for cold weather ❌ No
UserTask_1 Pack for warm weather ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) ServiceTask_2 Get Weather Forecast (Soap) Service Task Service Task ✅ Success
3 -- (Start) ExclusiveGateway_1 Exclusive Gateway Exclusive Gateway ✅ Success
4 -- (Start) EndEvent_1 End End ✅ Success
5 -- (Start) UserTask_2 Pack for cold weather User Task User Task ✅ Success
6 -- (Start) EndEvent_2 End End ✅ Success
7 -- (Start) UserTask_1 Pack for warm weather User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: Service Task 'Get Weather Forecast (Soap)' has no delegate
💡 Recommendation: Create a Zeebe Job Worker
📌 Unknown
Issue: User Task 'Pack for cold weather' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Pack for warm weather' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 support.bpmn ⚠️ With Warnings Medium
Handle Support Ticket Nodes: 9 Transforms: 0 Warnings: 1 Special: 0 Delegates: 3
Process ID: Process_Support  |  Version: Camunda 8.9.0 Complexity: Medium Process Name: Handle Support Ticket
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.quickstart.LoggerDelegate Close ticket
2 org.camunda.bpm.quickstart.LoggerDelegate Escalate
3 org.camunda.bpm.quickstart.LoggerDelegate Respond to customer
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Handle Support Ticket ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Select Support Ticket Start Start ✅ Success
2 -- (Start) UserTask_1 Handle Support Ticket User Task User Task ✅ Success
3 -- (Start) EndEvent_3 End End ✅ Success
4 -- (Start) ExclusiveGateway_1 How To Handle Support Ticket? Exclusive Gateway Exclusive Gateway ✅ Success
5 -- (Start) EndEvent_1 End End ✅ Success
6 -- (Start) EndEvent_2 End End ✅ Success
7 -- (Start) ServiceTask_1 Close ticket Service Task Service Task ✅ Success
8 -- (Start) ServiceTask_2 Escalate Service Task Service Task ✅ Success
9 -- (Start) ServiceTask_3 Respond to customer Service Task Service Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Handle Support Ticket' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 order-handling.bpmn ✅ Success Medium
Order Process Nodes: 9 Transforms: 0 Warnings: 0 Special: 1 Delegates: 0
Process ID: Order_Process  |  Version: Camunda 8.9.0 Complexity: Medium Process Name: Order Process
🔵 Special Migrations (Camunda 8.9)
📌 Conditional Event JUEL → FEEL
Node: Archive invoice? (BoundaryEvent_1y1bvad)
Original: Conditional Events are NEW in Camunda 8.9 (first-class support introduced)
Converted: Preserved as Conditional Event with JUEL expressions converted to FEEL
Reason: Conditional Events have first-class support in Camunda 8.9. JUEL expressions must be converted to FEEL.
Recommendation: Verify FEEL expressions work correctly in the redesigned BPMN
Camunda 8 Way: FEEL expressions with zeebe:conditionalFilter extension
Status: Completed - Verify FEEL Expressions
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) Task_1nbdup3 Sub Process Sub Process ✅ Success
2 -- (Start) StartEvent_1iul9gy Start Start ✅ Success
3 -- (Start) EndEvent_036eexy End End ✅ Success
4 -- (Start) Task_06z99p1 Create Invoice Service Task Service Task ✅ Success
5 -- (Start) EndEvent_00asnpf End End ✅ Success
6 -- (Start) EndEvent_0q2wrcp End End ✅ Success
7 -- (Start) StartEvent_1 Order received Start Start ✅ Success
8 -- (Start) BoundaryEvent_1y1bvad Archive invoice? Boundary Event Boundary Event ✅ Success
9 -- (Start) Task_1yjkccw Archive invoice Service Task Service Task ✅ Success
📄 testProcess.bpmn ⚠️ With Warnings Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: testProcess  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Handle Request ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) UserTask_1 Handle Request User Task User Task ✅ Success
3 -- (Start) EndEvent_1 End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Handle Request' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 process-history-none.bpmn ✅ Success Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 1
Process ID: process-history-none  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.CreateVariablesDelegate Create Variables
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) ServiceTask_1 Create Variables Service Task Service Task ✅ Success
3 -- (Start) EndEvent_1 End End ✅ Success
📄 taskAssignmentEmail.bpmn ⚠️ With Warnings Simple
Task Assignment Email Nodes: 3 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: TaskAssignmentEmail  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Task Assignment Email
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 do something ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Event Start Start ✅ Success
2 -- (Start) UserTask_1 do something User Task User Task ✅ Success
3 -- (Start) EndEvent_2 End Event End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'do something' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 asynchronousServiceInvocation.bpmn ⚠️ With Warnings Simple
Asynchronous Service Invocation Nodes: 5 Transforms: 0 Warnings: 2 Special: 0 Delegates: 1
Process ID: asynchronousServiceInvocation  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Asynchronous Service Invocation
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.quickstart.servicetask.invocation.AsynchronousServiceTask Asynchronous Service Task
✅ Improvement Suggestions
[MEDIUM] 2 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
waitStateBefore Wait State Before ❌ No
waitStateAfter Wait State After ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start Start ✅ Success
2 -- (Start) waitStateBefore Wait State Before User Task User Task ✅ Success
3 -- (Start) serviceTaskActivity Asynchronous Service Task Service Task Service Task ✅ Success
4 -- (Start) waitStateAfter Wait State After User Task User Task ✅ Success
5 -- (Start) EndEvent_1 End End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Wait State Before' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Wait State After' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 subProcess.bpmn ⚠️ With Warnings Simple
Sub-Process (tenant-specific) Nodes: 4 Transforms: 0 Warnings: 2 Special: 0 Delegates: 0
Process ID: subProcess  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Sub-Process (tenant-specific)
✅ Improvement Suggestions
[MEDIUM] 2 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_17fr4ij task in tenant specific subprocess ❌ No
UserTask_0wbry7k another task ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) UserTask_17fr4ij task in tenant specific subprocess User Task User Task ✅ Success
3 -- (Start) UserTask_0wbry7k another task User Task User Task ✅ Success
4 -- (Start) EndEvent_001dp5e End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'task in tenant specific subprocess' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'another task' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 loan-granting.bpmn ✅ Success Medium
Granting Loans Nodes: 13 Transforms: 0 Warnings: 0 Special: 0 Delegates: 0
Process ID: loan_process  |  Version: Camunda 8.9.0 Complexity: Medium Process Name: Granting Loans
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) Task_1lvjtd4 Check credit score Service Task Service Task ✅ Success
2 -- (Start) SubProcess_16kr5xn Decide if a loan is granted Sub Process Sub Process ✅ Success
3 -- (Start) ExclusiveGateway_12xhuxz Exclusive Gateway Exclusive Gateway ✅ Success
4 -- (Start) EndEvent_1alwvtl End End ✅ Success
5 -- (Start) EndEvent_0zj88y0 End End ✅ Success
6 -- (Start) StartEvent_01840xx Start Start ✅ Success
7 -- (Start) Task_0v4gadf Grant loan Service Task Service Task ✅ Success
8 -- (Start) Task_0j0sjlk Reject loan request Service Task Service Task ✅ Success
9 -- (Start) TextAnnotation_0u1nkri textAnnotation textAnnotation ✅ Success
10 -- (Start) TextAnnotation_0qjs0yj textAnnotation textAnnotation ✅ Success
11 -- (Start) EndEvent_0q9wl5o End End ✅ Success
12 -- (Start) StartEvent_1 Start Start ✅ Success
13 -- (Start) TextAnnotation_0k1pblj textAnnotation textAnnotation ✅ Success
📄 process-history-custom-variable.bpmn ✅ Success Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 1
Process ID: process-history-custom-variable  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.CreateVariablesDelegate Create Variables
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) ServiceTask_1 Create Variables Service Task Service Task ✅ Success
3 -- (Start) EndEvent_1 End End ✅ Success
📄 retry-example.bpmn ✅ Success Medium
unnamed Nodes: 6 Transforms: 0 Warnings: 0 Special: 0 Delegates: 4
Process ID: process  |  Version: Camunda 8.9.0 Complexity: Medium ⚠️ Missing Process Name
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.delegate.ServiceTaskOneDelegate Fetch data from the CRM system  ServiceTaskOneDelegate, , as ServiceTaskOneDelegate, , as
2 org.camunda.bpm.example.delegate.ServiceTaskOneDelegate Fetch address data from CRM system ServiceTaskOneDelegate, , as ServiceTaskOneDelegate, , as
3 org.camunda.bpm.example.delegate.ServiceTaskTwoDelegate Send customer data to the ERP system , ServiceTaskTwoDelegate, as , ServiceTaskTwoDelegate, as
4 org.camunda.bpm.example.delegate.ServiceTaskTwoDelegate Add address data in the ERP system , ServiceTaskTwoDelegate, as , ServiceTaskTwoDelegate, as
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start Start ✅ Success
2 -- (Start) EndEvent_1wq706h End End End ✅ Success
3 -- (Start) service-fetch-data Fetch data from the CRM system  Service Task Service Task ✅ Success
4 -- (Start) service-fetch-address Fetch address data from CRM system Service Task Service Task ✅ Success
5 -- (Start) service-send-data Send customer data to the ERP system Service Task Service Task ✅ Success
6 -- (Start) service-add-address Add address data in the ERP system Service Task Service Task ✅ Success
📄 synchronousServiceInvocation.bpmn ⚠️ With Warnings Simple
Synchronous Service Invocation Nodes: 5 Transforms: 0 Warnings: 2 Special: 0 Delegates: 1
Process ID: synchronousServiceInvocation  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Synchronous Service Invocation
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.quickstart.servicetask.invocation.sync.SynchronousServiceTask Synchronous Service Task
✅ Improvement Suggestions
[MEDIUM] 2 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
waitStateBefore Wait State Before ❌ No
waitStateAfter Wait State After ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start Start ✅ Success
2 -- (Start) waitStateBefore Wait State Before User Task User Task ✅ Success
3 -- (Start) ServiceTask_1 Synchronous Service Task Service Task Service Task ✅ Success
4 -- (Start) waitStateAfter Wait State After User Task User Task ✅ Success
5 -- (Start) EndEvent_1 End End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Wait State Before' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Wait State After' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 create-customer-rating.bpmn ⚠️ With Warnings Medium
Create Customer Rating (Embedded Forms with Serializable java Objects Example) Nodes: 7 Transforms: 0 Warnings: 1 Special: 0 Delegates: 2
Process ID: createRating  |  Version: Camunda 8.9.0 Complexity: Medium Process Name: Create Customer Rating (Embedded Forms with Serializable java Objects Example)
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.example.usertask.embedded.serialized.delegate.CalculateRating Calculate Rating http-connector, as http-connector, as
2 org.camunda.bpm.example.usertask.embedded.serialized.delegate.ProcessRating Process Rating LoggerDelegate, as LoggerDelegate, as
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Calculate Rating Manually ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Customer Data Sumitted Start Start ✅ Success
2 -- (Start) ServiceTask_1 Calculate Rating Service Task Service Task ✅ Success
3 -- (Start) ExclusiveGateway_1 Rating calculated? Exclusive Gateway Exclusive Gateway ✅ Success
4 -- (Start) UserTask_1 Calculate Rating Manually User Task User Task ✅ Success
5 -- (Start) ExclusiveGateway_2 Exclusive Gateway Exclusive Gateway ✅ Success
6 -- (Start) ServiceTask_2 Process Rating Service Task Service Task ✅ Success
7 -- (Start) EndEvent_1 End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Calculate Rating Manually' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 SpringExpressionResolvingTest.testResolveBeanFromJobExecutor.bpmn ✅ Success Simple
TestDeployProcessArchive Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 0
Process ID: testResolveBeanFromJobExecutor  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: TestDeployProcessArchive
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) theStart Start Start Start ✅ Success
2 -- (Start) endevent1 End End End ✅ Success
3 -- (Start) servicetask1 Service Task Service Task Service Task ✅ Success
📄 setAccountName.bpmn ✅ Success Simple
setAccountNameProcess Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 0
Process ID: setAccountNameProcess  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: setAccountNameProcess
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent Start Start Start ✅ Success
2 -- (Start) EndEvent_1t5qdfu End End End ✅ Success
3 -- (Start) SetAccountNameServiceTask Set account name Service Task Service Task ✅ Success
📄 tenant2_process.bpmn ⚠️ With Warnings Simple
unnamed Nodes: 4 Transforms: 0 Warnings: 1 Special: 0 Delegates: 1
Process ID: example-process  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.tutorial.multitenancy.TenantAwareServiceTask tenant-aware service task TenantAwareServiceTask, as TenantAwareServiceTask, as
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_0ip48n0 user task ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) EndEvent_1 End End ✅ Success
3 -- (Start) UserTask_0ip48n0 user task User Task User Task ✅ Success
4 -- (Start) ServiceTask_0dsnjuy tenant-aware service task Service Task Service Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'user task' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 feature.bpmn ⚠️ With Warnings Simple
Handle Feature Request Nodes: 5 Transforms: 0 Warnings: 1 Special: 0 Delegates: 2
Process ID: Process_Feature  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Handle Feature Request
📋 Java Delegate Usage & Worker Mapping
S.No Java Delegate Used In Task Plain Java Workers Spring Boot Workers
1 org.camunda.bpm.quickstart.LoggerDelegate Reject Feature Request
2 org.camunda.bpm.quickstart.LoggerDelegate Accept Feature Request
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Handle Feature Request ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Create Feature Request Start Start ✅ Success
2 -- (Start) ExclusiveGateway_1 Accept Feature Request? Exclusive Gateway Exclusive Gateway ✅ Success
3 -- (Start) ServiceTask_2 Reject Feature Request Service Task Service Task ✅ Success
4 -- (Start) ServiceTask_1 Accept Feature Request Service Task Service Task ✅ Success
5 -- (Start) UserTask_1 Handle Feature Request User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Handle Feature Request' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 bpmnParseListenerOnUserTask.bpmn ⚠️ With Warnings Simple
bpmnParseListenerOnUserTask Nodes: 4 Transforms: 0 Warnings: 2 Special: 0 Delegates: 0
Process ID: bpmnParseListenerOnUserTask  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: bpmnParseListenerOnUserTask
✅ Improvement Suggestions
[MEDIUM] 2 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
Task_1i9jsnp User Task 1 ❌ No
Task_01v3a6u User Task 2 ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start Start ✅ Success
2 -- (Start) EndEvent_1ea8dnn End End End ✅ Success
3 -- (Start) Task_1i9jsnp User Task 1 User Task User Task ✅ Success
4 -- (Start) Task_01v3a6u User Task 2 User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'User Task 1' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'User Task 2' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 message_start_process.bpmn ⚠️ With Warnings Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: Message_Start_Process  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Wait in Message Process ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) UserTask_1 Wait in Message Process User Task User Task ✅ Success
3 -- (Start) EndEvent_1 End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Wait in Message Process' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 exampleProcess.bpmn ⚠️ With Warnings Simple
Example Process Nodes: 3 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: exampleProcess  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Example Process
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_14494ua Example User Task ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Start Start ✅ Success
2 -- (Start) EndEvent_1 End End ✅ Success
3 -- (Start) UserTask_14494ua Example User Task User Task User Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Example User Task' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 dataformat-demo.bpmn ⚠️ With Warnings Medium
Dataformat demo Nodes: 8 Transforms: 0 Warnings: 1 Special: 0 Delegates: 0
Process ID: DataformatDemoProcess  |  Version: Camunda 8.9.0 Complexity: Medium Process Name: Dataformat demo
✅ Improvement Suggestions
[MEDIUM] 1 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
Task_1vjuj1c Select XML or Json ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Customer attributes entered Start Start ✅ Success
2 -- (Start) Task_1vjuj1c Select XML or Json User Task User Task ✅ Success
3 -- (Start) ExclusiveGateway_06znf1b Dataformat? Exclusive Gateway Exclusive Gateway ✅ Success
4 -- (Start) Task_03zh96w Create customer as Xml Service Task Service Task ✅ Success
5 -- (Start) EndEvent_1nrs79a Customer converted End End ✅ Success
6 -- (Start) ExclusiveGateway_0tj5ibz Exclusive Gateway Exclusive Gateway ✅ Success
7 -- (Start) Task_1x6a2xs Create customer as Json Service Task Service Task ✅ Success
8 -- (Start) Task_1p179ep Log customer Service Task Service Task ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Select XML or Json' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 invoicePayment.bpmn ⚠️ With Warnings Medium
Embedded Forms BPMN Events Nodes: 9 Transforms: 0 Warnings: 3 Special: 1 Delegates: 0
Process ID: embeddedFormsBpmnEvents  |  Version: Camunda 8.9.0 Complexity: Medium Process Name: Embedded Forms BPMN Events
🔵 Special Migrations (Camunda 8.9)
📌 Escalation Event → Escalation Event (with FEEL)
Node: Suspicous sender (BoundaryEvent_1uy9o9h)
Original: Escalation Events ARE FULLY SUPPORTED in Camunda 8.9
Converted: Preserved as Escalation Event with JUEL expressions converted to FEEL
Reason: Camunda 8.9 supports Escalation Events natively as non-critical events. Execution continues at both throw and catch locations.
Recommendation: Review escalation event configurations and FEEL expressions in the redesigned BPMN
Camunda 8 Way: Use Escalation Events with FEEL expressions for non-critical communication
Status: Completed - Preserved with FEEL expressions
✅ Improvement Suggestions
[MEDIUM] 3 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
Task_16y91ka Pay Invoice ❌ No
Task_1a2twqz Archive Invoice ❌ No
Task_0q869n2 Inform Supervisor ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 Invoice Receipt Start Start ✅ Success
2 -- (Start) Task_16y91ka Pay Invoice User Task User Task ✅ Success
3 -- (Start) EndEvent_1ug8ljt Invoice Paid End End ✅ Success
4 -- (Start) BoundaryEvent_18unjdv Unspecified Amount Boundary Event Boundary Event ✅ Success
5 -- (Start) EndEvent_1ga7c7t Invoice Archived End End ✅ Success
6 -- (Start) Task_1a2twqz Archive Invoice User Task User Task ✅ Success
7 -- (Start) Task_0q869n2 Inform Supervisor User Task User Task ✅ Success
8 -- (Start) EndEvent_1irlotk Invoice Escalated End End ✅ Success
9 -- (Start) BoundaryEvent_1uy9o9h Suspicous sender Boundary Event Boundary Event ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: User Task 'Pay Invoice' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Archive Invoice' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Inform Supervisor' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📄 EjbExpressionResolvingTest.testResolveBean.bpmn ✅ Success Simple
unnamed Nodes: 3 Transforms: 0 Warnings: 0 Special: 0 Delegates: 0
Process ID: testResolveBean  |  Version: Camunda 8.9.0 Complexity: Simple ⚠️ Missing Process Name
✅ Improvement Suggestions
[MEDIUM] Process has no meaningful name
💡 Add a descriptive process name for better identification
🏗️ Camunda 8 Way: Use meaningful process names in BPMN
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) theStart Start Start Start ✅ Success
2 -- (Start) endevent1 End End End ✅ Success
3 -- (Start) servicetask1 Service Task Service Task Service Task ✅ Success
📄 invokeRestService.bpmn ⚠️ With Warnings Simple
Get Holiday Nodes: 7 Transforms: 0 Warnings: 3 Special: 0 Delegates: 0
Process ID: holiday  |  Version: Camunda 8.9.0 Complexity: Simple Process Name: Get Holiday
✅ Improvement Suggestions
[MEDIUM] 2 User Task(s) have no forms defined
💡 Create and attach Camunda 8 forms to these user tasks
🏗️ Camunda 8 Way: Use Camunda 8 Forms with zeebe:formDefinition
📋 User Task Form Association
Task ID Task Name Has Form
UserTask_1 Pack for holiday ❌ No
UserTask_2 Pack for work ❌ No
📋 Source BPMN
✅ Converted BPMN
# Parent Node ID Node Name Original Type Converted Type Status
1 -- (Start) StartEvent_1 start with date Start Start ✅ Success
2 -- (Start) ServiceTask_1 Check if date is holiday Service Task Service Task ✅ Success
3 -- (Start) ExclusiveGateway_1 Exclusive Gateway Exclusive Gateway ✅ Success
4 -- (Start) UserTask_1 Pack for holiday User Task User Task ✅ Success
5 -- (Start) UserTask_2 Pack for work User Task User Task ✅ Success
6 -- (Start) EndEvent_1 End End ✅ Success
7 -- (Start) EndEvent_2 End End ✅ Success
⚠️ Warnings - Action Required
📌 Unknown
Issue: Service Task 'Check if date is holiday' has no delegate
💡 Recommendation: Create a Zeebe Job Worker
📌 Unknown
Issue: User Task 'Pack for holiday' has no form
💡 Recommendation: Create and attach a Camunda 8 form
📌 Unknown
Issue: User Task 'Pack for work' has no form
💡 Recommendation: Create and attach a Camunda 8 form

☕ Worker Generation Details

Spring Boot Workers (28)

  • ⚙️ JsonJavaDelegate (type: JsonJavaDelegate)
  • ⚙️ CreateVariablesDelegate (type: )
  • ⚙️ TaskAssignmentListener (type: TaskAssignmentListener)
  • ⚙️ as (type: as)
  • ⚙️ CalculateInterestService (type: CalculateInterestService)
  • ⚙️ ProgressLoggingExecutionListener (type: ProgressLoggingExecutionListener)
  • ⚙️ InformAssigneeTaskListener (type: InformAssigneeTaskListener)
  • ⚙️ ServiceTaskOneDelegate (type: )
  • ⚙️ ServiceTaskOneDelegate (type: ServiceTaskOneDelegate)
  • ⚙️ ServiceTaskTwoDelegate (type: )
  • ⚙️ ServiceTaskTwoDelegate (type: ServiceTaskTwoDelegate)
  • ⚙️ InstantiateProcessByMessageDelegate (type: http-connector)
  • ⚙️ ArchiveInvoiceService (type: ArchiveInvoiceService)
  • ⚙️ ExampleDelegateBean (type: ExampleDelegateBean)
  • ⚙️ ProcessRating (type: LoggerDelegate)
  • ⚙️ CalculateRating (type: http-connector)
  • ⚙️ can (type: can)
  • ⚙️ SayHelloDelegate (type: SayHelloDelegate)
  • ⚙️ RejectionNotificationDelegate (type: RejectionNotificationDelegate)
  • ⚙️ TweetContentDelegate (type: TweetContentDelegate)
  • ⚙️ TweetContentOfflineDelegate (type: TweetContentOfflineDelegate)
  • ⚙️ MyServiceDelegate (type: MyServiceDelegate)
  • ⚙️ StoreOrderItemService (type: StoreOrderItemService)
  • ⚙️ ApprovalServiceDelegate (type: ApprovalServiceDelegate)
  • ⚙️ TenantAwareServiceTask (type: TenantAwareServiceTask)
  • ⚙️ SimpleServiceTask (type: SimpleServiceTask)
  • ⚙️ EjbJavaDelegate (type: EjbJavaDelegate)
  • ⚙️ will (type: will)

Plain Java Workers (28)

  • ⚙️ JsonJavaDelegate (type: JsonJavaDelegate)
  • ⚙️ CreateVariablesDelegate (type: )
  • ⚙️ TaskAssignmentListener (type: TaskAssignmentListener)
  • ⚙️ as (type: as)
  • ⚙️ CalculateInterestService (type: CalculateInterestService)
  • ⚙️ ProgressLoggingExecutionListener (type: ProgressLoggingExecutionListener)
  • ⚙️ InformAssigneeTaskListener (type: InformAssigneeTaskListener)
  • ⚙️ ServiceTaskOneDelegate (type: )
  • ⚙️ ServiceTaskOneDelegate (type: ServiceTaskOneDelegate)
  • ⚙️ ServiceTaskTwoDelegate (type: )
  • ⚙️ ServiceTaskTwoDelegate (type: ServiceTaskTwoDelegate)
  • ⚙️ InstantiateProcessByMessageDelegate (type: http-connector)
  • ⚙️ ArchiveInvoiceService (type: ArchiveInvoiceService)
  • ⚙️ ExampleDelegateBean (type: ExampleDelegateBean)
  • ⚙️ ProcessRating (type: LoggerDelegate)
  • ⚙️ CalculateRating (type: http-connector)
  • ⚙️ can (type: can)
  • ⚙️ SayHelloDelegate (type: SayHelloDelegate)
  • ⚙️ RejectionNotificationDelegate (type: RejectionNotificationDelegate)
  • ⚙️ TweetContentDelegate (type: TweetContentDelegate)
  • ⚙️ TweetContentOfflineDelegate (type: TweetContentOfflineDelegate)
  • ⚙️ MyServiceDelegate (type: MyServiceDelegate)
  • ⚙️ StoreOrderItemService (type: StoreOrderItemService)
  • ⚙️ ApprovalServiceDelegate (type: ApprovalServiceDelegate)
  • ⚙️ TenantAwareServiceTask (type: TenantAwareServiceTask)
  • ⚙️ SimpleServiceTask (type: SimpleServiceTask)
  • ⚙️ EjbJavaDelegate (type: EjbJavaDelegate)
  • ⚙️ will (type: will)

Camunda 7 APIs

✅ Auto-Migrated
  • ✓ org.camunda.bpm.engine.delegate.BpmnError
  • ✓ org.camunda.bpm.engine.delegate.DelegateExecution
  • ✓ org.camunda.bpm.engine.delegate.DelegateTask
  • ✓ org.camunda.bpm.engine.delegate.ExecutionListener
  • ✓ org.camunda.bpm.engine.delegate.JavaDelegate
  • ✓ org.camunda.bpm.engine.delegate.TaskListener
⚠️ Manual Review Required
  • ⚠ org.camunda.bpm.BpmPlatform
  • ⚠ org.camunda.bpm.ProcessEngineService
  • ⚠ org.camunda.bpm.application.PostDeploy
  • ⚠ org.camunda.bpm.application.PreUndeploy
  • ⚠ org.camunda.bpm.application.ProcessApplication
  • ⚠ org.camunda.bpm.application.ProcessApplicationContext
  • ⚠ org.camunda.bpm.application.ProcessApplicationDeploymentInfo
  • ⚠ org.camunda.bpm.application.ProcessApplicationInfo
  • ⚠ org.camunda.bpm.application.ProcessApplicationInterface
  • ⚠ org.camunda.bpm.application.impl.ServletProcessApplication
  • ⚠ org.camunda.bpm.application.impl.event.ProcessApplicationEventParseListener
  • ⚠ org.camunda.bpm.client.ExternalTaskClient
  • ⚠ org.camunda.bpm.client.interceptor.ClientRequestInterceptor
  • ⚠ org.camunda.bpm.client.spring.SpringTopicSubscription
  • ⚠ org.camunda.bpm.client.spring.annotation.EnableExternalTaskClient
  • ⚠ org.camunda.bpm.client.spring.annotation.ExternalTaskSubscription
  • ⚠ org.camunda.bpm.client.spring.event.SubscriptionInitializedEvent
  • ⚠ org.camunda.bpm.client.task.ExternalTaskHandler
  • ⚠ org.camunda.bpm.client.variable.ClientValues
  • ⚠ org.camunda.bpm.cockpit.Cockpit
  • ⚠ org.camunda.bpm.cockpit.db.QueryParameters
  • ⚠ org.camunda.bpm.cockpit.db.QueryService
  • ⚠ org.camunda.bpm.cockpit.plugin.resource.AbstractPluginResource
  • ⚠ org.camunda.bpm.cockpit.plugin.resource.AbstractPluginRootResource
  • ⚠ org.camunda.bpm.cockpit.plugin.sample.SamplePlugin
  • ⚠ org.camunda.bpm.cockpit.plugin.sample.db.ProcessInstanceCountDto
  • ⚠ org.camunda.bpm.cockpit.plugin.sample.resources.SamplePluginRootResource
  • ⚠ org.camunda.bpm.cockpit.plugin.spi.CockpitPlugin
  • ⚠ org.camunda.bpm.cockpit.plugin.spi.impl.AbstractCockpitPlugin
  • ⚠ org.camunda.bpm.cockpit.plugin.test.AbstractCockpitPluginTest
  • ⚠ org.camunda.bpm.cycle.connector.Connector
  • ⚠ org.camunda.bpm.cycle.connector.ConnectorNode
  • ⚠ org.camunda.bpm.cycle.connector.ConnectorNodeType
  • ⚠ org.camunda.bpm.cycle.connector.ContentInformation
  • ⚠ org.camunda.bpm.cycle.entity.ConnectorConfiguration
  • ⚠ org.camunda.bpm.dmn.engine.DmnDecision
  • ⚠ org.camunda.bpm.dmn.engine.DmnDecisionTableResult
  • ⚠ org.camunda.bpm.dmn.engine.DmnEngine
  • ⚠ org.camunda.bpm.dmn.engine.DmnEngineConfiguration
  • ⚠ org.camunda.bpm.dmn.engine.test.DmnEngineRule
  • ⚠ org.camunda.bpm.engine.AuthorizationService
  • ⚠ org.camunda.bpm.engine.CaseService
  • ⚠ org.camunda.bpm.engine.DecisionService
  • ⚠ org.camunda.bpm.engine.ExternalTaskService
  • ⚠ org.camunda.bpm.engine.FilterService
  • ⚠ org.camunda.bpm.engine.FormService
  • ⚠ org.camunda.bpm.engine.HistoryService
  • ⚠ org.camunda.bpm.engine.IdentityService
  • ⚠ org.camunda.bpm.engine.ManagementService
  • ⚠ org.camunda.bpm.engine.ProcessEngine
  • ⚠ org.camunda.bpm.engine.ProcessEngineConfiguration
  • ⚠ org.camunda.bpm.engine.ProcessEngineException
  • ⚠ org.camunda.bpm.engine.ProcessEngines
  • ⚠ org.camunda.bpm.engine.RepositoryService
  • ⚠ org.camunda.bpm.engine.RuntimeService
  • ⚠ org.camunda.bpm.engine.TaskService
  • ⚠ org.camunda.bpm.engine.cdi.BusinessProcess
  • ⚠ org.camunda.bpm.engine.cdi.annotation.StartProcess
  • ⚠ org.camunda.bpm.engine.cdi.impl.ProcessEngineServicesProducer
  • ⚠ org.camunda.bpm.engine.cdi.jsf.TaskForm
  • ⚠ org.camunda.bpm.engine.history.HistoricProcessInstance
  • ⚠ org.camunda.bpm.engine.history.HistoricVariableInstance
  • ⚠ org.camunda.bpm.engine.identity.User
  • ⚠ org.camunda.bpm.engine.impl.ProcessEngineImpl
  • ⚠ org.camunda.bpm.engine.impl.bpmn.behavior.AbstractBpmnActivityBehavior
  • ⚠ org.camunda.bpm.engine.impl.bpmn.behavior.UserTaskActivityBehavior
  • ⚠ org.camunda.bpm.engine.impl.bpmn.parser.AbstractBpmnParseListener
  • ⚠ org.camunda.bpm.engine.impl.bpmn.parser.BpmnParseListener
  • ⚠ org.camunda.bpm.engine.impl.bpmn.parser.DefaultFailedJobParseListener
  • ⚠ org.camunda.bpm.engine.impl.bpmn.parser.FailedJobRetryConfiguration
  • ⚠ org.camunda.bpm.engine.impl.cfg.AbstractProcessEnginePlugin
  • ⚠ org.camunda.bpm.engine.impl.cfg.ProcessEngineConfigurationImpl
  • ⚠ org.camunda.bpm.engine.impl.cfg.ProcessEnginePlugin
  • ⚠ org.camunda.bpm.engine.impl.cfg.StandaloneInMemProcessEngineConfiguration
  • ⚠ org.camunda.bpm.engine.impl.cfg.multitenancy.TenantIdProvider
  • ⚠ org.camunda.bpm.engine.impl.cfg.multitenancy.TenantIdProviderCaseInstanceContext
  • ⚠ org.camunda.bpm.engine.impl.cfg.multitenancy.TenantIdProviderHistoricDecisionInstanceContext
  • ⚠ org.camunda.bpm.engine.impl.cfg.multitenancy.TenantIdProviderProcessInstanceContext
  • ⚠ org.camunda.bpm.engine.impl.cmmn.model.CmmnActivity
  • ⚠ org.camunda.bpm.engine.impl.cmmn.transformer.AbstractCmmnTransformListener
  • ⚠ org.camunda.bpm.engine.impl.cmmn.transformer.CmmnTransformListener
  • ⚠ org.camunda.bpm.engine.impl.context.Context
  • ⚠ org.camunda.bpm.engine.impl.db.entitymanager.DbEntityManager
  • ⚠ org.camunda.bpm.engine.impl.form.validator.FormFieldValidator
  • ⚠ org.camunda.bpm.engine.impl.form.validator.FormFieldValidatorContext
  • ⚠ org.camunda.bpm.engine.impl.form.validator.FormFieldValidatorException
  • ⚠ org.camunda.bpm.engine.impl.history.HistoryLevel
  • ⚠ org.camunda.bpm.engine.impl.history.event.HistoryEvent
  • ⚠ org.camunda.bpm.engine.impl.history.event.HistoryEventType
  • ⚠ org.camunda.bpm.engine.impl.history.event.HistoryEventTypes
  • ⚠ org.camunda.bpm.engine.impl.identity.Authentication
  • ⚠ org.camunda.bpm.engine.impl.interceptor.Command
  • ⚠ org.camunda.bpm.engine.impl.interceptor.CommandContext
  • ⚠ org.camunda.bpm.engine.impl.interceptor.CommandInterceptor
  • ⚠ org.camunda.bpm.engine.impl.jobexecutor.JobExecutor
  • ⚠ org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity
  • ⚠ org.camunda.bpm.engine.impl.persistence.entity.JobEntity
  • ⚠ org.camunda.bpm.engine.impl.pvm.delegate.ActivityBehavior
  • ⚠ org.camunda.bpm.engine.impl.pvm.delegate.ActivityExecution
  • ⚠ org.camunda.bpm.engine.impl.pvm.delegate.SignallableActivityBehavior
  • ⚠ org.camunda.bpm.engine.impl.pvm.process.ActivityImpl
  • ⚠ org.camunda.bpm.engine.impl.pvm.process.ScopeImpl
  • ⚠ org.camunda.bpm.engine.impl.util.ClockUtil
  • ⚠ org.camunda.bpm.engine.impl.util.LogUtil
  • ⚠ org.camunda.bpm.engine.impl.util.ParseUtil
  • ⚠ org.camunda.bpm.engine.impl.util.xml.Element
  • ⚠ org.camunda.bpm.engine.migration.MigrationPlan
  • ⚠ org.camunda.bpm.engine.repository.DecisionDefinition
  • ⚠ org.camunda.bpm.engine.repository.Deployment
  • ⚠ org.camunda.bpm.engine.repository.ProcessDefinition
  • ⚠ org.camunda.bpm.engine.repository.ProcessDefinitionQuery
  • ⚠ org.camunda.bpm.engine.rest.dto.repository.ProcessDefinitionDto
  • ⚠ org.camunda.bpm.engine.rest.impl.CamundaRestResources
  • ⚠ org.camunda.bpm.engine.rest.security.auth.ProcessEngineAuthenticationFilter
  • ⚠ org.camunda.bpm.engine.rest.security.auth.impl.HttpBasicAuthenticationProvider
  • ⚠ org.camunda.bpm.engine.rest.spi.ProcessEngineProvider
  • ⚠ org.camunda.bpm.engine.runtime.Job
  • ⚠ org.camunda.bpm.engine.runtime.JobQuery
  • ⚠ org.camunda.bpm.engine.runtime.ProcessInstance
  • ⚠ org.camunda.bpm.engine.runtime.VariableInstance
  • ⚠ org.camunda.bpm.engine.spring.ProcessEngineFactoryBean
  • ⚠ org.camunda.bpm.engine.spring.SpringProcessEngineConfiguration
  • ⚠ org.camunda.bpm.engine.spring.SpringProcessEngineServicesConfiguration
  • ⚠ org.camunda.bpm.engine.task.Task
  • ⚠ org.camunda.bpm.engine.task.TaskQuery
  • ⚠ org.camunda.bpm.engine.test.Deployment
  • ⚠ org.camunda.bpm.engine.test.ProcessEngineRule
  • ⚠ org.camunda.bpm.engine.test.ProcessEngineTestCase
  • ⚠ org.camunda.bpm.engine.test.assertions.ProcessEngineTests.complete
  • ⚠ org.camunda.bpm.engine.test.assertions.ProcessEngineTests.execute
  • ⚠ org.camunda.bpm.engine.test.assertions.ProcessEngineTests.historyService
  • ⚠ org.camunda.bpm.engine.test.assertions.ProcessEngineTests.job
  • ⚠ org.camunda.bpm.engine.test.assertions.ProcessEngineTests.jobQuery
  • ⚠ org.camunda.bpm.engine.test.assertions.ProcessEngineTests.runtimeService
  • ⚠ org.camunda.bpm.engine.test.assertions.ProcessEngineTests.task
  • ⚠ org.camunda.bpm.engine.test.assertions.ProcessEngineTests.taskService
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.assertThat
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.claim
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.complete
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.findId
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.processInstanceQuery
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.runtimeService
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.task
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.taskQuery
  • ⚠ org.camunda.bpm.engine.test.assertions.bpmn.BpmnAwareTests.withVariables
  • ⚠ org.camunda.bpm.engine.test.assertions.examples.jobannouncement.JobAnnouncement
  • ⚠ org.camunda.bpm.engine.test.assertions.examples.jobannouncement.JobAnnouncementService
  • ⚠ org.camunda.bpm.engine.test.junit5.ProcessEngineExtension
  • ⚠ org.camunda.bpm.engine.test.mock.Mocks
  • ⚠ org.camunda.bpm.engine.variable.VariableMap
  • ⚠ org.camunda.bpm.engine.variable.Variables
  • ⚠ org.camunda.bpm.engine.variable.value.ObjectValue
  • ⚠ org.camunda.bpm.engine.variable.value.SerializableValue
  • ⚠ org.camunda.bpm.engine.variable.value.StringValue
  • ⚠ org.camunda.bpm.engine.variable.value.TypedValue
  • ⚠ org.camunda.bpm.example.authentication.rest.RestProcessEngineDeployment
  • ⚠ org.camunda.bpm.example.delegate.ServiceTaskOneDelegate
  • ⚠ org.camunda.bpm.example.delegate.ServiceTaskTwoDelegate
  • ⚠ org.camunda.bpm.example.engine.cmd.EndBlockingCmd
  • ⚠ org.camunda.bpm.example.engine.cmd.StartBlockingCmd
  • ⚠ org.camunda.bpm.example.engine.cmd.UnblockedCommand
  • ⚠ org.camunda.bpm.example.executionlistener.ProgressLoggingExecutionListener
  • ⚠ org.camunda.bpm.example.invoice.InvoiceProcessApplication
  • ⚠ org.camunda.bpm.example.invoice.service.ArchiveInvoiceService
  • ⚠ org.camunda.bpm.example.servicetask.soap.MockedSoapRule.MOCKED_BASE_URL
  • ⚠ org.camunda.bpm.example.servicetask.soap.MockedSoapRule.MOCKED_HOST
  • ⚠ org.camunda.bpm.example.servicetask.soap.MockedSoapRule.MOCKED_PORT
  • ⚠ org.camunda.bpm.example.servicetask.soap.MockedSoapRule.MOCKED_SERVICE_PATH
  • ⚠ org.camunda.bpm.example.servicetask.soap.MockedSoapRule.MOCKED_SOAP_ACTION
  • ⚠ org.camunda.bpm.example.spin.dataformat.configuration.Car
  • ⚠ org.camunda.bpm.example.spin.dataformat.configuration.Money
  • ⚠ org.camunda.bpm.example.tasklistener.InformAssigneeTaskListener
  • ⚠ org.camunda.bpm.example.usertask.embedded.serialized.model.CustomerData
  • ⚠ org.camunda.bpm.extension.mockito.DelegateExpressions.autoMock
  • ⚠ org.camunda.bpm.model.bpmn.Bpmn
  • ⚠ org.camunda.bpm.model.bpmn.BpmnModelInstance
  • ⚠ org.camunda.bpm.model.bpmn.GatewayDirection
  • ⚠ org.camunda.bpm.model.bpmn.impl.BpmnModelConstants
  • ⚠ org.camunda.bpm.model.bpmn.instance.CallActivity
  • ⚠ org.camunda.bpm.model.bpmn.instance.ConditionExpression
  • ⚠ org.camunda.bpm.model.bpmn.instance.EndEvent
  • ⚠ org.camunda.bpm.model.bpmn.instance.Event
  • ⚠ org.camunda.bpm.model.bpmn.instance.ExclusiveGateway
  • ⚠ org.camunda.bpm.model.bpmn.instance.ExtensionElements
  • ⚠ org.camunda.bpm.model.bpmn.instance.FlowElement
  • ⚠ org.camunda.bpm.model.bpmn.instance.FlowNode
  • ⚠ org.camunda.bpm.model.bpmn.instance.Gateway
  • ⚠ org.camunda.bpm.model.bpmn.instance.Process
  • ⚠ org.camunda.bpm.model.bpmn.instance.Script
  • ⚠ org.camunda.bpm.model.bpmn.instance.ScriptTask
  • ⚠ org.camunda.bpm.model.bpmn.instance.SequenceFlow
  • ⚠ org.camunda.bpm.model.bpmn.instance.ServiceTask
  • ⚠ org.camunda.bpm.model.bpmn.instance.StartEvent
  • ⚠ org.camunda.bpm.model.bpmn.instance.UserTask
  • ⚠ org.camunda.bpm.model.bpmn.instance.bpmndi.BpmnPlane
  • ⚠ org.camunda.bpm.model.bpmn.instance.camunda.CamundaExecutionListener
  • ⚠ org.camunda.bpm.model.bpmn.instance.camunda.CamundaFormData
  • ⚠ org.camunda.bpm.model.bpmn.instance.camunda.CamundaFormField
  • ⚠ org.camunda.bpm.model.bpmn.instance.camunda.CamundaProperties
  • ⚠ org.camunda.bpm.model.bpmn.instance.camunda.CamundaProperty
  • ⚠ org.camunda.bpm.model.cmmn.Cmmn
  • ⚠ org.camunda.bpm.model.cmmn.instance.ExtensionElements
  • ⚠ org.camunda.bpm.model.cmmn.instance.HumanTask
  • ⚠ org.camunda.bpm.model.cmmn.instance.PlanItem
  • ⚠ org.camunda.bpm.model.xml.ModelBuilder
  • ⚠ org.camunda.bpm.model.xml.impl.instance.ModelElementInstanceImpl
  • ⚠ org.camunda.bpm.model.xml.impl.instance.ModelTypeInstanceContext
  • ⚠ org.camunda.bpm.model.xml.instance.ModelElementInstance
  • ⚠ org.camunda.bpm.model.xml.type.ModelElementType
  • ⚠ org.camunda.bpm.model.xml.type.ModelElementTypeBuilder
  • ⚠ org.camunda.bpm.model.xml.type.ModelElementTypeBuilder.ModelTypeInstanceProvider
  • ⚠ org.camunda.bpm.model.xml.type.attribute.Attribute
  • ⚠ org.camunda.bpm.modeler.core.features.activity.task.AbstractCreateTaskFeature
  • ⚠ org.camunda.bpm.modeler.core.features.api.IDecorateFeature
  • ⚠ org.camunda.bpm.modeler.core.features.api.container.IFeatureContainer
  • ⚠ org.camunda.bpm.modeler.core.preferences.ShapeStyle
  • ⚠ org.camunda.bpm.modeler.core.property.AbstractTabSection
  • ⚠ org.camunda.bpm.modeler.core.utils.StyleUtil
  • ⚠ org.camunda.bpm.modeler.plugin.AbstractCustomTaskProvider
  • ⚠ org.camunda.bpm.modeler.plugin.ICustomTaskProvider
  • ⚠ org.camunda.bpm.modeler.plugin.customtask.sample.Images
  • ⚠ org.camunda.bpm.modeler.plugin.customtask.sample.PluginConstants
  • ⚠ org.camunda.bpm.modeler.plugin.customtask.sample.feature.SampleTaskFeatureContainer
  • ⚠ org.camunda.bpm.modeler.plugin.customtask.sample.properties.SampleTaskTabSection
  • ⚠ org.camunda.bpm.modeler.plugin.palette.IPaletteIntegration
  • ⚠ org.camunda.bpm.modeler.plugin.palette.PaletteIntegration
  • ⚠ org.camunda.bpm.modeler.runtime.engine.model.ModelPackage
  • ⚠ org.camunda.bpm.modeler.ui.Images
  • ⚠ org.camunda.bpm.modeler.ui.features.activity.task.AbstractTaskDecorateFeature
  • ⚠ org.camunda.bpm.modeler.ui.features.activity.task.ServiceTaskFeatureContainer
  • ⚠ org.camunda.bpm.modeler.ui.property.tabs.AbstractTabCompositeFactory
  • ⚠ org.camunda.bpm.modeler.ui.property.tabs.util.FieldInjectionUtil
  • ⚠ org.camunda.bpm.modeler.ui.property.tabs.util.PropertyUtil
  • ⚠ org.camunda.bpm.quarkus.engine.extension.QuarkusProcessEngineConfiguration
  • ⚠ org.camunda.bpm.quarkus.engine.extension.event.CamundaEngineStartupEvent
  • ⚠ org.camunda.bpm.quarkus.example.datasource.ApprovalServiceBean
  • ⚠ org.camunda.bpm.quarkus.example.dto.OrderItem
  • ⚠ org.camunda.bpm.spring.boot.starter.annotation.EnableProcessApplication
  • ⚠ org.camunda.bpm.spring.boot.starter.event.PostDeployEvent
  • ⚠ org.camunda.bpm.spring.boot.starter.event.PreUndeployEvent
  • ⚠ org.camunda.bpm.spring.boot.starter.property.CamundaBpmProperties
  • ⚠ org.camunda.bpm.spring.boot.starter.test.helper.AbstractProcessEngineRuleTest
  • ⚠ org.camunda.commons.utils.IoUtil
  • ⚠ org.camunda.connect.Connectors
  • ⚠ org.camunda.connect.httpclient.HttpRequest
  • ⚠ org.camunda.connect.httpclient.HttpResponse
  • ⚠ org.camunda.connect.spi.Connector
  • ⚠ org.camunda.connect.spi.ConnectorRequest
  • ⚠ org.camunda.connect.spi.ConnectorResponse
  • ⚠ org.camunda.spin.DataFormats
  • ⚠ org.camunda.spin.Spin.JSON
  • ⚠ org.camunda.spin.SpinList
  • ⚠ org.camunda.spin.impl.json.jackson.format.JacksonJsonDataFormat
  • ⚠ org.camunda.spin.json.SpinJsonNode
  • ⚠ org.camunda.spin.plugin.impl.SpinProcessEnginePlugin
  • ⚠ org.camunda.spin.plugin.variable.value.JsonValue
  • ⚠ org.camunda.spin.spi.DataFormatConfigurator

📚 Appendix: Reference Documentation

Camunda 8.9 Official Documentation

Specific Migration Guides

💡 All links are to the official Camunda 8.9 documentation. For the most up-to-date information, please refer to the official documentation.