소개
PlantUML은 텍스트 기반 설명으로부터 UML 다이어그램 및 다양한 비UML 다이어그램을 생성하는 오픈소스 도구입니다. 시퀀스 다이어그램, 클래스 다이어그램, 유스케이스 다이어그램 등을 간단한 텍스트로 표현할 수 있으며, Java 기반으로 동작합니다. 공식 웹사이트와 GitHub 저장소를 통해 다운로드 및 문서를 제공하며, GPL-3.0-only 라이선스로 배포됩니다.
상세정보
다양한 UML 다이어그램 지원
PlantUML은 시퀀스 다이어그램, 클래스 다이어그램, 객체 다이어그램, 유스케이스 다이어그램, 액티비티 다이어그램, 컴포넌트 다이어그램, 배포 다이어그램, 상태 다이어그램, 타이밍 다이어그램 등 대부분의 UML 다이어그램 유형을 지원합니다. 각 다이어그램 유형은 공식 웹사이트에서 구체적인 문법과 예시를 제공합니다.
비UML 다이어그램 및 특수 표현 지원
UML 외에도 PlantUML은 JSON, YAML, EBNF, 정규식, 네트워크 다이어그램(nwdiag), 와이어프레임(Salt), 아키메이트(Archimate), SDL, Ditaa, 간트 차트, 연대기, 마인드맵, WBS, ER 다이어그램, 차트, 파일 트리 다이어그램 등을 생성할 수 있습니다. 이는 소프트웨어 아키텍처뿐만 아니라 데이터 모델링, 워크플로우 설계, 문서화 등 다양한 분야에서 활용 가능함을 의미합니다.
하이퍼링크 및 리치 텍스트 지원
생성된 다이어그램에 하이퍼링크와 툴팁을 추가할 수 있으며, Creole 형식의 리치 텍스트를 통해 이모티콘, 유니코드 문자, 아이콘(OpenIconic, Sprite)을 사용할 수 있습니다.これにより 다이어그램의 표현력과 상호작용성이 향상됩니다.
다운로드·설치 방법
PlantUML은 공식 웹사이트(https://plantuml.com)에서 다운로드할 수 있으며, Java가 설치된 시스템에서 실행 가능한 JAR 파일 형태로 제공됩니다. Scoop 패키지 관리자를 통해 scoop install plantuml 명령으로 간편하게 설치할 수 있습니다. 다운로도 배포됩니다. 설치는 JAR 파일을 다운로드하고, Java 실행 환경에서 java -jar plantuml.jar 명령을 실행하는 방식으로 이루어집니다.
기본 사용법/명령어
기본적인 사용법은 다음과 같습니다. 먼저 @startuml로 시작하고, 다이어그램 정의를 입력한 후 @enduml로 끝나는 텍스트 파일을 만듭니다. 예를 들어 시퀀스 다이어그램은 다음과 같이 작성할 수 있습니다:
@startuml Alice -> Bob: Authentication Request Bob --> Alice: Authentication Response @enduml
이 파일을 example.puml로 저장한 후, 터미널에서 java -jar plantuml.jar example.puml 명령을 실행하면 동일한 디렉터리에 example.png 이미지 파일이 생성됩니다. 출력 형식은 파일 확장자를 바꾸어 지정할 수 있으며, -tsvg 옵션을 사용하면 SVG 형식으로 출력할 수 있습니다.
이런 경우에 유용합니다
소프트웨어 아키텍트나 개발자가 시스템 설계를 문서화해야 할 때, PlantUML은 코드처럼 버전 관리 가능한 텍스트 형식으로 다이어그램을 유지할 수 있게 해줍니다. 이는 Git과 같은 저장소에서 다이어그램의 변경 내역을 추적하고, 코드 리뷰 과정에서 설계 사항을 함께 검토하는 데 특히 유용합니다. 또한, 기술 문서나 위키에서 일관된 형식의 다이어그램을 빠르게 생성하고 업데이트해야 하는 팀에게 적합합니다.
지원 환경·시스템 요구사항
PlantUML은 Java 8 이상을 요구하며, Windows, macOS, Linux 등 Java 가상 머신이 설치된 모든 플랫폼에서 실행할 수 있습니다. 그래픽 출력을 위해 Graphviz가 설치되어 있으면 더 복잡한 레이아웃(예: 계층적 다이어그램)의 렌더링 품질이 향상되지만, 필수는 아닙니다. 내부 레이아웃 엔진을 사용해 기본적인 다이어그램 생성은 가능합니다.
최신 버전·업데이트
최신 버전은 1.2026.8이며, 이 버전에서는 JavaScript용 MCP 서버(@plantuml/mcp-js)의 도입으로 AI 어시스턴트가 PlantUML 다이어그램을 생성하고 검증할 수 있는 기능이 추가되었습니다. 또한, GitHub용 공식 브라우저 확장 기능을 통해 웹에서 바로 다이어그램을 미리볼 수 있는 기능이 강화되었습니다. 업데이트 정보는 GitHub 저장소의 릴리스 페이지에서 확인할 수 있습니다.
제한 사항·확인 사항
PlantUML은 텍스트 입력을 기반으로 하므로, 매우 복잡하거나 자유로운 형태의 다이어그램이 필요한 경우 표현에 제한이 있을 수 있습니다. 또한, 일부 고급 레이아웃 기능은 Graphviz에 의존하므로, 최적의 결과를 위해 별도 설치가 권장됩니다. 라이선스는 GPL-3.0-only이지만, 프로젝트에서는 LGPL-3.0, Apache 2.0, EPL-2.0, MIT 등 다중 라이선스 중 선택하여 사용할 수 있도록 안내하고 있습니다. 사용 목적에 따라 적절한 라이선스를 확인하는 것이 필요합니다.
시스템 요구사항
Java 8 이상이 필요하며, 그래픽 출력을 위해 별도의 그래비즈(Graphviz) 설치가 권장됩니다.


