유스케이스 다이어그램 (Use Case Diagram)

사용자와 시스템 기능 사이의 관계를 보여주는 다이어그램이다. UDS 진단 기능을 예시로 작성했다.

유스케이스 다이어그램 (Use Case Diagram)

Draw.io 원문

<mxfile host="65bd71144e">
    <diagram name="UDS Use Case Diagram" id="uds-usecase">
        <mxGraphModel dx="1081" dy="577" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1400" pageHeight="900" math="0" shadow="0">
            <root>
                <mxCell id="0"/>
                <mxCell id="1" parent="0"/>
                <mxCell id="10" value="UDS Diagnostic System" style="rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeColor=#666666;fontSize=14;fontStyle=1;verticalAlign=top;align=center;dashed=1;dashPattern=8 8;" parent="1" vertex="1">
                    <mxGeometry x="320" y="100" width="760" height="970" as="geometry"/>
                </mxCell>
                <mxCell id="20" value="" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;fillColor=#dae8fc;strokeColor=#6c8ebf;" parent="1" vertex="1">
                    <mxGeometry x="150" y="250" width="60" height="120" as="geometry"/>
                </mxCell>
                <mxCell id="21" value="Tester" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=top;fontSize=12;fontStyle=1" parent="1" vertex="1">
                    <mxGeometry x="150" y="380" width="60" height="20" as="geometry"/>
                </mxCell>
                <mxCell id="30" value="" style="shape=umlActor;verticalLabelPosition=bottom;verticalAlign=top;html=1;outlineConnect=0;fillColor=#d5e8d4;strokeColor=#82b366;" parent="1" vertex="1">
                    <mxGeometry x="1180" y="180" width="60" height="120" as="geometry"/>
                </mxCell>
                <mxCell id="31" value="&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;Vehicle Network&lt;/span&gt;" style="text;html=1;strokeColor=none;fillColor=none;align=center;verticalAlign=top;fontSize=12;fontStyle=1" parent="1" vertex="1">
                    <mxGeometry x="1175" y="310" width="70" height="20" as="geometry"/>
                </mxCell>
                <mxCell id="100" value="Session Control&lt;br&gt;(0x10)" style="ellipse;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11;" parent="1" vertex="1">
                    <mxGeometry x="600" y="200" width="140" height="80" as="geometry"/>
                </mxCell>
                <mxCell id="110" value="Security Access&lt;br&gt;(0x27)" style="ellipse;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11;" parent="1" vertex="1">
                    <mxGeometry x="600" y="350" width="140" height="80" as="geometry"/>
                </mxCell>
                <mxCell id="120" value="Read Data by ID&lt;br&gt;(0x22)" style="ellipse;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11;" parent="1" vertex="1">
                    <mxGeometry x="600" y="450" width="140" height="80" as="geometry"/>
                </mxCell>
                <mxCell id="130" value="Write Data by ID&lt;br&gt;(0x2E)" style="ellipse;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11;" parent="1" vertex="1">
                    <mxGeometry x="600" y="970" width="140" height="80" as="geometry"/>
                </mxCell>
                <mxCell id="140" value="Read DTC&lt;br&gt;Information&lt;br&gt;(0x19)" style="ellipse;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11;" parent="1" vertex="1">
                    <mxGeometry x="600" y="660" width="140" height="80" as="geometry"/>
                </mxCell>
                <mxCell id="160" value="Routine Control&lt;br&gt;(0x31)" style="ellipse;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11;" parent="1" vertex="1">
                    <mxGeometry x="600" y="540" width="140" height="80" as="geometry"/>
                </mxCell>
                <mxCell id="170" value="ECU Reset&lt;br&gt;(0x11)" style="ellipse;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11;" parent="1" vertex="1">
                    <mxGeometry x="600" y="770" width="140" height="80" as="geometry"/>
                </mxCell>
                <mxCell id="210" value="Flash&lt;br&gt;Programming" style="ellipse;whiteSpace=wrap;html=1;fillColor=#e1d5e7;strokeColor=#9673a6;fontSize=11;" parent="1" vertex="1">
                    <mxGeometry x="600" y="865" width="140" height="80" as="geometry"/>
                </mxCell>
                <mxCell id="300" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=1;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="20" target="100" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="301" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=1;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="20" target="110" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="302" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=1;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="20" target="120" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="303" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=1;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="20" target="130" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="304" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=1;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="20" target="140" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="306" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=1;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="20" target="160" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="307" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=1;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="20" target="170" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="309" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=1;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="20" target="210" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="400" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=0;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="30" target="130" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="401" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=0;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="30" target="170" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="402" value="" style="endArrow=none;html=1;strokeWidth=1;strokeColor=#666666;exitX=0;exitY=0.3;exitDx=0;exitDy=0;exitPerimeter=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;" parent="1" source="30" target="210" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
                <mxCell id="600" value="" style="edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;endArrow=open;strokeWidth=1;strokeColor=#666666;dashed=1;dashPattern=4 4;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;" parent="1" source="110" target="100" edge="1">
                    <mxGeometry width="50" height="50" relative="1" as="geometry">
                        <mxPoint x="600" y="500" as="sourcePoint"/>
                        <mxPoint x="650" y="450" as="targetPoint"/>
                    </mxGeometry>
                </mxCell>
            </root>
        </mxGraphModel>
    </diagram>
</mxfile>

Comments

댓글을 불러오고 있습니다.