Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
en:rule:diagram_should_fit_one_page [2024-03-24 15:25] – удалено - внешнее изменение (Дата неизвестна) 127.0.0.1en:rule:diagram_should_fit_one_page [2024-08-27 16:48] (current) – [See also] Anatoly Belaychuk
Line 1: Line 1:
 +====== Diagram should fit one page ======
  
 +{{tag>subprocess}}
 +
 +A good BPMN disgram should fit one A4 paper sheet or one computer screen without scroll and still be readable.
 +
 +===== ✔ How to =====
 +
 +<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_16stgcp">
 +    <startEvent id="Event_1dem57o">
 +      <outgoing>Flow_1dcif3f</outgoing>
 +    </startEvent>
 +    <sequenceFlow id="Flow_1dcif3f" sourceRef="Event_1dem57o" targetRef="Activity_13q6u31" />
 +    <subProcess id="Activity_13q6u31" name="Pre-project analysis">
 +      <incoming>Flow_1dcif3f</incoming>
 +      <outgoing>Flow_0qrzzfj</outgoing>
 +    </subProcess>
 +    <sequenceFlow id="Flow_0qrzzfj" sourceRef="Activity_13q6u31" targetRef="Activity_1x1u04d" />
 +    <subProcess id="Activity_1x1u04d" name="Project Initiation">
 +      <incoming>Flow_0qrzzfj</incoming>
 +      <outgoing>Flow_0f0nixu</outgoing>
 +    </subProcess>
 +    <endEvent id="Event_0j6kcel" name="Not initiated">
 +      <incoming>Flow_1aaaki0</incoming>
 +    </endEvent>
 +    <sequenceFlow id="Flow_1aaaki0" name="no" sourceRef="Gateway_0tsv6pn" targetRef="Event_0j6kcel" />
 +    <sequenceFlow id="Flow_0f0nixu" sourceRef="Activity_1x1u04d" targetRef="Gateway_0tsv6pn" />
 +    <subProcess id="Activity_14e2vph" name="Solution architecture design">
 +      <incoming>Flow_1vc4tx2</incoming>
 +      <incoming>Flow_1yi3b1l</incoming>
 +      <outgoing>Flow_1ttwak6</outgoing>
 +    </subProcess>
 +    <sequenceFlow id="Flow_1ttwak6" sourceRef="Activity_14e2vph" targetRef="Activity_0cqukvg" />
 +    <subProcess id="Activity_0cqukvg" name="Project planning">
 +      <incoming>Flow_1ttwak6</incoming>
 +      <outgoing>Flow_0hztf35</outgoing>
 +    </subProcess>
 +    <endEvent id="Event_1pnoebp" name="Plan rejected">
 +      <incoming>Flow_0pgemys</incoming>
 +    </endEvent>
 +    <sequenceFlow id="Flow_0pgemys" name="no" sourceRef="Gateway_1ootwwo" targetRef="Event_1pnoebp" />
 +    <endEvent id="Event_0rfo8mp" name="Project started">
 +      <incoming>Flow_0mge4um</incoming>
 +    </endEvent>
 +    <sequenceFlow id="Flow_0hztf35" sourceRef="Activity_0cqukvg" targetRef="Gateway_1ootwwo" />
 +    <exclusiveGateway id="Gateway_0tsv6pn" name="OK?">
 +      <incoming>Flow_0f0nixu</incoming>
 +      <outgoing>Flow_1vc4tx2</outgoing>
 +      <outgoing>Flow_1aaaki0</outgoing>
 +    </exclusiveGateway>
 +    <sequenceFlow id="Flow_1vc4tx2" name="yes" sourceRef="Gateway_0tsv6pn" targetRef="Activity_14e2vph" />
 +    <exclusiveGateway id="Gateway_1ootwwo" name="OK?">
 +      <incoming>Flow_0hztf35</incoming>
 +      <outgoing>Flow_0mge4um</outgoing>
 +      <outgoing>Flow_0pgemys</outgoing>
 +      <outgoing>Flow_1yi3b1l</outgoing>
 +    </exclusiveGateway>
 +    <sequenceFlow id="Flow_0mge4um" name="yes" sourceRef="Gateway_1ootwwo" targetRef="Event_0rfo8mp" />
 +    <sequenceFlow id="Flow_1yi3b1l" name="redesign needed" sourceRef="Gateway_1ootwwo" targetRef="Activity_14e2vph" />
 +  </process>
 +  <bpmndi:BPMNDiagram id="BpmnDiagram_1">
 +    <bpmndi:BPMNPlane id="BpmnPlane_1" bpmnElement="Process_16stgcp">
 +      <bpmndi:BPMNShape id="Event_1dem57o_di" bpmnElement="Event_1dem57o">
 +        <omgdc:Bounds x="202" y="62" width="36" height="36" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Activity_0ggb0qk_di" bpmnElement="Activity_13q6u31">
 +        <omgdc:Bounds x="270" y="40" width="100" height="80" />
 +        <bpmndi:BPMNLabel />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Activity_1ixsmam_di" bpmnElement="Activity_1x1u04d">
 +        <omgdc:Bounds x="410" y="40" width="100" height="80" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Event_0j6kcel_di" bpmnElement="Event_0j6kcel">
 +        <omgdc:Bounds x="552" y="172" width="36" height="36" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="541" y="215" width="59" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Activity_0fx8xhx_di" bpmnElement="Activity_14e2vph">
 +        <omgdc:Bounds x="640" y="40" width="100" height="80" />
 +        <bpmndi:BPMNLabel />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Activity_0ot770w_di" bpmnElement="Activity_0cqukvg">
 +        <omgdc:Bounds x="780" y="40" width="100" height="80" />
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Event_1pnoebp_di" bpmnElement="Event_1pnoebp">
 +        <omgdc:Bounds x="922" y="172" width="36" height="36" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="908" y="215" width="65" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Event_0rfo8mp_di" bpmnElement="Event_0rfo8mp">
 +        <omgdc:Bounds x="1012" y="62" width="36" height="36" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="995" y="105" width="71" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Gateway_0tsv6pn_di" bpmnElement="Gateway_0tsv6pn" isMarkerVisible="true">
 +        <omgdc:Bounds x="545" y="55" width="50" height="50" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="558" y="31" width="23" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNShape id="Gateway_1ootwwo_di" bpmnElement="Gateway_1ootwwo" isMarkerVisible="true">
 +        <omgdc:Bounds x="915" y="55" width="50" height="50" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="929" y="112" width="23" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNShape>
 +      <bpmndi:BPMNEdge id="Flow_1dcif3f_di" bpmnElement="Flow_1dcif3f">
 +        <omgdi:waypoint x="238" y="80" />
 +        <omgdi:waypoint x="270" y="80" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_0qrzzfj_di" bpmnElement="Flow_0qrzzfj">
 +        <omgdi:waypoint x="370" y="80" />
 +        <omgdi:waypoint x="410" y="80" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_1aaaki0_di" bpmnElement="Flow_1aaaki0">
 +        <omgdi:waypoint x="570" y="105" />
 +        <omgdi:waypoint x="570" y="172" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="579" y="136" width="13" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_0f0nixu_di" bpmnElement="Flow_0f0nixu">
 +        <omgdi:waypoint x="510" y="80" />
 +        <omgdi:waypoint x="545" y="80" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_1ttwak6_di" bpmnElement="Flow_1ttwak6">
 +        <omgdi:waypoint x="740" y="80" />
 +        <omgdi:waypoint x="780" y="80" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_0pgemys_di" bpmnElement="Flow_0pgemys">
 +        <omgdi:waypoint x="940" y="105" />
 +        <omgdi:waypoint x="940" y="172" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="949" y="136" width="13" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_0hztf35_di" bpmnElement="Flow_0hztf35">
 +        <omgdi:waypoint x="880" y="80" />
 +        <omgdi:waypoint x="915" y="80" />
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_1vc4tx2_di" bpmnElement="Flow_1vc4tx2">
 +        <omgdi:waypoint x="595" y="80" />
 +        <omgdi:waypoint x="640" y="80" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="609" y="62" width="17" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_0mge4um_di" bpmnElement="Flow_0mge4um">
 +        <omgdi:waypoint x="965" y="80" />
 +        <omgdi:waypoint x="1012" y="80" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="980" y="62" width="17" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNEdge>
 +      <bpmndi:BPMNEdge id="Flow_1yi3b1l_di" bpmnElement="Flow_1yi3b1l">
 +        <omgdi:waypoint x="940" y="55" />
 +        <omgdi:waypoint x="940" y="-10" />
 +        <omgdi:waypoint x="690" y="-10" />
 +        <omgdi:waypoint x="690" y="40" />
 +        <bpmndi:BPMNLabel>
 +          <omgdc:Bounds x="878" y="25" width="83" height="14" />
 +        </bpmndi:BPMNLabel>
 +      </bpmndi:BPMNEdge>
 +    </bpmndi:BPMNPlane>
 +  </bpmndi:BPMNDiagram>
 +  <bpmndi:BPMNDiagram id="BPMNDiagram_1s0t4sg">
 +    <bpmndi:BPMNPlane id="BPMNPlane_0b9uyp0" bpmnElement="Activity_13q6u31" />
 +  </bpmndi:BPMNDiagram>
 +  <bpmndi:BPMNDiagram id="BPMNDiagram_1tdecv9">
 +    <bpmndi:BPMNPlane id="BPMNPlane_13426dg" bpmnElement="Activity_1x1u04d" />
 +  </bpmndi:BPMNDiagram>
 +  <bpmndi:BPMNDiagram id="BPMNDiagram_116mihd">
 +    <bpmndi:BPMNPlane id="BPMNPlane_1wcrgsw" bpmnElement="Activity_14e2vph" />
 +  </bpmndi:BPMNDiagram>
 +  <bpmndi:BPMNDiagram id="BPMNDiagram_14rf4el">
 +    <bpmndi:BPMNPlane id="BPMNPlane_0k4ndiq" bpmnElement="Activity_0cqukvg" />
 +  </bpmndi:BPMNDiagram>
 +</definitions>
 +</bpmnio>
 +
 +===== ✘ How NOT to =====
 +
 +{{:en:rule:hugebpmn.png?direct&800|}}
 +
 +===== Notes =====
 +
 +Recommended number of activities on a diagram is up to 7, the maximum is 10.
 +If there are more you either have to print it on several sheets and glue them together or scale it down to one page which makes the diagram unreadable.
 +
 +A recommended approach is to decompose the process into subprocesses and depict each subprocess on a separate page.
 +This way the high-level logic of the end-to-end process is clear while drilling down into subprocesses reveals the details.
 +
 +An alternative method is to split the process into fragments, depict each on a separate page and connect by link events.
 +This is less preferable because the end-to-end process logic cannot be captured at a glance.
 +===== See also =====
 +
 +  * [[single_process]]
 +  * [[horizontal_diagram]]
 +  * [[structured_diagram]]
 +
 +===== Author(s) =====
 +
 + --- //[[user:bell|Anatoly Belaychuk]] 2024-02-24 18:42//