Files
simply_cpq/documentation/01_general/Architekturmodell.drawio
T
2026-07-23 10:51:40 +02:00

94 lines
9.4 KiB
Plaintext

<mxfile host="Electron">
<diagram name="Seite-1" id="9Zxhygs23LEFz1mY9FFR">
<mxGraphModel dx="861" dy="536" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="827" pageHeight="1169" math="0" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="6vCj93C7Czp6OVA-g9T0-1" parent="1" style="text;html=1;whiteSpace=wrap;overflow=hidden;rounded=0;" value="&lt;h1 style=&quot;margin-top: 0px;&quot;&gt;Architektur Simply CPQ&amp;nbsp;&lt;/h1&gt;&lt;div&gt;V0.1 - 2026.07.23&lt;/div&gt;&lt;p&gt;In diesem Diagram wird die grundlegende Architektur von Simply CPQ beschrieben.&lt;/p&gt;&lt;p&gt;Die Lösung besteht aus zwei Applikationen:&amp;nbsp;&lt;br&gt;&lt;span style=&quot;background-color: transparent; color: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));&quot;&gt;- Simply CPQ Logical Editor (Datenpflege und Importe)&lt;br&gt;- Simply CPQ Quote Editor (Angebotserstellung)&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;" vertex="1">
<mxGeometry height="170" width="320" x="40" y="40" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-13" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-3" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=classicThin;startFill=1;" target="6vCj93C7Czp6OVA-g9T0-4">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-3" parent="1" style="html=1;strokeWidth=2;shape=manualInput;boundedLbl=1;whiteSpace=wrap;rounded=1;size=26;arcSize=11;" value="Logical Editor&lt;div&gt;Datenpflege&lt;/div&gt;" vertex="1">
<mxGeometry height="60" width="100" x="90" y="290" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-14" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-4" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.25;entryY=0;entryDx=0;entryDy=0;startArrow=classicThin;startFill=1;" target="6vCj93C7Czp6OVA-g9T0-5">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-4" parent="1" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=default;align=center;verticalAlign=middle;fontFamily=Helvetica;fontSize=12;fontColor=default;fillColor=default;" value="Logical Editor&amp;nbsp;&lt;div&gt;HTTP-Controller&lt;/div&gt;" vertex="1">
<mxGeometry height="60" width="120" x="80" y="390" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-15" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-5" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=0.25;entryY=0;entryDx=0;entryDy=0;startArrow=classicThin;startFill=1;" target="6vCj93C7Czp6OVA-g9T0-6">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-21" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-5" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0.75;entryY=0;entryDx=0;entryDy=0;startArrow=classicThin;startFill=1;" target="6vCj93C7Czp6OVA-g9T0-6">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-5" parent="1" style="rounded=0;whiteSpace=wrap;html=1;" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent; color: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));&quot;&gt;Service layer&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="60" width="520" x="80" y="480" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-6" parent="1" style="rounded=0;whiteSpace=wrap;html=1;" value="Repository Layer" vertex="1">
<mxGeometry height="60" width="520" x="80" y="570" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-20" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-7" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.75;entryY=0;entryDx=0;entryDy=0;startArrow=classicThin;startFill=1;" target="6vCj93C7Czp6OVA-g9T0-5">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-7" parent="1" style="rounded=0;whiteSpace=wrap;html=1;strokeColor=default;align=center;verticalAlign=middle;fontFamily=Helvetica;fontSize=12;fontColor=default;fillColor=default;" value="Quote Editor&amp;nbsp;&lt;div&gt;HTTP-Controller&lt;/div&gt;" vertex="1">
<mxGeometry height="60" width="120" x="480" y="390" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-18" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-8" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;startArrow=classicThin;startFill=1;" target="6vCj93C7Czp6OVA-g9T0-7">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-8" parent="1" style="html=1;strokeWidth=2;shape=manualInput;boundedLbl=1;whiteSpace=wrap;rounded=1;size=26;arcSize=11;" value="Quote Editor&lt;div&gt;Frontend&lt;/div&gt;" vertex="1">
<mxGeometry height="60" width="100" x="490" y="290" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-9" parent="1" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;" value="Document&lt;div&gt;Templates&lt;/div&gt;" vertex="1">
<mxGeometry height="80" width="60" x="640" y="380" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-10" parent="1" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;" value="Master Data" vertex="1">
<mxGeometry height="80" width="60" x="110" y="670" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-17" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-11" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.75;entryY=1;entryDx=0;entryDy=0;" target="6vCj93C7Czp6OVA-g9T0-6">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-11" parent="1" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;" value="Master Data" vertex="1">
<mxGeometry height="80" width="60" x="420" y="670" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-12" parent="1" style="shape=cylinder3;whiteSpace=wrap;html=1;boundedLbl=1;backgroundOutline=1;size=15;" value="Runtime Data" vertex="1">
<mxGeometry height="80" width="60" x="540" y="670" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-16" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-6" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.25;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;startArrow=classicThin;startFill=1;" target="6vCj93C7Czp6OVA-g9T0-10">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-22" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-6" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;entryPerimeter=0;startArrow=classicThin;startFill=1;" target="6vCj93C7Czp6OVA-g9T0-12">
<mxGeometry relative="1" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-23" edge="1" parent="1" source="6vCj93C7Czp6OVA-g9T0-10" style="shape=flexArrow;endArrow=classic;html=1;rounded=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;entryPerimeter=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;exitPerimeter=0;" target="6vCj93C7Czp6OVA-g9T0-11" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="230" y="730" as="sourcePoint" />
<mxPoint x="280" y="680" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-24" connectable="0" parent="6vCj93C7Czp6OVA-g9T0-23" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];" value="Replicate" vertex="1">
<mxGeometry relative="1" x="-0.168" y="-1" as="geometry">
<mxPoint y="1" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-25" edge="1" parent="1" style="endArrow=none;dashed=1;html=1;dashPattern=1 3;strokeWidth=2;rounded=0;" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="340" y="750" as="sourcePoint" />
<mxPoint x="340" y="280" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-26" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="Build-Time" vertex="1">
<mxGeometry height="30" width="60" x="220" y="320" as="geometry" />
</mxCell>
<mxCell id="6vCj93C7Czp6OVA-g9T0-27" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="Runtime" vertex="1">
<mxGeometry height="30" width="60" x="370" y="320" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>