FigmaでAWS構成図作りたいよね？？？総集編

Figma好きなエンジニアとしては、やはりFigmaで構成図を作らない限り死んでも死に切れません。

## Figmaでなくてもいいけど
構成図を書いている時に
「もっと構成図を綺麗に書きたい」
という声が心の奥底から聞こえてこないでしょうか。

そんな時は Figma の出番です。
AWS公式ページに Figma へのリンクがあります。

https://aws.amazon.com/jp/architecture/icons/

※Amazon Bedrock はまだFigma内のアーキテクチャアイコンにはありません…

## 公式リンクからFigmaへ飛んでみたけど、どういうこと？
上記のAWS公式ページからFigmaを選択します。

![Screenshot 2024-12-10 at 10.34.28.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/ff4ce610-2369-d9e8-79a5-33618944009b.png)

するとFigmaが開かれ、このような画面が表示されます。

![a8037ee3-63e8-4a07-9727-9e40827edf43-1280x1280r.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/06bc5b1b-1c4c-a56b-4ea9-bdcba1937cfe.png)

アイコンが一覧化されています。
「ここから選ぶの？めちゃくちゃ大変じゃない？」  
という気分になりますよね。

## そしてFigmaのUIに戸惑う
Figmaは非常に便利な反面、初めて使う方にとっては少し難しく感じるかもしれません。
それはデザインツールであるが故に、左右にたくさんのボタンが配置され、隠されたボタンも存在することに起因しています。

しかもFigmaは今年UI3という新UIに変更され、Figmaに慣れていた人間でもどこに探しているボタンがあるか迷うほどに初期画面のボタン数が減りました。

## でも簡単なんだ。第一歩を踏み出そう。
Figmaで構成図を書く第一歩は、左のサイドバーにある **「2. Build Your Own」** を選択することです。

![f80f0a7a-dcd1-461d-ace0-50206bcdf549.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/ec1bbf37-9cc4-6ae6-884a-596067534085.png)

選択すると、使い方が書かれたページが開きますが……
正直、分かりにくいですね。

![cbdb0b4e-d8a9-4681-b3bc-613b68125ff2-1280x1280r.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/6efcf237-176f-4ab4-b3af-a4bf600c7553.png)

※左のサイドバーの「Example」を選択すると、Figmaで作成する構成図のサンプル見れます。

![スクリーンショット 2024-12-11 9.44.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/7e4214b9-b3fc-fb27-3eec-66798f9221e3.png)


## よくわかる使い方

画面下部のバーの右から2番目にあるアイコンを選択します。
すると、検索バーが表示されます。

![c9a68833-dea4-4ab0-9137-1c320e79565c.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/4ddcc891-42bc-1fd1-8ad2-8ac71cd3382f.png)

検索バーに「Lambda」と入力し、Enterを押します。

![99ac0ec3-ba42-4913-89bb-a26e35b16b11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/250d00ca-8bdc-515d-c37b-aa8a1c19553e.png)

すると AWS Lambda のアイコンが！！

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/b2a8e271-d919-cd0a-fec9-a20b7d637c7f.png" width=80%>

あとは選択して使うだけです。
今回は先ほど表示していたページの白い部分に乗せてみました。

![aa8fb62d-267d-4d0d-aafd-c4514aedbcf0-1280x1280r.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/5b7bc0df-3c13-b0a8-e3c6-2dca175ead27.png)

### テキストもつけよう
アイコンは用意できたので、サービス名をつけてみます。
下のバーにある「T」アイコンを選択します。

![4752bac8-1dee-4e3d-8cfd-f83e1f75a436.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/98a3a3d2-eb46-ebe8-f959-cdd85bf8f529.png)

すると文字入力のモードになるので、AWS Lambda の下に書いてみます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/dac4c0fe-2ae5-b408-da7a-5ffbf3e2a7b5.png" width=80%>

中心に合わせたら良い感じです。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/260737c1-99af-49f1-b5ce-a1515e5be141.png" width=50%>

### グルーピングしてみよう
drawioでもある「グルーピング」は、Figmaでも実現可能です。
Shiftキーを押しながら「Lambdaアイコン」と「AWS Lambda」の文字列をどちらも選択します。
選択状態になったら、右クリックし「Frame selection」を選択します。
（Group selection でも似たことはできますが、一旦Frameでいきます）

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/8476fd89-020e-1177-7e18-9f8290bfc847.png" width=80%>

グルーピング完了です。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/6cfaa80f-08c8-8b14-b40b-b8a9be538b0c.png" width=50%>

