Next revision | Previous revision |
en:rule:align_tasks_with_process [2024-08-28 21:25] – created Anatoly Belaychuk | en:rule:align_tasks_with_process [2024-08-28 21:59] (current) – [Align process and activities instances] Anatoly Belaychuk |
---|
====== 0-TBD Align process and activities instances ====== | ====== Align process and activities instances ====== |
| |
{{tag>loop}} | {{tag>loop}} |
| |
{{en:underconstruction.png?nolink&200|}} | |
| |
Leverage multi-instance loop if a process deals with a set of objects. | Leverage multi-instance loop if a process deals with a set of objects. |
<omgdi:waypoint x="1150" y="116" /> | <omgdi:waypoint x="1150" y="116" /> |
<omgdi:waypoint x="1176" y="121" /> | <omgdi:waypoint x="1176" y="121" /> |
| </bpmndi:BPMNEdge> |
| </bpmndi:BPMNPlane> |
| </bpmndi:BPMNDiagram> |
| </definitions> |
| </bpmnio> |
| |
| <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_1vp7ry3"> |
| <participant id="Participant_1a9ls2p" name="Purchased goods acceptance" processRef="Process_1" /> |
| </collaboration> |
| <process id="Process_1" isExecutable="false"> |
| <startEvent id="Event_0qb2p1v"> |
| <outgoing>Flow_0a9mt56</outgoing> |
| </startEvent> |
| <task id="Activity_1degtd2" name="Check cargo documents"> |
| <incoming>Flow_0a9mt56</incoming> |
| <outgoing>Flow_0j3kcf2</outgoing> |
| </task> |
| <sequenceFlow id="Flow_0a9mt56" sourceRef="Event_0qb2p1v" targetRef="Activity_1degtd2" /> |
| <exclusiveGateway id="Gateway_10qfofe" name="Documents OK?"> |
| <incoming>Flow_0j3kcf2</incoming> |
| <outgoing>Flow_0v8y0lz</outgoing> |
| <outgoing>Flow_1pj9ozv</outgoing> |
| </exclusiveGateway> |
| <sequenceFlow id="Flow_0j3kcf2" sourceRef="Activity_1degtd2" targetRef="Gateway_10qfofe" /> |
| <sequenceFlow id="Flow_0v8y0lz" name="no" sourceRef="Gateway_10qfofe" targetRef="Event_18s0f3g" /> |
| <task id="Activity_0k55wlf" name="Check pallets integrity"> |
| <incoming>Flow_1pj9ozv</incoming> |
| <outgoing>Flow_0zbysou</outgoing> |
| </task> |
| <sequenceFlow id="Flow_1pj9ozv" name="yes" sourceRef="Gateway_10qfofe" targetRef="Activity_0k55wlf" /> |
| <sequenceFlow id="Flow_0zbysou" sourceRef="Activity_0k55wlf" targetRef="Gateway_0ste6tm" /> |
| <endEvent id="Event_18s0f3g" name="Invalid documents"> |
| <incoming>Flow_0v8y0lz</incoming> |
| </endEvent> |
| <inclusiveGateway id="Gateway_0ste6tm"> |
| <incoming>Flow_0zbysou</incoming> |
| <outgoing>Flow_1gmcsmc</outgoing> |
| <outgoing>Flow_08fw337</outgoing> |
| </inclusiveGateway> |
| <sequenceFlow id="Flow_0ykhyoj" sourceRef="Activity_19pxqla" targetRef="Gateway_0ldaatt" /> |
| <sequenceFlow id="Flow_0ijaw7o" sourceRef="Activity_1b3wl5z" targetRef="Gateway_0ldaatt" /> |
| <sequenceFlow id="Flow_1sjbt67" sourceRef="Gateway_0ldaatt" targetRef="Event_1uaoiim" /> |
| <sequenceFlow id="Flow_1gmcsmc" name="some pallets are good" sourceRef="Gateway_0ste6tm" targetRef="Activity_19pxqla" /> |
| <sequenceFlow id="Flow_08fw337" name="some pallets are broken" sourceRef="Gateway_0ste6tm" targetRef="Activity_1b3wl5z" /> |
| <task id="Activity_1b3wl5z" name="File a claim"> |
| <incoming>Flow_08fw337</incoming> |
| <outgoing>Flow_0ijaw7o</outgoing> |
| </task> |
| <task id="Activity_19pxqla" name="Accomodate into warehouse"> |
| <incoming>Flow_1gmcsmc</incoming> |
| <outgoing>Flow_0ykhyoj</outgoing> |
| </task> |
| <inclusiveGateway id="Gateway_0ldaatt"> |
| <incoming>Flow_0ykhyoj</incoming> |
| <incoming>Flow_0ijaw7o</incoming> |
| <outgoing>Flow_1sjbt67</outgoing> |
| </inclusiveGateway> |
| <endEvent id="Event_1uaoiim"> |
| <incoming>Flow_1sjbt67</incoming> |
| </endEvent> |
| </process> |
| <bpmndi:BPMNDiagram id="BPMNDiagram_1"> |
| <bpmndi:BPMNPlane id="BPMNPlane_1" bpmnElement="Collaboration_1vp7ry3"> |
| <bpmndi:BPMNShape id="Participant_1a9ls2p_di" bpmnElement="Participant_1a9ls2p" isHorizontal="true"> |
| <omgdc:Bounds x="200" y="30" width="950" height="250" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_0qb2p1v_di" bpmnElement="Event_0qb2p1v"> |
| <omgdc:Bounds x="272" y="82" width="36" height="36" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1degtd2_di" bpmnElement="Activity_1degtd2"> |
| <omgdc:Bounds x="340" y="60" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_10qfofe_di" bpmnElement="Gateway_10qfofe" isMarkerVisible="true"> |
| <omgdc:Bounds x="475" y="75" width="50" height="50" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="460" y="53" width="81" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0k55wlf_di" bpmnElement="Activity_0k55wlf"> |
| <omgdc:Bounds x="570" y="60" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_18s0f3g_di" bpmnElement="Event_18s0f3g"> |
| <omgdc:Bounds x="482" y="162" width="36" height="36" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="455" y="205" width="90" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_05slbzv_di" bpmnElement="Gateway_0ste6tm"> |
| <omgdc:Bounds x="705" y="75" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1b3wl5z_di" bpmnElement="Activity_1b3wl5z"> |
| <omgdc:Bounds x="850" y="170" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_19pxqla_di" bpmnElement="Activity_19pxqla"> |
| <omgdc:Bounds x="850" y="60" width="100" height="80" /> |
| <bpmndi:BPMNLabel /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_0zdcd69_di" bpmnElement="Gateway_0ldaatt"> |
| <omgdc:Bounds x="995" y="75" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_1uaoiim_di" bpmnElement="Event_1uaoiim"> |
| <omgdc:Bounds x="1082" y="82" width="36" height="36" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNEdge id="Flow_0a9mt56_di" bpmnElement="Flow_0a9mt56"> |
| <omgdi:waypoint x="308" y="100" /> |
| <omgdi:waypoint x="340" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0j3kcf2_di" bpmnElement="Flow_0j3kcf2"> |
| <omgdi:waypoint x="440" y="100" /> |
| <omgdi:waypoint x="475" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0v8y0lz_di" bpmnElement="Flow_0v8y0lz"> |
| <omgdi:waypoint x="500" y="125" /> |
| <omgdi:waypoint x="500" y="162" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="509" y="139" width="13" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1pj9ozv_di" bpmnElement="Flow_1pj9ozv"> |
| <omgdi:waypoint x="525" y="100" /> |
| <omgdi:waypoint x="570" y="100" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="539" y="82" width="17" height="14" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0zbysou_di" bpmnElement="Flow_0zbysou"> |
| <omgdi:waypoint x="670" y="100" /> |
| <omgdi:waypoint x="705" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0ykhyoj_di" bpmnElement="Flow_0ykhyoj"> |
| <omgdi:waypoint x="950" y="100" /> |
| <omgdi:waypoint x="995" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0ijaw7o_di" bpmnElement="Flow_0ijaw7o"> |
| <omgdi:waypoint x="950" y="210" /> |
| <omgdi:waypoint x="1020" y="210" /> |
| <omgdi:waypoint x="1020" y="125" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1sjbt67_di" bpmnElement="Flow_1sjbt67"> |
| <omgdi:waypoint x="1045" y="100" /> |
| <omgdi:waypoint x="1082" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1gmcsmc_di" bpmnElement="Flow_1gmcsmc"> |
| <omgdi:waypoint x="755" y="100" /> |
| <omgdi:waypoint x="850" y="100" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="749" y="66" width="81" height="27" /> |
| </bpmndi:BPMNLabel> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_08fw337_di" bpmnElement="Flow_08fw337"> |
| <omgdi:waypoint x="730" y="125" /> |
| <omgdi:waypoint x="730" y="210" /> |
| <omgdi:waypoint x="850" y="210" /> |
| <bpmndi:BPMNLabel> |
| <omgdc:Bounds x="749" y="176" width="81" height="27" /> |
| </bpmndi:BPMNLabel> |
</bpmndi:BPMNEdge> | </bpmndi:BPMNEdge> |
</bpmndi:BPMNPlane> | </bpmndi:BPMNPlane> |
===== Notes ===== | ===== Notes ===== |
| |
* Extra comments (optional) | A BPMN diagram should be treated literally: what you model is what you run. |
| The task "Check pallets integrity" at [[#how not to]] diagram followed by the gateway "Pallet OK?" means that the gateway checks status of just one pallet. |
===== Exceptions ===== | Correct way is either to process pallets one by one in a mutli-instance loop ([[#how to]], top), or to continue dealing with a set of pallets ([[#how to]], bottom). |
| |
* Exceptions, if any | |
===== See also ===== | ===== See also ===== |
| |
* References to similar rules (optional) | * [[collapsed_subprocess]] |
| |
===== Author(s) ===== | ===== Author(s) ===== |
| |
Signature | --- //[[user:bell|Anatoly Belaychuk]] 2024-08-28 21:49// |
| |