Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
ru:rule:alternative_paths [2024-08-25 14:16] – [✔ Как надо] Anatoly Belaychukru:rule:alternative_paths [2024-08-25 15:11] (текущий) – [Моделируйте альтернативные маршруты с помощью расходящейся и сходящейся развилки "или-или"] Anatoly Belaychuk
Строка 1: Строка 1:
-====== 0-TBD Моделируйте альтернативные маршруты с помощью расходящейся и сходящейся развилки ======+====== Моделируйте альтернативные маршруты с помощью расходящейся и сходящейся развилки "или-или" ======
  
 {{tag>развилка_или-или}} {{tag>развилка_или-или}}
  
-{{:ru:v_razrabotke.png?nolink&200|}} +Не поддавайтесь соблазну сэкономить на сходящихся или на расходящихся (с помощью условных потоков управления) развилках.
- +
-Тут описание правила +
 ===== ✔ Как надо ===== ===== ✔ Как надо =====
  
Строка 189: Строка 186:
     </task>     </task>
     <sequenceFlow id="Flow_1fsbtjl" sourceRef="Activity_1shfyzv" targetRef="Gateway_0appi3v" />     <sequenceFlow id="Flow_1fsbtjl" sourceRef="Activity_1shfyzv" targetRef="Gateway_0appi3v" />
-    <sequenceFlow id="Flow_1twaw3g" sourceRef="Gateway_0appi3v" targetRef="Event_0fnzbqy" /> +    <sequenceFlow id="Flow_1twaw3g" sourceRef="Gateway_0appi3v" targetRef="Gateway_0x870iy" /> 
-    <sequenceFlow id="Flow_023qygd" sourceRef="Activity_0g79paa" targetRef="Event_0fnzbqy" />+    <sequenceFlow id="Flow_023qygd" sourceRef="Activity_0g79paa" targetRef="Gateway_0x870iy" />
     <endEvent id="Event_0fnzbqy">     <endEvent id="Event_0fnzbqy">
 +      <incoming>Flow_0f0lz4l</incoming>
 +    </endEvent>
 +    <exclusiveGateway id="Gateway_0x870iy">
       <incoming>Flow_1twaw3g</incoming>       <incoming>Flow_1twaw3g</incoming>
       <incoming>Flow_023qygd</incoming>       <incoming>Flow_023qygd</incoming>
-    </endEvent>+      <outgoing>Flow_0f0lz4l</outgoing> 
 +    </exclusiveGateway> 
 +    <sequenceFlow id="Flow_0f0lz4l" sourceRef="Gateway_0x870iy" targetRef="Event_0fnzbqy" />
   </process>   </process>
   <bpmndi:BPMNDiagram id="BpmnDiagram_1">   <bpmndi:BPMNDiagram id="BpmnDiagram_1">
Строка 206: Строка 208:
       <bpmndi:BPMNShape id="Activity_1shfyzv_di" bpmnElement="Activity_1shfyzv">       <bpmndi:BPMNShape id="Activity_1shfyzv_di" bpmnElement="Activity_1shfyzv">
         <omgdc:Bounds x="50" y="100" width="100" height="80" />         <omgdc:Bounds x="50" y="100" width="100" height="80" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Gateway_0x870iy_di" bpmnElement="Gateway_0x870iy" isMarkerVisible="true">
 +        <omgdc:Bounds x="415" y="115" width="50" height="50" />
       </bpmndi:BPMNShape>       </bpmndi:BPMNShape>
       <bpmndi:BPMNShape id="Event_0fnzbqy_di" bpmnElement="Event_0fnzbqy">       <bpmndi:BPMNShape id="Event_0fnzbqy_di" bpmnElement="Event_0fnzbqy">
-        <omgdc:Bounds x="422" y="122" width="36" height="36" />+        <omgdc:Bounds x="502" y="122" width="36" height="36" />
       </bpmndi:BPMNShape>       </bpmndi:BPMNShape>
       <bpmndi:BPMNEdge id="Flow_11o7ju9_di" bpmnElement="Flow_11o7ju9">       <bpmndi:BPMNEdge id="Flow_11o7ju9_di" bpmnElement="Flow_11o7ju9">
Строка 221: Строка 226:
       <bpmndi:BPMNEdge id="Flow_1twaw3g_di" bpmnElement="Flow_1twaw3g">       <bpmndi:BPMNEdge id="Flow_1twaw3g_di" bpmnElement="Flow_1twaw3g">
         <omgdi:waypoint x="245" y="140" />         <omgdi:waypoint x="245" y="140" />
-        <omgdi:waypoint x="422" y="140" />+        <omgdi:waypoint x="415" y="140" />
       </bpmndi:BPMNEdge>       </bpmndi:BPMNEdge>
       <bpmndi:BPMNEdge id="Flow_023qygd_di" bpmnElement="Flow_023qygd">       <bpmndi:BPMNEdge id="Flow_023qygd_di" bpmnElement="Flow_023qygd">
         <omgdi:waypoint x="380" y="50" />         <omgdi:waypoint x="380" y="50" />
         <omgdi:waypoint x="440" y="50" />         <omgdi:waypoint x="440" y="50" />
