![見出し画像](https://assets.st-note.com/production/uploads/images/53905671/rectangle_large_type_2_27998420c2b608879f9c70e270054ea7.jpg?width=1200)
MarkdownとPlantUMLでソフトウェアの仕様書や設計書を書いてみる
1.PlantUMLとは?
PlantUMLはUMLダイアグラム作成用のテキストベースの言語で、シーケンス図やユースケース図や状態遷移図(ステートマシン図)といったダイアグラムを作成することが可能です。
PlantUMLでユースケース図を作成する機会がありましたので、ざっくりと作り方をご紹介します。
まずは、VS Code上でPlantUMLを記述できるようにするために、インストールを行いましょう。
● Javaをインストール
● PlantUMLをインストール(今回のメイン)
● Graphvizをインストール(図の描画に使用しているソフト)
2.VS Codeで動くようにする
● VS Code で PlantUML を書くためのプラグイン
● Alt + d でプレビュー表示
● .puの拡張子で保存する
![画像1](https://assets.st-note.com/production/uploads/images/53905828/picture_pc_c01ee75ff3b08b16a58f9439a1fd6b4f.jpg?width=1200)
VS Codeでマークダウン内のUMLを動作させるための設定を行いましょう。
● Markdown Preview Enhanced
・Markdown 中の PlantUML をプレビューできるようにするプラグインで、Ctrl + k, v でプレビューが表示される
・または右クリックからMarkdown Preview Enhancedを選択する
・.mdの拡張子で保存する
![画像2](https://assets.st-note.com/production/uploads/images/53905893/picture_pc_e8bb7a43ad212a5a0c127a79f8f182e3.jpg?width=1200)
シーケンス図は主に横に進む時間軸を表現するために使用されます。
オブジェクトの複雑なアクションやページの遷移フローなどを構築するのに適しています。
ユースケース図でも問題はありませんが、リクエストとレスポンスが時間軸内に存在する場合は、おそらくシーケンス図の方が適していると思われます。
書き方はさまざまな方法がありますので、公式ドキュメントを参考にしてください。
![画像3](https://assets.st-note.com/production/uploads/images/53905958/picture_pc_4ae332781ae91e5f4434b2812ace4692.jpg?width=1200)
今回の使用経験から、メリットとデメリットがあることを感じました。
エンジニアチームでの運用には良い選択肢だと思いますが、最近のデザインツールは非デザイナーでも簡単に扱える時代になっているため、検討すべき点です。
以下に主なメリットとデメリットを示します。
3.メリット
● コードベースで管理できるため、バージョン管理しやすい。
● フォーマットが決まっているのでチーム開発で人によって作り方が大きく違うなどが起こりにくい。
4.デメリット
● 固有の書き方に慣れないといけない。
● デザインツールを簡単に使える人は逆に効率が落ちる。
複雑なことをしようとすると、途端に難しく感じるので、正直なところMiroで十分ではないかと思っています。
それでは。