### 矢印も引いてみよう
同じ手順で Amazon DynamoDBも用意しました。

![6efcae1f-8757-4011-b30e-b5d70d3eaa03-1280x1280r.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/7d70bbd5-3bd9-8c92-6cc8-88345d4c7dd8.png)

LambdaからDynamoDBへの線を書きます。
一応、AWSダイアグラム自体に矢印があるらしいのでそちらを使ってみます。
（Figma標準機能の矢印もあります）

下のバーの右から2番目を選択し、「arrow」で検索します。
今回はEnterではなく、検索結果に表示される「Search assets for arrow」を選択します。

![e6fe326e-8bab-44ff-8de4-6cd5e70c3107.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/73cf347f-e642-a262-8dd6-c3868eb81fd9.png)

たくさん矢印が出てきました。
今回は白バックのStraightを選択してみます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/937e93bc-dbc5-b193-4da4-8052b04ba45f.png" width=80%>

すると矢印が表示されるので、回転させたり小さくして、LambdaとDybamoDBの間に入れてみました。

![441fc0b8-e014-495c-8822-e76036605c69-1280x1280r.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/03e99000-4813-8105-dd83-93c2cf7e3962.png)

汚くなりがち代表格の接続の矢印も曲がりません。
（drawioで矢印の線が曲がることに悩まされる）

ただAWSダイアグラムの矢印は、小さくすると矢印の山（＞の部分）が小さくなりません。使いづらいので、Figma標準の矢印を使って作ってみます。

下のバーから四角の右にある下向きの矢印を選択します。

![daa1d65b-419c-44b5-89dc-a2560228f4a5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/cdcdd9d5-bc1c-7c19-4132-4d09109583b4.png)

そして「Arrow」を選択。

![d6835ff8-3259-4903-b920-7ad142a1be47.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/55324487-a59f-f275-3988-a576e9b806d3.png)

すると矢印が書けます。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/facb4a95-2f2c-01a0-adf9-530eb53aa261.png" width=80%>

矢印が書けたらLambdaとDynamoDBの間に持っていくと、ちょうど真ん中におけます。
これまで「もう少し矢印を上にしたいけど出来ない…！真ん中じゃない！」と感じてた方にオススメ機能です。

<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/830a54b8-d3ff-6c42-c29a-1742a6222879.png" width=80%>

### 整列や矢印の太さ、フォントサイズ変更など
作成したLambda、矢印、DynamoDBの3つを選択した状態で右のサイドバーを見てみます。
ここでは整列や矢印の編集が可能です。

![82bd6b70-0db2-4600-a283-e8c3c1108a85.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/65ba8c1e-c504-e4d7-f407-7343725524f4.png)

グルーピングした要素内のテキスト（ここではAmazon DynamoDBの文字）を何回か押すとテキストを選択できます。
この状態ではサイドバーにテキストのオプションが表示されます。

![1787d0ee-a41f-4cab-9734-6a100c158058.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/505734/ce97ec63-1ee5-455d-850b-3513dcfeea08.png)

この繰り返しでAWS構成図を描くことができます。

## Figmaで構成図を書く メリット

### プラグインが充実
他のツールと異なる部分は、Figmaにはプラグインがあることです。
デフォルトでは無い機能もプラグインを探すとあるかもしれません。

### 1px単位で移動ができる
デザインツールの特性を活かし、1pxずつオブジェクトを移動することができます。
これで「あと少し下に移動したいけど、できない…！」というもどかしさから解放されます。

### 黒い背景の構成図に対応
用意されているFigmaでのAWSアイコンは、白い背景用ものもと黒い背景用の2種類が存在します。
あまりメジャーではないかもしれませんが、黒い背景でAWSアイコン使いたいという場合に便利です。

## Figmaで構成図書く デメリット

### 矢印が追従するような機能はデフォルトにない

他のツールである、オブジェクトに矢印をつけて追従する機能（以下の機能）はFigmaではありません。（FigJamにはあったりします）
ただ <a href="https://www.figma.com/community/plugin/733902567457592893/autoflow
">Autoflow</a> というプラグインを導入すれば、同様の機能が実現できます！

https://www.figma.com/community/plugin/733902567457592893/autoflow

### UIやショートカットに慣れるまでに時間がかかる

Figmaになれることや、クリックしないで済むようにショートカットを覚えるまでに使いづらさを感じるかもしれません。


## おわりに
Figmaで書く構成図、いかがだったでしょうか？
もしFigmaで構成図を書くような機会があれば、参考になると嬉しいです！