Pick up the prompt below and watch the video to see how you can create your first process map without having to know how to use all the shapes.
Then work in your AI tool of choice (I recommend Claude for this) to brainstorm the process you want to map.
Prompt
Combined Process Mapping & Camunda BPMN Development Prompt
Framework: Use APQC PCF v6.0.0 (Cross-Industry).
Level model:
Level 3 (L3): End-to-end process (division scope)
Level 4 (L4): Key activities (department scope)
Level 5 (L5): Executable tasks (role scope)
Always prefix process names with L3/L4/L5 in headings, tables and references
Language & style: UK English. Keep it concise, practical, and free of banned buzzwords. Avoid acronyms. If a term is commonly abbreviated (e.g., Fair Work Commission), write it in full.
Notations & posture: Content must be BPMN-ready (clear tasks, gateways, loop-backs), but plain tables and bullets are used in replies (no diagram images).
xml
<?xml version="1.0" encoding="UTF-8"?> <bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:dc="http://www.omg.org/spec/DD/20100524/DC" xmlns:modeler="http://camunda.org/schema/modeler/1.0" xmlns:di="http://www.omg.org/spec/DD/20100524/DI" id="Definitions_1" targetNamespace="http://bpmn.io/schema/bpmn" exporter="Camunda Web Modeler" exporterVersion="fad8eda" modeler:executionPlatform="Camunda Cloud" modeler:executionPlatformVersion="8.7.0"> <bpmn:collaboration id="Collaboration_[process-code]"> <bpmn:participant id="Participant_[dept]" name="[Department Name]" processRef="Process_[main]" /> <!-- External participants if needed --> </bpmn:collaboration> <bpmn:process id="Process_[main]" name="[Process Name]" isExecutable="true"> <bpmn:laneSet id="LaneSet_[main]"> <bpmn:lane id="Lane_[role1]" name="[Role Name]"> <!-- Flow node refs --> </bpmn:lane> <bpmn:lane id="Lane_[role2]" name="[Role Name]"> <!-- Flow node refs --> </bpmn:lane> </bpmn:laneSet> <!-- Process elements here --> </bpmn:process> <bpmndi:BPMNDiagram id="BPMNDiagram_1"> <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Collaboration_[process-code]"> <!-- Visual elements --> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </bpmn:definitions>
Tasks: Activity_[id]
with name="Verb Noun" format
Gateways: Gateway_[id]
with descriptive names on outgoing flows
Sequence flows: Flow_[descriptor]
Events:
Start: StartEvent_1
with name="Process trigger"
End: Event_[end]
with name="Process objective completed"
Intermediate throw (link): Event_[link]
with name="Next Process Name"
Timer: Event_timer_[n]
Data objects: DataObjectReference_[id]
with name="Document Artefact"
Data stores: DataStoreReference_[id]
with name="System Artefact"
Message flows: Flow_[message]
with descriptive label
Link to another process (Throwing):xml
<bpmn:intermediateThrowEvent id="Event_[link]" name="L5 [Target Process Name]"> <bpmn:incoming>Flow_[previous]</bpmn:incoming> <bpmn:linkEventDefinition id="LinkEventDefinition_[id]" name="" /> </bpmn:intermediateThrowEvent>
Link from another process (Catching):xml
<bpmn:intermediateCatchEvent id="Event_[catch]" name="L5 [Source Process Name]"> <bpmn:outgoing>Flow_[next]</bpmn:outgoing> <bpmn:linkEventDefinition id="LinkEventDefinition_[id]" name="" /> </bpmn:intermediateCatchEvent>
If process continues from another L5: Start with intermediateCatchEvent
If process is standalone: Start with startEvent
If process links to another L5: End with intermediateThrowEvent
If process terminates: End with endEvent
Always use collaboration with participant containing lanes
Each role gets its own lane within the participant
External parties are separate participants without lanes
Message flows connect tasks to external participants
Participant bounds: x="159" y="210" width="1699" height="[vary by lanes]"
Lane height: ~120-390 units depending on content
Start event: x="280" y="382" (adjust for lane center)
Task spacing: +160 units horizontally
Task dimensions: 100w x 80h
Gateway dimensions: 50w x 50h
Parallel branches: Adjust y-coordinate within lane bounds
Use exclusiveGateway
for decisions (diamond shape)
Use parallelGateway
for AND splits/joins (+ shape)
Label conditions on outgoing sequence flows, not on gateway
Examples: "Label of condition 1"/"Label of condition 2", "Approved"/"Rejected"
When a task receives both forward flow and loop-back flow, always use a converging gateway:xml
<bpmn:exclusiveGateway id="Gateway_[converge]"> <bpmn:incoming>Flow_forward</bpmn:incoming> <bpmn:incoming>Flow_loopback</bpmn:incoming> <bpmn:outgoing>Flow_to_task</bpmn:outgoing> </bpmn:exclusiveGateway>
xml
<!-- Input association --> <bpmn:dataInputAssociation id="DataInputAssociation_[id]"> <bpmn:sourceRef>DataObjectReference_[source]</bpmn:sourceRef> <bpmn:targetRef>Property_[target]</bpmn:targetRef> </bpmn:dataInputAssociation> <!-- Output association --> <bpmn:dataOutputAssociation id="DataOutputAssociation_[id]"> <bpmn:targetRef>DataObjectReference_[target]</bpmn:targetRef> </bpmn:dataOutputAssociation>
#Level-4 key activityTypical outputsMain roles*1Activity Name1–3 concrete artefactsRole A, Role B
*Note: roles can be combined in smaller organisations
OrderLevel-5 TaskKey OutputPrimary Role1Do The ThingTangible artefactNamed role
Key gateways / decision points:
Gateway questionYes → Next stepNo → Next step / Loop-back"Approved?"Task NTask M (or "Return to X")
DocumentProcess (with level prefix)Name of artefactL4 or L5 Process Name
When user names new process, anchor to APQC v6.0.0 where possible. If bespoke, state plainly and keep L-prefix. Update upstream/downstream L5s when sequence changes. Convert policy text into L4/L5 tables with gateways and statutory deadlines.
Claude operates in Concise Mode, providing direct answers without unnecessary preamble. Maintains full quality for code, artifacts, and generated outputs. Does not mention Concise Mode unless user asks about response style changes.