본문 바로가기
Concepts/UML

UML - 배치 다이어그램

by ocwokocw 2021. 2. 10.

- 이 글은 UML Distilled (마틴 파울러)책을 기반으로 작성하였습니다.

- 배치 다이어그램(Deployment Diagrams)

여기서 말하는 배치는 Batch가 아닌 Deployment 이다. 시스템의 물리적인 구조를 보여주며, 어떤 소프트웨어가 어떤 하드웨어에서 동작하고 있는지를 보여준다.

 

우선 배치다이어그램의 요소에 대해서 알아보자.

  • 노드(node): 소프트웨어를 실행할 수 있는 어떤 것. 노드에는 두 가지 형태가 있는데 장치(device)는 하드웨어이며, 컴퓨터나 시스템과 연결된 더 단순한 하드웨어들이 있다.
  • 실행 환경(execution environment): 스스로 실행하거나 다른 소프트웨어를 포함하는 소프트웨어이다. (ex - 운영체제, 컨테이너 프로세스)
  • 아티팩트(artifact): 노드에 포함되며, 소프트웨어의 물리적인 모습이다. 보통은 파일을 말한다. 클래스 상자로 보여주거나 이름을 나열하여 포현하는데, 문서 아이콘 상자나 <<artifact>> 키워드를 붙인다. (ex - .exe, .bin, DLL, JAR, 어셈블리, 스크립트, 데이터파일, 환경설정 파일, HTML 문서)
  • 통신경로: 여러 노드가 어떻게 통신하는지를 보여준다. 해당 경로에 프로토콜에 대한 정보를 표시하기도 한다.

다이어그램을 보면서 표기법을 하나씩 살펴보자. BrowserClient, RichClient, Webserver, Application Server 상자는 노드이다. 그리고 각 노드간에 통신경로로 선을 이었고 프로토콜을 표시하였다.

 

아티팩트는 JavaGL.exe 처럼 문서 모양이거나 기타 다른 노드안에 list 처럼 두 가지 표기로 나타난다. StarUML 에서 노드안에 list 형으로 표시하려면 일단 Artifact 모델을 만든 후, 노드를 클릭하여 DeploymentArtifacts 로 해당 Artifact를 선택해야 list 형으로 표시할 수 있다.

 

각 노드안에 태그는 제조사나 사양을 나타내며 표준은 딱히 없다. 노드가 아니라 Artifact 에도 태그를 붙이는데, 이는 컴포넌트를 태그로 나타내기도 한다.


- 배치다이어그램의 용도

배치다이어그램은 이것만 알면 모든 내용을 숙지한것이다. 그러나 별 내용이 없다고 해서 중요하지 않은것은 아니다. 무엇이 어디에 배치되는지를 보여주며, 배치작업이 복잡해지면 유용하게 사용할 수 있다.

댓글