PlantUMLを入れてみた
PlantUMLを使ってUMLを書いてみようと思い、まずはセットアップしたのでメモを残す。
PlantUMLとは?
PlantUMLはUMLダイアグラムを記述するためのオープンソースのツールで、他のツールとの違いはテキストファイルから図を生成するという点。
astah* UMLとか他のツールはマウスを使ってGUIで図を書くのと比べて、PlantUMLはテキストファイルに記述した定義に則って図を生成するというのが違い。
テキストファイルなのでバージョン管理もしやすいし、他のメンバーとのコラボレーションもしやすい。
反面、書き方を覚えないとならないので、イニシャルコストはかかる。
生成する図はPNG(ラスタ画像)やSVG(ベクタ画像)で生成できるので、用途に応じて使い分ける。
生成にはPlantUMLの他にGraphvizというものを使う。
PlantUMLはJavaで書かれているのでクロスプラットフォームだが、Graphvizはネイティブなので各プラットフォームに応じたバイナリを使用する。
PlantUMLのインストール
PlantUMLのダウンロードページからplantuml.jarをダウンロードして適当なフォルダに保存。
Graphvizのインストール
Graphvizのダウンロードページから適したバイナリをダウンロード。
今回はWindows版ZIPファイルをダウンロードして、releaseフォルダの中身をC:\Program Files\graphviz-2.38に展開した。
(C:\Program Files\graphviz-2.38\binに実行ファイルがあるようにした)
インストール後の動作確認
plantuml.jarが置いてあるフォルダでコマンドプロンプトを立ち上げて、以下を実行する。
java -jar plantuml.jar -testdot
PlantUMLとGraphvizがうまく動けば以下のようなメッセージが出るはず。
The environment variable GRAPHVIZ_DOT has not been set Dot executable is c:\Program Files\graphviz-2.38\bin\dot.exe Dot version: dot - graphviz version 2.38.0 (20140413.2041) Installation seems OK. File generation OK
PlantUMLの動作確認
plantuml.jarと同じところにsample.txtを作成。
内容は以下の通り。
@startuml Class1 -> Class2 : 処理A Class1 <-- Class2 @enduml
Class1から「処理A」というメッセージを送って、Class2から返ってくるという、簡単なシーケンス図。
plantuml.jarが置いてあるフォルダでコマンドプロンプトを立ち上げて、以下を実行する。
java -jar plantuml.jar sample.txt
すると下記のPNGファイル(sample.png)が生成される。
既定値ではPNGが作成されるので、明示的にPNGを生成したい場合は下記で実行する。
java -jar plantuml.jar -tpng sample.txt
SVGで出力したい場合、-tsvgを指定する。
java -jar plantuml.jar -tsvg sample.txt
PlantUMLの書き方
日本語リファレンスがあるので、これを参考に書いてみよう。