# Process Modeling with BPMN > BPMN elements (events, activities, gateways, pools, lanes, messages), process modeling practice, levels of process models. ## BPMN basics: motivation, history, notation, diagram types - [BPMN 2.0 Notation](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-2-0-notation-overview.md): BPMN 2.0 is an industry standard notation for modeling and running business processes. Its core elements are tasks, events, gateways, and sequence flow, which together show the order of work. - [BPMN as Modeling Language, Not Method](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-as-modeling-language-not-method.md): BPMN is a notation, a set of drawing conventions for business processes. It aims to be readable by business users and precise enough to translate into software process components. - [BPMN Collaboration Diagram](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-collaboration-diagram.md): A BPMN collaboration diagram shows each participant's process in its own pool. Dashed message flows connect the pools, so interaction is explicit. Camunda recommends it over lanes for operational-level models. - [BPMN Conversation Diagram](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-conversation-diagram.md): A BPMN conversation diagram gives a very high-level view of which participants exchange messages. It draws each group of exchanges as a hexagon called a conversation. - [BPMN Diagram Types](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-diagram-types.md): BPMN offers collaboration diagrams, which show pools and the messages between them, and conversation diagrams, which give a high-level view of what participants talk about. Choreography diagrams are a newer third type. - [BPMN Focus on Connected Businesses](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-focus-on-connected-businesses.md): BPMN can model processes that cross company borders. Each organization gets its own pool, and message flows show the messages passing between them. Business and technical people can both read the result. - [BPMN Motivation](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-motivation.md): BPMN is a standard process notation built on flowcharting. Diagrams are precise enough to become software process components and are stored as XML. OMG maintains it, and it is also ISO 19510. - [Core BPMN Element Subset](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-element-usage-frequency.md): Most BPMN models need only a small part of the notation. A study of 120 diagrams found that analysts share a small set of constructs. Using that core set eases modeling and reading. - [History of BPMN](https://arc.fuet.ch/concepts/modeling-bpmn/history-of-bpmn.md): BPMN began at an industry group, BPMI, and reached the public as version 1.0 in May 2004. OMG took over in 2005. Version 2.0 arrived in January 2011. Version 2.0.2, from January 2014, is the latest. - [Process Model versus Process Instance](https://arc.fuet.ch/concepts/modeling-bpmn/process-model-versus-process-instance.md): A process model is the blueprint of a business process. A process instance is one run of it, tracked by a token and identified by a unique key. - [Process Notations Comparison (EPC, BPMN, UML Activity Diagram)](https://arc.fuet.ch/concepts/modeling-bpmn/process-notations-comparison.md): EPC, UML activity diagrams, and BPMN can describe the same process with different elements. Most EPC elements have a clear BPMN equivalent, so conversion follows rules, but the result usually needs manual cleanup. - [Workflow Pattern](https://arc.fuet.ch/concepts/modeling-bpmn/workflow-pattern.md): Workflow patterns are named, recurring ways a process controls its flow, such as sequence, parallel split, and simple merge. They help describe process models and compare process languages such as BPMN. ## BPMN elements: events, activities, gateways, data, pools - [Boundary Event](https://arc.fuet.ch/concepts/modeling-bpmn/attached-boundary-intermediate-event.md): A boundary event is attached to the edge of an activity and reacts while that activity runs. It can stop the activity or run alongside it. Typical uses are timeouts, reminders, and error handling. - [BPMN Activity](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-activity.md): A BPMN activity is a unit of work in a process. It can be a single task or a subprocess that groups further steps. Call activities reuse separate processes, and markers show repetition. - [BPMN Ad Hoc Sub-Process](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-ad-hoc-sub-process.md): An ad hoc sub-process groups activities that have no fixed order. Each activity can run several times, in any order, or be skipped. The choice happens at runtime, not at design time. - [BPMN Artifacts (Group and Text Annotation)](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-artifacts-group-and-text-annotation.md): BPMN artifacts add extra information to a process diagram. A Group clusters elements visually. A Text Annotation attaches a note for human readers. Engines ignore the note. - [BPMN Compensation Event](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-compensation-event.md): A compensation event lets a process undo work that already finished. You mark an activity as undoable, link it to an undo task, and trigger compensation later. Only successfully completed activities get undone. - [BPMN Connecting Object](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-connecting-object.md): BPMN connecting objects are the lines that link elements in a process diagram. Sequence flow sets the order of steps inside a pool. Message flow links separate pools. Association is a dotted line. - [BPMN Core Elements](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-core-elements.md): BPMN is a standard notation for drawing business processes. Its core elements are tasks, sequence flow, gateways, events, data objects and swim lanes. Together they show what happens, in which order. - [BPMN Core Elements](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-element-categories.md): BPMN describes a business process with a small set of building blocks. Events, tasks, and gateways are joined by flows. Pools and lanes show who does the work. Data objects show what information is used. - [BPMN Data Element](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-data-element.md): BPMN data elements show the information a process uses or creates. Data associations link that data to activities. Data flows along these associations, not along sequence flows. - [BPMN Event](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-event.md): A BPMN event is something that happens in a process and affects its flow. Events either wait for something from outside (catch) or are raised by the process itself (throw). - [BPMN Gateway](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-gateway-semantics.md): A BPMN gateway controls where a process path splits or joins. Splits send the flow down one, all, or some branches. Joins either pass flow on or wait for other branches. - [BPMN Swimlane (Pool and Lane)](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-swimlane-pool-and-lane.md): A pool is a box for one participant in a BPMN diagram. Lanes split a pool into parts. Separate pools talk only through message flows, never through sequence flow. - [BPMN Task Marker and Task Type](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-task-marker.md): Task types say what kind of work a BPMN step is, such as service, script, or manual. Markers add repetition or compensation behavior. Tool support differs: Camunda 7 does not natively support the loop marker. - [Data Exchange between BPMN Processes](https://arc.fuet.ch/concepts/modeling-bpmn/data-exchange-between-bpmn-processes.md): Separate BPMN processes sit in separate pools. They exchange data in two ways: messages sent across pools, or a shared data store that one process writes and another reads. The store keeps writer and reader independent. - [Event-Based Gateway](https://arc.fuet.ch/concepts/modeling-bpmn/event-based-gateway.md): An event-based gateway sends a process down one path depending on which event happens first, not on data. The first event wins, and the other events can no longer trigger. - [Intermediate Event](https://arc.fuet.ch/concepts/modeling-bpmn/intermediate-event.md): An intermediate event sits inside a process flow, between start and end. Throwing events (filled icon) fire a trigger. Catching events (white icon) make the process wait until a trigger occurs. - [Link Event](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-link-event.md): A link event pair replaces one sequence flow in a BPMN diagram. A throwing link is the exit, and a catching link with the same name is the re-entrance. It adds no business meaning and only keeps diagrams readable. ## Model quality, guidelines and typical errors - [BPMN 2.0 Model Quality](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-2-0-model-quality.md): A BPMN process model is of high quality when it is free of control-flow errors such as deadlocks. Tools can check this in milliseconds, and guidelines such as 7PMG give advice on model quality. - [BPMN Gateway Mismatch Antipatterns](https://arc.fuet.ch/concepts/modeling-bpmn/antipatterns-for-process-flows.md): A gateway mismatch means a BPMN split and its join have incompatible types. The result is a deadlock, where the process cannot finish, or a lack of synchronization, where an end event is reached more than once. - [BPMN Layout Guideline](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-layout-guideline.md): A BPMN layout guideline is a set of drawing habits that make process diagrams easy to read: one flow direction, few crossings, no very long arrows, and clearly marked gateways. - [BPMN Modeling Guidelines](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-modeling-tips.md): BPMN modeling guidelines are simple naming and layout rules that keep process models readable. They cover page size, explicit start and end events, question-style XOR gateways, verb-object task names, and separate pools for partners. - [Color Coding in BPMN Models](https://arc.fuet.ch/concepts/modeling-bpmn/color-coding-in-bpmn-models.md): Color coding adds a second visual layer to a BPMN diagram, on top of the standard shapes. It works best with few colors, a legend, and a diagram that still reads in grayscale. - [Deadlock in Process Models](https://arc.fuet.ch/concepts/modeling-bpmn/deadlock-in-process-models.md): A deadlock is a control-flow error in a process model. A parallel join waits for a token that never arrives, so the instance stalls and never finishes. Matching split and join gateway types prevents it. - [Errors in Process Models](https://arc.fuet.ch/concepts/modeling-bpmn/errors-in-process-models.md): Many real process models contain control-flow errors, such as deadlocks and lack of synchronization. A model counts as correct only if it has neither. A typical cause is merging parallel branches with the wrong gateway type. - [Lack of Synchronization](https://arc.fuet.ch/concepts/modeling-bpmn/lack-of-synchronization-in-process-models.md): A lack of synchronization happens when parallel branches are merged by an exclusive (XOR) join. Nothing waits for the other branches, so the work after the merge runs once per branch instead of once. - [Process Model Complexity](https://arc.fuet.ch/concepts/modeling-bpmn/process-model-complexity.md): A process model can be correct and complete yet too complicated to read. Larger models are harder to understand. Splitting them into subprocesses, limiting data objects, and following guidelines help. - [Soundness of Process Models](https://arc.fuet.ch/concepts/modeling-bpmn/soundness-of-process-models.md): A process model is sound when it has no deadlock and no lack of synchronization. Soundness is a basic correctness check, and tools can verify it automatically. - [Structured Process Modeling with Fragments](https://arc.fuet.ch/concepts/modeling-bpmn/structured-process-modeling-with-fragments.md): Structured process modeling builds a model from a simple sequence of steps and inserts parallel or alternative blocks. In BPMN, these blocks use parallel gateways (AND) and exclusive gateways (XOR) as splits and joins. ## Business process management in practice - [ARIS Process Views](https://arc.fuet.ch/concepts/modeling-bpmn/aris-process-views.md): ARIS describes a business and its information systems through several views, and each view is detailed in three levels. Process chain diagrams belong to its control view. ARIS mainly supports analysis and requirements definition. - [BPM Life Cycle](https://arc.fuet.ch/concepts/modeling-bpmn/bpm-life-cycle.md): The BPM life cycle is a loop of stages for a business process: discovery, analysis, design, implementation and monitoring. A live process is measured and improved so it stays useful as goals, technology and rules change. - [BPMN Modeling Tool](https://arc.fuet.ch/concepts/modeling-bpmn/bpmn-modeling-tools.md): A BPMN modeling tool is software for drawing process models. Camunda Modeler and bpmn.io are two examples. They differ in form, such as desktop or web, and viewer or editor. A free one suits first experiments. - [Business Object Lifecycle](https://arc.fuet.ch/concepts/modeling-bpmn/business-object-lifecycle.md): A business object lifecycle describes the states an object passes through, drawn as a state machine. Processes change those states. This data-centric view is an alternative to modeling only the activities of a process. - [Capturing Business Behavior via Process Modeling](https://arc.fuet.ch/concepts/modeling-bpmn/capturing-business-behavior-via-process-modeling.md): Process models describe business behavior at different levels of detail. A high-level model explains a process to stakeholders. A more detailed one supports analysis. A BPMN model can also be run by a workflow engine. - [Decision Model and Notation](https://arc.fuet.ch/concepts/modeling-bpmn/decision-model-and-notation.md): DMN is a standard for modeling business decisions. It pairs a graphical notation with an expression language, so business users can read decisions and a decision engine can run them alongside a BPMN process. - [Degrees of BPM Maturity](https://arc.fuet.ch/concepts/modeling-bpmn/degrees-of-bpm-maturity.md): Processes can be automated to different degrees, from steps with people involved to straight-through processing with no human at all. RPA and AI agents help move a process along, and each degree needs matching support in the architecture. - [Levels of Process Modeling](https://arc.fuet.ch/concepts/modeling-bpmn/levels-of-process-modeling.md): Process models work best in levels. The top level shows the big picture, the middle level breaks it into subprocesses, and the lowest level shows detailed activities. Each level suits a different audience. - [Process Analysis](https://arc.fuet.ch/concepts/modeling-bpmn/process-analysis.md): Process analysis turns a business process into a BPMN model by working through ordered questions: where it starts and ends, what steps occur, which paths exist, who takes part, and what is exchanged. - [Process Analysis and Modeling](https://arc.fuet.ch/concepts/modeling-bpmn/purpose-of-process-analysis-and-modeling.md): Process analysis and modeling draws a picture of how work gets done. Notations such as BPMN and EPC make that picture shared and precise. BPMN models can also be turned into software. - [Process Mining](https://arc.fuet.ch/concepts/modeling-bpmn/process-mining.md): Process mining is a family of techniques that analyze event data from information systems. It shows how a process actually runs, not how people believe it runs, and helps improve it. - [Waves of Business Process Management](https://arc.fuet.ch/concepts/modeling-bpmn/waves-of-business-process-management.md): Business process thinking has changed over time. In 1990, Hammer argued for removing work that adds no value instead of automating it. Reengineering then drew criticism for downsizing and high failure rates.