PlantUMLテンプレート集

PlantUMLというオープンソースのUML描画ツールがあります。かなり優秀で、簡単なコーディングをするだけで図を作成できます。

PlantUMLのメリット

PlantUMLを使うメリットはたくさんあります。個人的に特にメリットだと思う点をあげてみます。

バージョン管理が容易

画像データでのバージョン管理は難易度が高いですが、PlantUMLの実態はコード(文字列)なので、管理が容易です。また、コメントを付けるなどして、変更点を示せることも大きなメリットです。

画像の差分チェックが容易

画像データ同士の差分(違い、変更点)を探すのは大変です。たいていの場合、目で見て違いを探します。サイゼリヤの間違い探しと一緒です。

繰り返しですが、PlantUMLの実態は文字列ですので、WinMergeなどのツールを使えは一発で差分の確認ができます。

PlantUMLの例

あくまで一例ですが、このような画像が作成できます。この画像をつくるためのコードは以下です。

@startuml
start
:Step 1;
:Step 2;
:Step 3;
if(Step 3) is (completed) then
    :Good, go to Step 4;
else(no)
    :Not good OMG;
    stop
endif
:Step 4;
end
@enduml

フローチャートのテンプレート

非常にシンプルなフローチャートのテンプレートです。

@startuml

:ユーザのアクセス;
if(Admin/へのアクセス) then (yes)
    :管理者用ページへルーティング;
else(no)
    :https://<ホスト名>/...扱いになる;
    :diary/urls.pyに命令を渡す;
endif

@enduml

ガントチャートのテンプレート

・・・準備中

組織図のテンプレート

組織図のテンプレートです。PowerPointで作成すると面倒くさいやつですね。許されるならこの方法で作成したいものです。

組織図のテンプレート1

シンプルです。

@startwbs
* Project Manager
** Project Leader A
*** Infra Team
*** Network Team
*** Server Team
** Project Leader B
*** App Team
*** UI Team
*** Test Team
@endwbs

組織図のテンプレート2

もう少し凝ってます。

@startuml

object 取締役会
package 人事部{
    object 人事部長{
                太郎部長
    }
    object 採用チーム {
                + 人事課長
    }
    object キャリア開発チーム{
        + A係長
        + B主任
        + C社員
    }
}
package B部署{
    object B担当 {
        #リーダB
        #メンバB
    }
}
package C部署{
    object C担当 {
        #リーダC
        #メンバC
    }
}

取締役会 --> 人事部
取締役会 --> B部署
取締役会 --> C部署

人事部長 --> 採用チーム
人事部長 --> キャリア開発チーム

@enduml