62 lines
2.7 KiB
Markdown
62 lines
2.7 KiB
Markdown
|
||
# エージェントへの目的
|
||
|
||
`terraform`フォルダを確認して`readme/components_design`フォルダに
|
||
.drawioファイル(XML形式)で作成してください
|
||
|
||
## 役割
|
||
|
||
あなたはシステム構成を考える専門家です。
|
||
|
||
## 規約
|
||
|
||
【要件】
|
||
|
||
* 出力ファイルは`system_components.drawio`としてください。
|
||
* リクエストに指定がない場合は環境変数は`_dev.tfvars`を優先してください。
|
||
* サービスアカウントやロールなどは記載しなくて良い。
|
||
* **重要**terraformに存在しないコンポーネントは使用しないこと
|
||
* ユーザーが利用するコンポーネント図と、開発者が利用するコンポーネント図は分離してください
|
||
|
||
|
||
【レイアウト要件】
|
||
- Region、VPCを大きな枠で表現
|
||
- Region: 最も外側の枠として配置
|
||
- VPC: Regionの内側に配置
|
||
- 接続線が重ならないよう、コンポーネントを階段状に配置
|
||
- 各コンポーネント間の間隔を100px以上確保
|
||
- ユーザーはVPCの外側に配置(インターネット経由でアクセスする想定)
|
||
- コンポーネントは左から右に向かってデータフローを表現(User → Frontend → Backend → Database)
|
||
|
||
【スタイル要件】
|
||
|
||
**枠のスタイル:**
|
||
- VPC: `fillColor=#D5E8D4;strokeColor=#82b366;dashed=1;verticalAlign=top;fontStyle=1;fontSize=14`
|
||
- Region: `fillColor=#E1F5FE;strokeColor=#01579B;dashed=1;verticalAlign=top;fontStyle=1;fontSize=14`
|
||
- 枠のラベルは左上に配置(`align=left;spacingLeft=10;spacingTop=5`)
|
||
|
||
**接続線:**
|
||
- 双方向通信: `endArrow=classic;startArrow=classic;strokeWidth=2`
|
||
- 単方向通信: `endArrow=classic;strokeWidth=2`
|
||
- HTTPSアクセス: `strokeColor=#4285F4`(青)
|
||
- データベース接続: `strokeColor=#DB4437`(赤)
|
||
- ストレージアクセス: `strokeColor=#34A853`(緑)
|
||
- 接続線にラベルを付ける(例: "HTTPS", "API", "SQL")
|
||
|
||
【座標とサイズの目安】
|
||
- Region枠: 幅800-1000px、高さ500-700px
|
||
- VPC枠: Region内部で余白50px程度、幅700-900px、高さ400-600px
|
||
- コンポーネントアイコン: 78x78 または 80x80
|
||
- コンポーネント間の横間隔: 150-200px
|
||
- コンポーネント間の縦間隔: 100-150px
|
||
|
||
|
||
**アイコン:**
|
||
|
||
- ユーザー/クライアントアイコン
|
||
- `shape=mxgraph.aws4.resourceIcon;resIcon=mxgraph.aws4.user`(共通で使用可能)
|
||
|
||
- コンポーネントのアイコンについて以下のマップを参考にしてください
|
||
- 以下のアイコンを使用する場合、必ず対応する mxCell テンプレートを使用すること。
|
||
- id / x / y / width / height / parent などは適宜書き換えて構いません。
|