plantuml node procedure アーキテクチャ図の部品化


 最近よくアーキテクチャ図を描くようになりました。

一々Node名とリンクやIP、データベースの設定するのもいいのですが、

Node数が多すぎると大変な作業になります。そこで、plantumlのprocedureを作れました。

他の部品も同じ方法で作れますので、興味ある方はご参考ください。

SVG画像

@startuml

!procedure $node($alias, $name="mynode",$ip="", $database="", $namelink="", $dbtype="", $dblink="", $fontsize=14, $color="#bafcc8")
!include
skinparam node {
backgroundColor $color
FontSize $size
}
!if ($namelink != "")
!$name = "[[" + $namelink + " " + $name + "]]"
!endif
!if ($ip != "")
!$name = $name + "\n(" + $ip + ")"
!endif


node "$name" <<$archimate/technology-node>> as $alias {
!if ($database != "")
!$dbalias = $alias + "DB"
!if ($dblink != "")
!$database = "[[" + $dblink + " " + $database + "]]"
!endif
!if ($dbtype != "")
!$database = $database + "\n(" + $dbtype + ")"
!endif
database "$database" as $dbalias
!endif
}

!endprocedure

$node($alias="SpotfireServer", $name="Spotfireサーバ", $ip="192.168.1.20", $database="Spotfire", $namelink="http://localhost", $dbtype="PostgreSQL", $dblink="http://localhost")

$node($alias="DWHDb", $name="DWH DBサーバ",$ip="192.168.1.21", $database="Spotfire", $namelink="http://localhost", $dbtype="PostgreSQL", $dblink="http://localhost")

SpotfireServerDB <-> DWHDbDB

@enduml

コメント

人気の投稿