Both sides previous revision Previous revision Next revision | Previous revision |
en:rule:connect_flows_to_any_side [2023-09-13 15:02] – Anatoly Belaychuk | en:rule:connect_flows_to_any_side [2024-08-18 17:14] (current) – [Attach a control flow to any side of the activity box] Anatoly Belaychuk |
---|
====== Connect a control flow to any side of activity box ====== | ====== Attach a sequence flow to any side of the activity box ====== |
| |
{{tag>"control flow" legacy}} | {{tag>sequence_flow legacy visual_style}} |
| |
{{en:underconstruction.png?nolink&200|}} | |
| |
For better readability. | |
| |
| Feel free to attach control flow to the most convinient side of the activity box to make a diagram compact and visually attractive. |
===== ✔ How to ===== | ===== ✔ How to ===== |
| |
Put patterns (BPMN diagrams) here | <bpmnio type="bpmn"> |
| <?xml version="1.0" encoding="UTF-8"?> |
| <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="sid-38422fae-e03e-43a3-bef4-bd33b32041b2" targetNamespace="http://bpmn.io/bpmn" exporter="http://bpmn.io" exporterVersion="0.10.1"> |
| <collaboration id="Collaboration_1mpgug7"> |
| <participant id="Participant_0ylkagi" name="Order to cash" processRef="Process_0lm4nfr" /> |
| </collaboration> |
| <process id="Process_0lm4nfr"> |
| <laneSet id="LaneSet_132k3fs"> |
| <lane id="Lane_0hxui7r" name="Sales"> |
| <flowNodeRef>Event_1crgxel</flowNodeRef> |
| <flowNodeRef>Activity_0sv1k3c</flowNodeRef> |
| </lane> |
| <lane id="Lane_1ng0hv1" name="Finance"> |
| <flowNodeRef>Activity_1fjt1s5</flowNodeRef> |
| <flowNodeRef>Gateway_07uo8at</flowNodeRef> |
| <flowNodeRef>Event_1wd7su6</flowNodeRef> |
| </lane> |
| <lane id="Lane_12mipy3" name="Operations"> |
| <flowNodeRef>Activity_1y7ff04</flowNodeRef> |
| <flowNodeRef>Event_1jhp9rg</flowNodeRef> |
| </lane> |
| </laneSet> |
| <sequenceFlow id="Flow_0dlyykn" sourceRef="Event_1crgxel" targetRef="Activity_0sv1k3c" /> |
| <startEvent id="Event_1crgxel" name="Sales order obtained"> |
| <outgoing>Flow_0dlyykn</outgoing> |
| </startEvent> |
| <task id="Activity_0sv1k3c" name="Agree product specification"> |
| <incoming>Flow_0dlyykn</incoming> |
| <outgoing>Flow_1fc3ykn</outgoing> |
| </task> |
| <task id="Activity_1fjt1s5" name="Obtain payment"> |
| <incoming>Flow_1fc3ykn</incoming> |
| <outgoing>Flow_0zs6o8h</outgoing> |
| </task> |
| <exclusiveGateway id="Gateway_07uo8at" name="OK?"> |
| <incoming>Flow_0zs6o8h</incoming> |
| <outgoing>Flow_0s73106</outgoing> |
| <outgoing>Flow_1s6kjk3</outgoing> |
| </exclusiveGateway> |
| <endEvent id="Event_1wd7su6" name="Not paid"> |
| <incoming>Flow_0s73106</incoming> |
| </endEvent> |
| <task id="Activity_1y7ff04" name="Deliver"> |
| <incoming>Flow_1s6kjk3</incoming> |
| <outgoing>Flow_1ydpwba</outgoing> |
| </task> |
| <endEvent id="Event_1jhp9rg" name="OK"> |
| <incoming>Flow_1ydpwba</incoming> |
| </endEvent> |
| <sequenceFlow id="Flow_1fc3ykn" sourceRef="Activity_0sv1k3c" targetRef="Activity_1fjt1s5" /> |
| <sequenceFlow id="Flow_0zs6o8h" sourceRef="Activity_1fjt1s5" targetRef="Gateway_07uo8at" /> |
| <sequenceFlow id="Flow_0s73106" name="no" sourceRef="Gateway_07uo8at" targetRef="Event_1wd7su6" /> |
| <sequenceFlow id="Flow_1s6kjk3" name="yes" sourceRef="Gateway_07uo8at" targetRef="Activity_1y7ff04" /> |
| <sequenceFlow id="Flow_1ydpwba" sourceRef="Activity_1y7ff04" targetRef="Event_1jhp9rg" /> |
| </process> |
| <bpmndi:BPMNDiagram id="BpmnDiagram_1"> |
| <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Collaboration_1mpgug7"> |
| <bpmndi:BPMNShape id="Participant_0ylkagi_di" bpmnElement="Participant_0ylkagi" isHorizontal="true"> |
| <omgdc:Bounds x="270" y="60" width="470" height="360" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Lane_12mipy3_di" bpmnElement="Lane_12mipy3" isHorizontal="true"> |
| <omgdc:Bounds x="300" y="300" width="440" height="120" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Lane_1ng0hv1_di" bpmnElement="Lane_1ng0hv1" isHorizontal="true"> |
| <omgdc:Bounds x="300" y="180" width="440" height="120" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Lane_0hxui7r_di" bpmnElement="Lane_0hxui7r" isHorizontal="true"> |
| <omgdc:Bounds x="300" y="60" width="440" height="120" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_1crgxel_di" bpmnElement="Event_1crgxel"> |
| <omgdc:Bounds x="352" y="102" width="36" height="36" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="341" y="145" width="58" height="27" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0sv1k3c_di" bpmnElement="Activity_0sv1k3c"> |
| <omgdc:Bounds x="430" y="80" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1fjt1s5_di" bpmnElement="Activity_1fjt1s5"> |
| <omgdc:Bounds x="430" y="200" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_07uo8at_di" bpmnElement="Gateway_07uo8at" isMarkerVisible="true"> |
| <omgdc:Bounds x="575" y="215" width="50" height="50" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="588" y="193" width="23" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_1wd7su6_di" bpmnElement="Event_1wd7su6"> |
| <omgdc:Bounds x="682" y="222" width="36" height="36" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="680" y="265" width="41" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1y7ff04_di" bpmnElement="Activity_1y7ff04"> |
| <omgdc:Bounds x="550" y="320" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_1jhp9rg_di" bpmnElement="Event_1jhp9rg"> |
| <omgdc:Bounds x="682" y="342" width="36" height="36" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="692" y="385" width="17" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNEdge id="Flow_0dlyykn_di" bpmnElement="Flow_0dlyykn"> |
| <omgdi:waypoint x="388" y="120" /> |
| <omgdi:waypoint x="430" y="120" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1fc3ykn_di" bpmnElement="Flow_1fc3ykn"> |
| <omgdi:waypoint x="480" y="160" /> |
| <omgdi:waypoint x="480" y="200" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0zs6o8h_di" bpmnElement="Flow_0zs6o8h"> |
| <omgdi:waypoint x="530" y="240" /> |
| <omgdi:waypoint x="575" y="240" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0s73106_di" bpmnElement="Flow_0s73106"> |
| <omgdi:waypoint x="625" y="240" /> |
| <omgdi:waypoint x="682" y="240" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="647" y="222" width="13" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1s6kjk3_di" bpmnElement="Flow_1s6kjk3"> |
| <omgdi:waypoint x="600" y="265" /> |
| <omgdi:waypoint x="600" y="320" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="607" y="283" width="17" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1ydpwba_di" bpmnElement="Flow_1ydpwba"> |
| <omgdi:waypoint x="650" y="360" /> |
| <omgdi:waypoint x="682" y="360" /> |
| </bpmndi:BPMNEdge> |
| </bpmndi:BPMNPlane> |
| </bpmndi:BPMNDiagram> |
| </definitions> |
| </bpmnio> |
===== ✘ How NOT to ===== | ===== ✘ How NOT to ===== |
| |
Put antipattern (BPMN diagrams) here | <bpmnio type="bpmn"> |
| <?xml version="1.0" encoding="UTF-8"?> |
| <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" id="sid-38422fae-e03e-43a3-bef4-bd33b32041b2" targetNamespace="http://bpmn.io/bpmn" exporter="http://bpmn.io" exporterVersion="0.10.1"> |
| <collaboration id="Collaboration_1mpgug7"> |
| <participant id="Participant_0ylkagi" name="Order to cash" processRef="Process_0lm4nfr" /> |
| </collaboration> |
| <process id="Process_0lm4nfr"> |
| <laneSet id="LaneSet_132k3fs"> |
| <lane id="Lane_0hxui7r" name="Sales"> |
| <flowNodeRef>Event_1crgxel</flowNodeRef> |
| <flowNodeRef>Activity_0sv1k3c</flowNodeRef> |
| </lane> |
| <lane id="Lane_1ng0hv1" name="Finance"> |
| <flowNodeRef>Activity_1fjt1s5</flowNodeRef> |
| <flowNodeRef>Gateway_07uo8at</flowNodeRef> |
| <flowNodeRef>Event_1wd7su6</flowNodeRef> |
| </lane> |
| <lane id="Lane_12mipy3" name="Operations"> |
| <flowNodeRef>Activity_1y7ff04</flowNodeRef> |
| <flowNodeRef>Event_1jhp9rg</flowNodeRef> |
| </lane> |
| </laneSet> |
| <sequenceFlow id="Flow_0dlyykn" sourceRef="Event_1crgxel" targetRef="Activity_0sv1k3c" /> |
| <startEvent id="Event_1crgxel" name="Sales order obtained"> |
| <outgoing>Flow_0dlyykn</outgoing> |
| </startEvent> |
| <task id="Activity_0sv1k3c" name="Agree product specification"> |
| <incoming>Flow_0dlyykn</incoming> |
| <outgoing>Flow_1fc3ykn</outgoing> |
| </task> |
| <sequenceFlow id="Flow_1fc3ykn" sourceRef="Activity_0sv1k3c" targetRef="Activity_1fjt1s5" /> |
| <task id="Activity_1fjt1s5" name="Obtain payment"> |
| <incoming>Flow_1fc3ykn</incoming> |
| <outgoing>Flow_0zs6o8h</outgoing> |
| </task> |
| <exclusiveGateway id="Gateway_07uo8at" name="OK?"> |
| <incoming>Flow_0zs6o8h</incoming> |
| <outgoing>Flow_0s73106</outgoing> |
| <outgoing>Flow_1s6kjk3</outgoing> |
| </exclusiveGateway> |
| <endEvent id="Event_1wd7su6" name="Not paid"> |
| <incoming>Flow_0s73106</incoming> |
| </endEvent> |
| <task id="Activity_1y7ff04" name="Deliver"> |
| <incoming>Flow_1s6kjk3</incoming> |
| <outgoing>Flow_1ydpwba</outgoing> |
| </task> |
| <endEvent id="Event_1jhp9rg" name="OK"> |
| <incoming>Flow_1ydpwba</incoming> |
| </endEvent> |
| <sequenceFlow id="Flow_0zs6o8h" sourceRef="Activity_1fjt1s5" targetRef="Gateway_07uo8at" /> |
| <sequenceFlow id="Flow_0s73106" name="no" sourceRef="Gateway_07uo8at" targetRef="Event_1wd7su6" /> |
| <sequenceFlow id="Flow_1s6kjk3" name="yes" sourceRef="Gateway_07uo8at" targetRef="Activity_1y7ff04" /> |
| <sequenceFlow id="Flow_1ydpwba" sourceRef="Activity_1y7ff04" targetRef="Event_1jhp9rg" /> |
| </process> |
| <bpmndi:BPMNDiagram id="BpmnDiagram_1"> |
| <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Collaboration_1mpgug7"> |
| <bpmndi:BPMNShape id="Participant_0ylkagi_di" bpmnElement="Participant_0ylkagi" isHorizontal="true"> |
| <omgdc:Bounds x="270" y="60" width="740" height="360" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Lane_12mipy3_di" bpmnElement="Lane_12mipy3" isHorizontal="true"> |
| <omgdc:Bounds x="300" y="300" width="710" height="120" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Lane_1ng0hv1_di" bpmnElement="Lane_1ng0hv1" isHorizontal="true"> |
| <omgdc:Bounds x="300" y="180" width="710" height="120" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Lane_0hxui7r_di" bpmnElement="Lane_0hxui7r" isHorizontal="true"> |
| <omgdc:Bounds x="300" y="60" width="710" height="120" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_1crgxel_di" bpmnElement="Event_1crgxel"> |
| <omgdc:Bounds x="352" y="102" width="36" height="36" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="341" y="145" width="58" height="27" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0sv1k3c_di" bpmnElement="Activity_0sv1k3c"> |
| <omgdc:Bounds x="430" y="80" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1fjt1s5_di" bpmnElement="Activity_1fjt1s5"> |
| <omgdc:Bounds x="600" y="200" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_07uo8at_di" bpmnElement="Gateway_07uo8at" isMarkerVisible="true"> |
| <omgdc:Bounds x="745" y="215" width="50" height="50" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="758" y="193" width="23" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_1wd7su6_di" bpmnElement="Event_1wd7su6"> |
| <omgdc:Bounds x="852" y="222" width="36" height="36" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="850" y="265" width="41" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1y7ff04_di" bpmnElement="Activity_1y7ff04"> |
| <omgdc:Bounds x="820" y="320" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_1jhp9rg_di" bpmnElement="Event_1jhp9rg"> |
| <omgdc:Bounds x="952" y="342" width="36" height="36" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="962" y="385" width="17" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNEdge id="Flow_0dlyykn_di" bpmnElement="Flow_0dlyykn"> |
| <omgdi:waypoint x="388" y="120" /> |
| <omgdi:waypoint x="430" y="120" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1fc3ykn_di" bpmnElement="Flow_1fc3ykn"> |
| <omgdi:waypoint x="530" y="120" /> |
| <omgdi:waypoint x="560" y="120" /> |
| <omgdi:waypoint x="560" y="240" /> |
| <omgdi:waypoint x="600" y="240" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0zs6o8h_di" bpmnElement="Flow_0zs6o8h"> |
| <omgdi:waypoint x="700" y="240" /> |
| <omgdi:waypoint x="745" y="240" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0s73106_di" bpmnElement="Flow_0s73106"> |
| <omgdi:waypoint x="795" y="240" /> |
| <omgdi:waypoint x="852" y="240" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="817" y="222" width="13" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1s6kjk3_di" bpmnElement="Flow_1s6kjk3"> |
| <omgdi:waypoint x="770" y="265" /> |
| <omgdi:waypoint x="770" y="360" /> |
| <omgdi:waypoint x="820" y="360" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="784" y="338" width="17" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1ydpwba_di" bpmnElement="Flow_1ydpwba"> |
| <omgdi:waypoint x="920" y="360" /> |
| <omgdi:waypoint x="952" y="360" /> |
| </bpmndi:BPMNEdge> |
| </bpmndi:BPMNPlane> |
| </bpmndi:BPMNDiagram> |
| </definitions> |
| </bpmnio> |
===== Notes ===== | ===== Notes ===== |
| |
IDEF0 legacy. | * IDEF0 prescribes the control flows to get out from right side of the source box and get into the left side of the destination so analysts with a heavy IDEF0 background tend to follow this rule when switching to BPMN. However there is no such limitation in BPMN. |
| |
===== Exceptions ===== | |
| |
Specify exceptions to the rule above, if any | |
===== See also ===== | ===== See also ===== |
| |
* [[en:rule:do_not_number_activities]] | * [[en:rule:time_flows_left_to_right]] |
| * [[en:rule:v_shaped_flow]] |
| ===== Автор(ы) ===== |
| |
===== Автор(ы) ===== | --- //[[user:bell|Anatoly Belaychuk]] 2024-01-08 20:29// |
| |
Put signature here | |