##UML作成ツールは数々ありますが
ちょっとクラス図書くだけだし、レイアウトはいい感じにしてくれないかなあ。
なんて要望に応えるべく、便利なツールを揃えたいと思います。
モデリングツールは持っているけど、プロジェクトメンバーとかクライアント全員は持ってなかったりで結局画像ファイルで配ってるんだよなあ、という場合にも良いかなと。
ツールってたくさんありますが・・[Wikipediaでツール比較]
(https://en.wikipedia.org/wiki/List_of_Unified_Modeling_Language_tools)
さくっとかけて、できればgitでバージョン管理も。
→「テキストでUML描けたらいいんじゃない?」
→ PlantUMLが便利そう。
ATOMのPlantUMLプラグインを使えば、Previewしながら書けるらしい。
AtomとPlantUMLで爆速UMLモデリング を参考にさせていただき、Macに環境を整えました。
##環境
- macOS Sierra 10.12.5
- Atom 1.18.0
##前提ソフトウェア
以下は別途準備されている想定です。
- Java (PlantUMLプラグインが使用するGraphvizの動作に必要)
- Homebrew (Graphvizの導入に使用)
##セットアップ
###graphviz
Homebrewでインストールします。
$ brew install graphviz
インストールできたかチェック。
$ dot -V
dot - graphviz version 2.40.1 (20161225.0304)
ちょっと横道にそれますが、Graphvizの使い方はこちらに大変詳しくまとまってます。
Graphvizとdot言語でグラフを描く方法のまとめ
###PlantUML
Atomのプラグインに含まれているのでスキップ可能です。
ただコマンドから出力する際には必要なので、以下から単体のjarファイルのダウンロードをしておきます。
http://plantuml.com/download
jQueryのプラグインなんかもあるみたいですね。
###Atom PlantUMLプラグイン
Atomのパッケージ管理プログラムのapmを使用し、プレビューのためのplantuml-vieweとエディタでハイライト表示するためのlanguage-plantumlを導入します。
$ apm install plantuml-viewer
Installing plantuml-viewer to /Users/hiroshi/.atom/packages ✓
$ apm install language-plantuml
Installing language-plantuml to /Users/hiroshi/.atom/packages ✓
##実行
PlatUMLのDSLでモデルを記述し保存します。
@startuml
Alice -> Bob: test
@enduml
日本語大丈夫。特に文字化けもありません。
@startuml
class ユーザー {
ユーザー名
パスワード
+ログイン()
}
class グループ {
グループ名
}
class メンバー {
役割
}
ユーザー .. メンバー
グループ .. メンバー
@enduml
ただ、時折変なエラーに遭遇します。どうも日本語入力状態で、Ctrl+Alt+Pを打つと、見えない文字が入力されてしまう模様。見えない文字を削除すればエラーは解消されます。。
参考資料
- PlantUML : 公式サイト。
- PlantUML Cheat Sheet - Qiita : PlantUML記法のまとめ。
- [AtomとPlantUMLで爆速UMLモデリング - Qiita] (http://qiita.com/nakahashi/items/3d88655f055ca6a2617c) : 参考サイト。