Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия |
ru:rule:overlapped_flows [2024-08-24 17:17] – [Отредактирована диаграмма] Anatoly Belaychuk | ru:rule:overlapped_flows [2024-08-24 17:48] (текущий) – [Примечания] Anatoly Belaychuk |
---|
====== 0-TBD Избегайте наложения потоков управления друг на друга ====== | ====== Избегайте наложения потоков управления друг на друга ====== |
| |
{{tag>поток_управления развилка_или-или}} | {{tag>поток_управления развилка_или-или}} |
| |
{{:ru:v_razrabotke.png?nolink&200|}} | |
| |
Используйте сходящуюся развилку "или/или". | Используйте сходящуюся развилку "или/или". |
===== ✘ Как НЕ надо ===== | ===== ✘ Как НЕ надо ===== |
| |
Тут антипаттерны (диаграммы) | <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"> |
| <process id="Process_0jtkq8g"> |
| <startEvent id="Event_0fl91v7"> |
| <outgoing>Flow_1ut7uu9</outgoing> |
| </startEvent> |
| <task id="Activity_0pz270f"> |
| <incoming>Flow_1ut7uu9</incoming> |
| <incoming>Flow_0nou2q0</incoming> |
| <incoming>Flow_1m9hwun</incoming> |
| <incoming>Flow_1ogbrx6</incoming> |
| <outgoing>Flow_14n14wf</outgoing> |
| </task> |
| <sequenceFlow id="Flow_1ut7uu9" sourceRef="Event_0fl91v7" targetRef="Activity_0pz270f" /> |
| <exclusiveGateway id="Gateway_1jszj3z"> |
| <incoming>Flow_14n14wf</incoming> |
| <outgoing>Flow_0iav8a3</outgoing> |
| <outgoing>Flow_0nou2q0</outgoing> |
| </exclusiveGateway> |
| <sequenceFlow id="Flow_14n14wf" sourceRef="Activity_0pz270f" targetRef="Gateway_1jszj3z" /> |
| <task id="Activity_0v6ywmg"> |
| <incoming>Flow_0iav8a3</incoming> |
| <outgoing>Flow_1kum4k7</outgoing> |
| </task> |
| <sequenceFlow id="Flow_0iav8a3" sourceRef="Gateway_1jszj3z" targetRef="Activity_0v6ywmg" /> |
| <exclusiveGateway id="Gateway_02ctw3e"> |
| <incoming>Flow_1kum4k7</incoming> |
| <outgoing>Flow_08xxpa3</outgoing> |
| <outgoing>Flow_1ogbrx6</outgoing> |
| </exclusiveGateway> |
| <sequenceFlow id="Flow_1kum4k7" sourceRef="Activity_0v6ywmg" targetRef="Gateway_02ctw3e" /> |
| <task id="Activity_1enrs4s"> |
| <incoming>Flow_08xxpa3</incoming> |
| <outgoing>Flow_0n5urrx</outgoing> |
| </task> |
| <sequenceFlow id="Flow_08xxpa3" sourceRef="Gateway_02ctw3e" targetRef="Activity_1enrs4s" /> |
| <exclusiveGateway id="Gateway_10llakz"> |
| <incoming>Flow_0n5urrx</incoming> |
| <outgoing>Flow_0heldi6</outgoing> |
| <outgoing>Flow_1m9hwun</outgoing> |
| </exclusiveGateway> |
| <sequenceFlow id="Flow_0n5urrx" sourceRef="Activity_1enrs4s" targetRef="Gateway_10llakz" /> |
| <endEvent id="Event_027iw82"> |
| <incoming>Flow_0heldi6</incoming> |
| </endEvent> |
| <sequenceFlow id="Flow_0heldi6" sourceRef="Gateway_10llakz" targetRef="Event_027iw82" /> |
| <sequenceFlow id="Flow_0nou2q0" sourceRef="Gateway_1jszj3z" targetRef="Activity_0pz270f" /> |
| <sequenceFlow id="Flow_1m9hwun" sourceRef="Gateway_10llakz" targetRef="Activity_0pz270f" /> |
| <sequenceFlow id="Flow_1ogbrx6" sourceRef="Gateway_02ctw3e" targetRef="Activity_0pz270f" /> |
| </process> |
| <bpmndi:BPMNDiagram id="BpmnDiagram_1"> |
| <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_0jtkq8g"> |
| <bpmndi:BPMNShape id="Event_0fl91v7_di" bpmnElement="Event_0fl91v7"> |
| <omgdc:Bounds x="192" y="122" width="36" height="36" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0pz270f_di" bpmnElement="Activity_0pz270f"> |
| <omgdc:Bounds x="260" y="100" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_1jszj3z_di" bpmnElement="Gateway_1jszj3z" isMarkerVisible="true"> |
| <omgdc:Bounds x="395" y="115" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0v6ywmg_di" bpmnElement="Activity_0v6ywmg"> |
| <omgdc:Bounds x="480" y="100" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_02ctw3e_di" bpmnElement="Gateway_02ctw3e" isMarkerVisible="true"> |
| <omgdc:Bounds x="615" y="115" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1enrs4s_di" bpmnElement="Activity_1enrs4s"> |
| <omgdc:Bounds x="700" y="100" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_10llakz_di" bpmnElement="Gateway_10llakz" isMarkerVisible="true"> |
| <omgdc:Bounds x="835" y="115" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_027iw82_di" bpmnElement="Event_027iw82"> |
| <omgdc:Bounds x="922" y="122" width="36" height="36" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNEdge id="Flow_1ut7uu9_di" bpmnElement="Flow_1ut7uu9"> |
| <omgdi:waypoint x="228" y="140" /> |
| <omgdi:waypoint x="260" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_14n14wf_di" bpmnElement="Flow_14n14wf"> |
| <omgdi:waypoint x="360" y="140" /> |
| <omgdi:waypoint x="395" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0iav8a3_di" bpmnElement="Flow_0iav8a3"> |
| <omgdi:waypoint x="445" y="140" /> |
| <omgdi:waypoint x="480" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1kum4k7_di" bpmnElement="Flow_1kum4k7"> |
| <omgdi:waypoint x="580" y="140" /> |
| <omgdi:waypoint x="615" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_08xxpa3_di" bpmnElement="Flow_08xxpa3"> |
| <omgdi:waypoint x="665" y="140" /> |
| <omgdi:waypoint x="700" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0n5urrx_di" bpmnElement="Flow_0n5urrx"> |
| <omgdi:waypoint x="800" y="140" /> |
| <omgdi:waypoint x="835" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0heldi6_di" bpmnElement="Flow_0heldi6"> |
| <omgdi:waypoint x="885" y="140" /> |
| <omgdi:waypoint x="922" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0nou2q0_di" bpmnElement="Flow_0nou2q0"> |
| <omgdi:waypoint x="420" y="115" /> |
| <omgdi:waypoint x="420" y="40" /> |
| <omgdi:waypoint x="310" y="40" /> |
| <omgdi:waypoint x="310" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1m9hwun_di" bpmnElement="Flow_1m9hwun"> |
| <omgdi:waypoint x="860" y="115" /> |
| <omgdi:waypoint x="860" y="40" /> |
| <omgdi:waypoint x="310" y="40" /> |
| <omgdi:waypoint x="310" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1ogbrx6_di" bpmnElement="Flow_1ogbrx6"> |
| <omgdi:waypoint x="640" y="115" /> |
| <omgdi:waypoint x="640" y="40" /> |
| <omgdi:waypoint x="310" y="40" /> |
| <omgdi:waypoint x="310" y="100" /> |
| </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"> |
| <process id="Process_0jtkq8g"> |
| <startEvent id="Event_0fl91v7"> |
| <outgoing>Flow_1ut7uu9</outgoing> |
| </startEvent> |
| <task id="Activity_0pz270f"> |
| <incoming>Flow_1ut7uu9</incoming> |
| <incoming>Flow_0nou2q0</incoming> |
| <incoming>Flow_1m9hwun</incoming> |
| <incoming>Flow_1ogbrx6</incoming> |
| <outgoing>Flow_14n14wf</outgoing> |
| </task> |
| <sequenceFlow id="Flow_1ut7uu9" sourceRef="Event_0fl91v7" targetRef="Activity_0pz270f" /> |
| <exclusiveGateway id="Gateway_1jszj3z"> |
| <incoming>Flow_14n14wf</incoming> |
| <outgoing>Flow_0iav8a3</outgoing> |
| <outgoing>Flow_0nou2q0</outgoing> |
| </exclusiveGateway> |
| <sequenceFlow id="Flow_14n14wf" sourceRef="Activity_0pz270f" targetRef="Gateway_1jszj3z" /> |
| <task id="Activity_0v6ywmg"> |
| <incoming>Flow_0iav8a3</incoming> |
| <outgoing>Flow_1kum4k7</outgoing> |
| </task> |
| <sequenceFlow id="Flow_0iav8a3" sourceRef="Gateway_1jszj3z" targetRef="Activity_0v6ywmg" /> |
| <exclusiveGateway id="Gateway_02ctw3e"> |
| <incoming>Flow_1kum4k7</incoming> |
| <outgoing>Flow_08xxpa3</outgoing> |
| <outgoing>Flow_1ogbrx6</outgoing> |
| </exclusiveGateway> |
| <sequenceFlow id="Flow_1kum4k7" sourceRef="Activity_0v6ywmg" targetRef="Gateway_02ctw3e" /> |
| <task id="Activity_1enrs4s"> |
| <incoming>Flow_08xxpa3</incoming> |
| <outgoing>Flow_0n5urrx</outgoing> |
| </task> |
| <sequenceFlow id="Flow_08xxpa3" sourceRef="Gateway_02ctw3e" targetRef="Activity_1enrs4s" /> |
| <exclusiveGateway id="Gateway_10llakz"> |
| <incoming>Flow_0n5urrx</incoming> |
| <outgoing>Flow_0heldi6</outgoing> |
| <outgoing>Flow_1m9hwun</outgoing> |
| </exclusiveGateway> |
| <sequenceFlow id="Flow_0n5urrx" sourceRef="Activity_1enrs4s" targetRef="Gateway_10llakz" /> |
| <endEvent id="Event_027iw82"> |
| <incoming>Flow_0heldi6</incoming> |
| </endEvent> |
| <sequenceFlow id="Flow_0heldi6" sourceRef="Gateway_10llakz" targetRef="Event_027iw82" /> |
| <sequenceFlow id="Flow_0nou2q0" sourceRef="Gateway_1jszj3z" targetRef="Activity_0pz270f" /> |
| <sequenceFlow id="Flow_1m9hwun" sourceRef="Gateway_10llakz" targetRef="Activity_0pz270f" /> |
| <sequenceFlow id="Flow_1ogbrx6" sourceRef="Gateway_02ctw3e" targetRef="Activity_0pz270f" /> |
| </process> |
| <bpmndi:BPMNDiagram id="BpmnDiagram_1"> |
| <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_0jtkq8g"> |
| <bpmndi:BPMNShape id="Event_0fl91v7_di" bpmnElement="Event_0fl91v7"> |
| <omgdc:Bounds x="192" y="122" width="36" height="36" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0pz270f_di" bpmnElement="Activity_0pz270f"> |
| <omgdc:Bounds x="260" y="100" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_1jszj3z_di" bpmnElement="Gateway_1jszj3z" isMarkerVisible="true"> |
| <omgdc:Bounds x="395" y="115" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0v6ywmg_di" bpmnElement="Activity_0v6ywmg"> |
| <omgdc:Bounds x="480" y="100" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_02ctw3e_di" bpmnElement="Gateway_02ctw3e" isMarkerVisible="true"> |
| <omgdc:Bounds x="615" y="115" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1enrs4s_di" bpmnElement="Activity_1enrs4s"> |
| <omgdc:Bounds x="700" y="100" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_10llakz_di" bpmnElement="Gateway_10llakz" isMarkerVisible="true"> |
| <omgdc:Bounds x="835" y="115" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_027iw82_di" bpmnElement="Event_027iw82"> |
| <omgdc:Bounds x="922" y="122" width="36" height="36" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNEdge id="Flow_1ut7uu9_di" bpmnElement="Flow_1ut7uu9"> |
| <omgdi:waypoint x="228" y="140" /> |
| <omgdi:waypoint x="260" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_14n14wf_di" bpmnElement="Flow_14n14wf"> |
| <omgdi:waypoint x="360" y="140" /> |
| <omgdi:waypoint x="395" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0iav8a3_di" bpmnElement="Flow_0iav8a3"> |
| <omgdi:waypoint x="445" y="140" /> |
| <omgdi:waypoint x="480" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1kum4k7_di" bpmnElement="Flow_1kum4k7"> |
| <omgdi:waypoint x="580" y="140" /> |
| <omgdi:waypoint x="615" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_08xxpa3_di" bpmnElement="Flow_08xxpa3"> |
| <omgdi:waypoint x="665" y="140" /> |
| <omgdi:waypoint x="700" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0n5urrx_di" bpmnElement="Flow_0n5urrx"> |
| <omgdi:waypoint x="800" y="140" /> |
| <omgdi:waypoint x="835" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0heldi6_di" bpmnElement="Flow_0heldi6"> |
| <omgdi:waypoint x="885" y="140" /> |
| <omgdi:waypoint x="922" y="140" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0nou2q0_di" bpmnElement="Flow_0nou2q0"> |
| <omgdi:waypoint x="420" y="115" /> |
| <omgdi:waypoint x="420" y="60" /> |
| <omgdi:waypoint x="330" y="60" /> |
| <omgdi:waypoint x="330" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1m9hwun_di" bpmnElement="Flow_1m9hwun"> |
| <omgdi:waypoint x="860" y="115" /> |
| <omgdi:waypoint x="860" y="20" /> |
| <omgdi:waypoint x="290" y="20" /> |
| <omgdi:waypoint x="290" y="100" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1ogbrx6_di" bpmnElement="Flow_1ogbrx6"> |
| <omgdi:waypoint x="640" y="115" /> |
| <omgdi:waypoint x="640" y="40" /> |
| <omgdi:waypoint x="310" y="40" /> |
| <omgdi:waypoint x="310" y="100" /> |
| </bpmndi:BPMNEdge> |
| </bpmndi:BPMNPlane> |
| </bpmndi:BPMNDiagram> |
| </definitions> |
| </bpmnio> |
===== Примечания ===== | ===== Примечания ===== |
| |
Тут дополнительные комментарии (этот раздел опционален) | Не меняя логику процесса, сходящиеся развилки облегчают ее понимание. |
| |
===== Исключения ===== | |
| |
Исключения из указанного выше правила (если есть) | |
| |
===== Смотри также ===== | ===== Смотри также ===== |
| |
Тут ссылки на страницы со схожим контентом (этот раздел опционален) | * [[do_not_save_on_gateways]] |
===== Автор(ы) ===== | ===== Автор(ы) ===== |
| |
--- //[[user:bell|Anatoly Belaychuk]] 2024-08-24 17:07// | --- //[[user:bell|Anatoly Belaychuk]] 2024-08-24 17:07// |