-        <omgdi:waypoint x="440" y="122" />+        <omgdi:waypoint x="440" y="115" /> 
 +      </bpmndi:BPMNEdge> 
 +      <bpmndi:BPMNEdge id="Flow_0f0lz4l_di" bpmnElement="Flow_0f0lz4l"> 
 +        <omgdi:waypoint x="465" y="140" /> 
 +        <omgdi:waypoint x="502" y="140" />
       </bpmndi:BPMNEdge>       </bpmndi:BPMNEdge>
     </bpmndi:BPMNPlane>     </bpmndi:BPMNPlane>
Строка 233: Строка 242:
 </bpmnio> </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_0ovu1hu">
 +    <task id="Activity_1ku6n5f">
 +      <incoming>Flow_1j6103k</incoming>
 +      <outgoing>Flow_0m1z45m</outgoing>
 +    </task>
 +    <sequenceFlow id="Flow_1j6103k" sourceRef="Activity_0aev496" targetRef="Activity_1ku6n5f">
 +      <conditionExpression xsi:type="tFormalExpression"></conditionExpression>
 +    </sequenceFlow>
 +    <task id="Activity_0g79paa">
 +      <incoming>Flow_11o7ju9</incoming>
 +      <outgoing>Flow_0i6zvo4</outgoing>
 +    </task>
 +    <sequenceFlow id="Flow_11o7ju9" sourceRef="Activity_0aev496" targetRef="Activity_0g79paa">
 +      <conditionExpression xsi:type="tFormalExpression"></conditionExpression>
 +    </sequenceFlow>
 +    <exclusiveGateway id="Gateway_1690982">
 +      <incoming>Flow_0i6zvo4</incoming>
 +      <incoming>Flow_0m1z45m</incoming>
 +      <outgoing>Flow_1ei1tah</outgoing>
 +    </exclusiveGateway>
 +    <sequenceFlow id="Flow_0i6zvo4" sourceRef="Activity_0g79paa" targetRef="Gateway_1690982" />
 +    <sequenceFlow id="Flow_0m1z45m" sourceRef="Activity_1ku6n5f" targetRef="Gateway_1690982" />
 +    <task id="Activity_17g79ka">
 +      <incoming>Flow_1ei1tah</incoming>
 +    </task>
 +    <sequenceFlow id="Flow_1ei1tah" sourceRef="Gateway_1690982" targetRef="Activity_17g79ka" />
 +    <task id="Activity_0aev496">
 +      <outgoing>Flow_11o7ju9</outgoing>
 +      <outgoing>Flow_1j6103k</outgoing>
 +    </task>
 +  </process>
 +  <bpmndi:BPMNDiagram id="BpmnDiagram_1">
 +    <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_0ovu1hu">
 +      <bpmndi:BPMNShape id="Activity_1ku6n5f_di" bpmnElement="Activity_1ku6n5f">
 +        <omgdc:Bounds x="280" y="190" width="100" height="80" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Activity_0g79paa_di" bpmnElement="Activity_0g79paa">
 +        <omgdc:Bounds x="280" y="10" width="100" height="80" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Gateway_1690982_di" bpmnElement="Gateway_1690982" isMarkerVisible="true">
 +        <omgdc:Bounds x="415" y="115" width="50" height="50" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Activity_17g79ka_di" bpmnElement="Activity_17g79ka">
 +        <omgdc:Bounds x="500" y="100" width="100" height="80" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Activity_0aev496_di" bpmnElement="Activity_0aev496">
 +        <omgdc:Bounds x="140" y="100" width="100" height="80" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNEdge id="Flow_1j6103k_di" bpmnElement="Flow_1j6103k">
 +        <omgdi:waypoint x="190" y="180" />
 +        <omgdi:waypoint x="190" y="230" />
 +        <omgdi:waypoint x="280" y="230" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_11o7ju9_di" bpmnElement="Flow_11o7ju9">
 +        <omgdi:waypoint x="190" y="100" />
 +        <omgdi:waypoint x="190" y="50" />
 +        <omgdi:waypoint x="280" y="50" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_0i6zvo4_di" bpmnElement="Flow_0i6zvo4">
 +        <omgdi:waypoint x="380" y="50" />
 +        <omgdi:waypoint x="440" y="50" />
 +        <omgdi:waypoint x="440" y="115" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_0m1z45m_di" bpmnElement="Flow_0m1z45m">
 +        <omgdi:waypoint x="380" y="230" />
 +        <omgdi:waypoint x="440" y="230" />
 +        <omgdi:waypoint x="440" y="165" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_1ei1tah_di" bpmnElement="Flow_1ei1tah">
 +        <omgdi:waypoint x="465" y="140" />
 +        <omgdi:waypoint x="500" y="140" />
 +      </bpmndi:BPMNEdge>
 +    </bpmndi:BPMNPlane>
 +  </bpmndi:BPMNDiagram>
 +</definitions>
 +</bpmnio>
  
 <bpmnio type="bpmn"> <bpmnio type="bpmn">
