Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия |
ru:rule:disconnected-flows [2024-01-30 01:21] – [Отредактирована диаграмма] Anatoly Belaychuk | ru:rule:disconnected-flows [2024-08-22 20:40] (текущий) – [Несвязанные потоки управления не допускаются] Anatoly Belaychuk |
---|
====== 0-TBD Несвязанные потоки управления не допускаются ====== | ====== Несвязанные потоки управления не допускаются ====== |
| |
{{tag>поток_управления}} | {{tag>поток_управления пул}} |
| |
{{:ru:v_razrabotke.png?nolink&200|}} | |
| |
Тут описание правила | |
| |
| Пул (если это не "черный ящик") изображает целостный поток работ одного процесса. |
===== ✔ Как надо ===== | ===== ✔ Как надо ===== |
| |
<omgdi:waypoint x="480" y="145" /> | <omgdi:waypoint x="480" y="145" /> |
<omgdi:waypoint x="480" y="190" /> | <omgdi:waypoint x="480" y="190" /> |
| </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_0iqa3w4"> |
| <subProcess id="Activity_09kp4hv"> |
| <startEvent id="Event_0p06cx8"> |
| <outgoing>Flow_14yr9cw</outgoing> |
| </startEvent> |
| <sequenceFlow id="Flow_14yr9cw" sourceRef="Event_0p06cx8" targetRef="Gateway_0jjot3n" /> |
| <parallelGateway id="Gateway_0jjot3n"> |
| <incoming>Flow_14yr9cw</incoming> |
| <outgoing>Flow_0pal0rf</outgoing> |
| <outgoing>Flow_1ahf9k9</outgoing> |
| <outgoing>Flow_1bdy9co</outgoing> |
| </parallelGateway> |
| <task id="Activity_1g1octh"> |
| <incoming>Flow_0pal0rf</incoming> |
| <outgoing>Flow_1rsbsvz</outgoing> |
| </task> |
| <sequenceFlow id="Flow_0pal0rf" sourceRef="Gateway_0jjot3n" targetRef="Activity_1g1octh" /> |
| <task id="Activity_17zmcwc"> |
| <incoming>Flow_1ahf9k9</incoming> |
| <outgoing>Flow_0ht242j</outgoing> |
| </task> |
| <sequenceFlow id="Flow_1ahf9k9" sourceRef="Gateway_0jjot3n" targetRef="Activity_17zmcwc" /> |
| <task id="Activity_0lg8asy"> |
| <incoming>Flow_1bdy9co</incoming> |
| <outgoing>Flow_02jnx7f</outgoing> |
| </task> |
| <sequenceFlow id="Flow_1bdy9co" sourceRef="Gateway_0jjot3n" targetRef="Activity_0lg8asy" /> |
| <sequenceFlow id="Flow_0ht242j" sourceRef="Activity_17zmcwc" targetRef="Gateway_03eb39x" /> |
| <parallelGateway id="Gateway_03eb39x"> |
| <incoming>Flow_0ht242j</incoming> |
| <incoming>Flow_02jnx7f</incoming> |
| <incoming>Flow_1rsbsvz</incoming> |
| <outgoing>Flow_1upag9f</outgoing> |
| </parallelGateway> |
| <sequenceFlow id="Flow_02jnx7f" sourceRef="Activity_0lg8asy" targetRef="Gateway_03eb39x" /> |
| <sequenceFlow id="Flow_1rsbsvz" sourceRef="Activity_1g1octh" targetRef="Gateway_03eb39x" /> |
| <endEvent id="Event_1bdrdma"> |
| <incoming>Flow_1upag9f</incoming> |
| </endEvent> |
| <sequenceFlow id="Flow_1upag9f" sourceRef="Gateway_03eb39x" targetRef="Event_1bdrdma" /> |
| </subProcess> |
| </process> |
| <bpmndi:BPMNDiagram id="BpmnDiagram_1"> |
| <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_0iqa3w4"> |
| <bpmndi:BPMNShape id="Activity_09kp4hv_di" bpmnElement="Activity_09kp4hv" isExpanded="true"> |
| <omgdc:Bounds x="270" y="30" width="450" height="380" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_0p06cx8_di" bpmnElement="Event_0p06cx8"> |
| <omgdc:Bounds x="300" y="202" width="36" height="36" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_1t00t6l_di" bpmnElement="Gateway_0jjot3n"> |
| <omgdc:Bounds x="365" y="195" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_17zmcwc_di" bpmnElement="Activity_17zmcwc"> |
| <omgdc:Bounds x="440" y="180" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1g1octh_di" bpmnElement="Activity_1g1octh"> |
| <omgdc:Bounds x="440" y="70" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Gateway_0jzklte_di" bpmnElement="Gateway_03eb39x"> |
| <omgdc:Bounds x="575" y="195" width="50" height="50" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Event_1bdrdma_di" bpmnElement="Event_1bdrdma"> |
| <omgdc:Bounds x="652" y="202" width="36" height="36" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0lg8asy_di" bpmnElement="Activity_0lg8asy"> |
| <omgdc:Bounds x="440" y="290" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNEdge id="Flow_14yr9cw_di" bpmnElement="Flow_14yr9cw"> |
| <omgdi:waypoint x="336" y="220" /> |
| <omgdi:waypoint x="365" y="220" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0pal0rf_di" bpmnElement="Flow_0pal0rf"> |
| <omgdi:waypoint x="390" y="195" /> |
| <omgdi:waypoint x="390" y="110" /> |
| <omgdi:waypoint x="440" y="110" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1ahf9k9_di" bpmnElement="Flow_1ahf9k9"> |
| <omgdi:waypoint x="415" y="220" /> |
| <omgdi:waypoint x="440" y="220" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1bdy9co_di" bpmnElement="Flow_1bdy9co"> |
| <omgdi:waypoint x="390" y="245" /> |
| <omgdi:waypoint x="390" y="330" /> |
| <omgdi:waypoint x="440" y="330" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_0ht242j_di" bpmnElement="Flow_0ht242j"> |
| <omgdi:waypoint x="540" y="220" /> |
| <omgdi:waypoint x="575" y="220" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_02jnx7f_di" bpmnElement="Flow_02jnx7f"> |
| <omgdi:waypoint x="540" y="330" /> |
| <omgdi:waypoint x="600" y="330" /> |
| <omgdi:waypoint x="600" y="245" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1rsbsvz_di" bpmnElement="Flow_1rsbsvz"> |
| <omgdi:waypoint x="540" y="110" /> |
| <omgdi:waypoint x="600" y="110" /> |
| <omgdi:waypoint x="600" y="195" /> |
| </bpmndi:BPMNEdge> |
| <bpmndi:BPMNEdge id="Flow_1upag9f_di" bpmnElement="Flow_1upag9f"> |
| <omgdi:waypoint x="625" y="220" /> |
| <omgdi:waypoint x="652" y="220" /> |
</bpmndi:BPMNEdge> | </bpmndi:BPMNEdge> |
</bpmndi:BPMNPlane> | </bpmndi:BPMNPlane> |
<omgdi:waypoint x="562" y="230" /> | <omgdi:waypoint x="562" y="230" /> |
</bpmndi:BPMNEdge> | </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: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_0as7h54"> |
| <subProcess id="Activity_1n7dwt1"> |
| <task id="Activity_0gegco7" /> |
| <task id="Activity_0zlljal" /> |
| <task id="Activity_1t3yfc3" /> |
| </subProcess> |
| </process> |
| <bpmndi:BPMNDiagram id="BpmnDiagram_1"> |
| <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_0as7h54"> |
| <bpmndi:BPMNShape id="Activity_1n7dwt1_di" bpmnElement="Activity_1n7dwt1" isExpanded="true"> |
| <omgdc:Bounds x="150" y="10" width="200" height="380" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0gegco7_di" bpmnElement="Activity_0gegco7"> |
| <omgdc:Bounds x="200" y="50" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0zlljal_di" bpmnElement="Activity_0zlljal"> |
| <omgdc:Bounds x="200" y="160" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_1t3yfc3_di" bpmnElement="Activity_1t3yfc3"> |
| <omgdc:Bounds x="200" y="270" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
</bpmndi:BPMNPlane> | </bpmndi:BPMNPlane> |
</bpmndi:BPMNDiagram> | </bpmndi:BPMNDiagram> |
| |
===== Примечания ===== | ===== Примечания ===== |
| |
| Хотя спецификация BPMN 2.0 не запрещает несвязные потоки управления в рамках одного пула, это плохая практика. |
| |
| У процесса может быть больше одного начального и больше одного конечного события, но все они должны быть связаны потокам управления в единый поток работ. |
| |
| Подпроцесс "параллельный блок" ("как не надо", внизу) лучше не использовать, а явно показывать параллельное расхождение и схождение ("как надо", внизу). |
| ===== Исключения ===== |
| |
| Подпроцесс "для данного случая" (ad-hoc): |
| |
<bpmnio type="bpmn"> | <bpmnio type="bpmn"> |
<?xml version="1.0" encoding="UTF-8"?> | <?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"> | <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http://www.omg.org/spec/BPMN/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_04qhr60"> | <process id="Process_04qhr60"> |
<subProcess id="Activity_0hvvgum"> | <adHocSubProcess id="Activity_0hvvgum"> |
<task id="Activity_1o88uzt" name="A1" /> | <task id="Activity_1o88uzt" /> |
<task id="Activity_09epmjb" name="B1"> | <task id="Activity_09epmjb" /> |
<outgoing>Flow_0e0mlir</outgoing> | <task id="Activity_06t8j73" /> |
</task> | <task id="Activity_0d33emt" /> |
<task id="Activity_102mcna" name="B2"> | </adHocSubProcess> |
<incoming>Flow_0e0mlir</incoming> | |
</task> | |
<sequenceFlow id="Flow_0e0mlir" sourceRef="Activity_09epmjb" targetRef="Activity_102mcna" /> | |
</subProcess> | |
</process> | </process> |
<bpmndi:BPMNDiagram id="BpmnDiagram_1"> | <bpmndi:BPMNDiagram id="BpmnDiagram_1"> |
<bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_04qhr60"> | <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_04qhr60"> |
<bpmndi:BPMNShape id="Activity_0hvvgum_di" bpmnElement="Activity_0hvvgum" isExpanded="true"> | <bpmndi:BPMNShape id="Activity_054xru4_di" bpmnElement="Activity_0hvvgum" isExpanded="true"> |
<omgdc:Bounds x="310" y="110" width="350" height="270" /> | <omgdc:Bounds x="330" y="110" width="320" height="270" /> |
</bpmndi:BPMNShape> | </bpmndi:BPMNShape> |
<bpmndi:BPMNShape id="Activity_1o88uzt_di" bpmnElement="Activity_1o88uzt"> | <bpmndi:BPMNShape id="Activity_1o88uzt_di" bpmnElement="Activity_1o88uzt"> |
<omgdc:Bounds x="370" y="150" width="100" height="80" /> | <omgdc:Bounds x="370" y="150" width="100" height="80" /> |
<bpmndi:BPMNLabel /> | |
</bpmndi:BPMNShape> | </bpmndi:BPMNShape> |
<bpmndi:BPMNShape id="Activity_09epmjb_di" bpmnElement="Activity_09epmjb"> | <bpmndi:BPMNShape id="Activity_09epmjb_di" bpmnElement="Activity_09epmjb"> |
<omgdc:Bounds x="370" y="260" width="100" height="80" /> | <omgdc:Bounds x="370" y="260" width="100" height="80" /> |
<bpmndi:BPMNLabel /> | |
</bpmndi:BPMNShape> | </bpmndi:BPMNShape> |
<bpmndi:BPMNShape id="Activity_102mcna_di" bpmnElement="Activity_102mcna"> | <bpmndi:BPMNShape id="Activity_06t8j73_di" bpmnElement="Activity_06t8j73"> |
| <omgdc:Bounds x="510" y="150" width="100" height="80" /> |
| </bpmndi:BPMNShape> |
| <bpmndi:BPMNShape id="Activity_0d33emt_di" bpmnElement="Activity_0d33emt"> |
<omgdc:Bounds x="510" y="260" width="100" height="80" /> | <omgdc:Bounds x="510" y="260" width="100" height="80" /> |
<bpmndi:BPMNLabel /> | |
</bpmndi:BPMNShape> | </bpmndi:BPMNShape> |
<bpmndi:BPMNEdge id="Flow_0e0mlir_di" bpmnElement="Flow_0e0mlir"> | |
<omgdi:waypoint x="470" y="300" /> | |
<omgdi:waypoint x="510" y="300" /> | |
</bpmndi:BPMNEdge> | |
</bpmndi:BPMNPlane> | </bpmndi:BPMNPlane> |
</bpmndi:BPMNDiagram> | </bpmndi:BPMNDiagram> |
</definitions> | </definitions> |
</bpmnio> | </bpmnio> |
| |
===== Смотри также ===== | |
| |
Тут ссылки на страницы со схожим контентом (этот раздел опционален) | |
| |
===== Автор(ы) ===== | ===== Автор(ы) ===== |
| |
Тут подпись | --- //[[user:bell|Anatoly Belaychuk]] 2024-02-23 19:05// |