Строка 433: Строка 522:
 </definitions> </definitions>
 </bpmnio> </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_0ovu1hu"> 
-Исключения из указанного выше правила (если есть)+    <exclusiveGateway id="Gateway_0appi3v"> 
 +      <incoming>Flow_1fsbtjl</incoming> 
 +      <outgoing>Flow_11o7ju9</outgoing> 
 +      <outgoing>Flow_1twaw3g</outgoing> 
 +    </exclusiveGateway> 
 +    <task id="Activity_0g79paa"> 
 +      <incoming>Flow_11o7ju9</incoming> 
 +      <outgoing>Flow_08k1716</outgoing> 
 +    </task> 
 +    <sequenceFlow id="Flow_11o7ju9" sourceRef="Gateway_0appi3v" targetRef="Activity_0g79paa" /> 
 +    <task id="Activity_1shfyzv"> 
 +      <outgoing>Flow_1fsbtjl</outgoing> 
 +    </task> 
 +    <sequenceFlow id="Flow_1fsbtjl" sourceRef="Activity_1shfyzv" targetRef="Gateway_0appi3v" /> 
 +    <sequenceFlow id="Flow_1twaw3g" sourceRef="Gateway_0appi3v" targetRef="Event_0fnzbqy" /> 
 +    <endEvent id="Event_0fnzbqy"> 
 +      <incoming>Flow_1twaw3g</incoming> 
 +    </endEvent> 
 +    <endEvent id="Event_1pl2djm"> 
 +      <incoming>Flow_08k1716</incoming> 
 +    </endEvent> 
 +    <sequenceFlow id="Flow_08k1716" sourceRef="Activity_0g79paa" targetRef="Event_1pl2djm" /> 
 +  </process> 
 +  <bpmndi:BPMNDiagram id="BpmnDiagram_1"> 
 +    <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_0ovu1hu"> 
 +      <bpmndi:BPMNShape id="Gateway_0appi3v_di" bpmnElement="Gateway_0appi3v" isMarkerVisible="true"> 
 +        <omgdc:Bounds x="195" y="115" width="50" height="50" /> 
 +      </bpmndi:BPMNShape> 
 +      <bpmndi:BPMNShape id="Activity_0g79paa_di" bpmnElement="Activity_0g79paa"> 
 +        <omgdc:Bounds x="280" y="10" width="100" height="80" /> 
 +      </bpmndi:BPMNShape> 
 +      <bpmndi:BPMNShape id="Activity_1shfyzv_di" bpmnElement="Activity_1shfyzv"> 
 +        <omgdc:Bounds x="50" y="100" width="100" height="80" /> 
 +      </bpmndi:BPMNShape> 
 +      <bpmndi:BPMNShape id="Event_0fnzbqy_di" bpmnElement="Event_0fnzbqy"> 
 +        <omgdc:Bounds x="422" y="122" width="36" height="36" /> 
 +      </bpmndi:BPMNShape> 
 +      <bpmndi:BPMNShape id="Event_1pl2djm_di" bpmnElement="Event_1pl2djm"> 
 +        <omgdc:Bounds x="422" y="32" width="36" height="36" /> 
 +      </bpmndi:BPMNShape> 
 +      <bpmndi:BPMNEdge id="Flow_11o7ju9_di" bpmnElement="Flow_11o7ju9"> 
 +        <omgdi:waypoint x="220" y="115" /> 
 +        <omgdi:waypoint x="220" y="50" /> 
 +        <omgdi:waypoint x="280" y="50" /> 
 +      </bpmndi:BPMNEdge> 
 +      <bpmndi:BPMNEdge id="Flow_1fsbtjl_di" bpmnElement="Flow_1fsbtjl"> 
 +        <omgdi:waypoint x="150" y="140" /> 
 +        <omgdi:waypoint x="195" y="140" /> 
 +      </bpmndi:BPMNEdge> 
 +      <bpmndi:BPMNEdge id="Flow_1twaw3g_di" bpmnElement="Flow_1twaw3g"> 
 +        <omgdi:waypoint x="245" y="140" /> 
 +        <omgdi:waypoint x="422" y="140" /> 
 +      </bpmndi:BPMNEdge> 
 +      <bpmndi:BPMNEdge id="Flow_08k1716_di" bpmnElement="Flow_08k1716"> 
 +        <omgdi:waypoint x="380" y="50" /> 
 +        <omgdi:waypoint x="422" y="50" /> 
 +      </bpmndi:BPMNEdge> 
 +    </bpmndi:BPMNPlane> 
 +  </bpmndi:BPMNDiagram> 
 +</definitions> 
 +</bpmnio> 
 +===== Примечания =====
  
 +Комбинация расходящейся развилки, сходящаяся развилки и альтернативных маршрутов между ними образуют структурный блок, который воспринимается без усилий и без ошибок.
 ===== Смотри также ===== ===== Смотри также =====