iT邦幫忙

2026 iThome 鐵人賽

DAY 2
0
佛心分享-IT 人自學之術

AI 時代下的自學革命:30 天打造高效 IT 知識庫與實戰力系列 第 21 篇

Day 21:AI 輔助架構設計——利用 Prompt 設計系統架構圖與 API 規格

  • 分享至 

  • xImage
  •  

在軟體開發的前期規劃階段,系統架構設計(Architecture Design)與 API 規格定義(API Specification)往往需要耗費大量時間進行討論與撰寫。隨著 LLM 具備強大的語意理解與邏輯推理能力,開發者可以透過精準的 Prompt Engineering,讓 AI 成為架構師(Software Architect)的得力助手,加速從需求分析到架構落地的過程。

本篇將探討如何運用 AI 自動生成 Mermaid 架構圖、定義 OpenAPI / Swagger 規格,並進行架構決策評估(ADR)。

  1. 自然語言轉系統架構圖(Mermaid.js 實戰)
    傳統繪製架構圖(如 Visio, Draw.io)不易版本控制且維護成本高。透過 Diagrams as Code(如 Mermaid.js),AI 能直接將商業需求轉換為視覺化架構圖。

實戰 Prompt 範例
Markdown
請擔任資深系統架構師,根據以下需求生成 Mermaid.js 的 architecture 或 graph TD 語法:

  • 需求:建立一個高並發的電商訂單系統

  • 包含組件:React 前端、API Gateway、Order Microservice、Redis 快取、PostgreSQL 主從資料庫、RabbitMQ 訊息隊列、Payment Gateway

  • 要求:標示資料流向與非同步處理區塊
    AI 生成的 Mermaid 程式碼
    程式碼片段
    graph TD
    Client[React 前端 / App] -->|HTTPS| Gateway[API Gateway]

    subgraph Core Services
    Gateway -->|REST/gRPC| OrderService[Order Microservice]
    OrderService <-->|Read/Write Cache| Redis[(Redis Cache)]
    OrderService -->|DB Connection| DB[(PostgreSQL Master)]
    DB -.->|Replication| DBReplica[(PostgreSQL Replica)]
    end

    subgraph Asynchronous Processing
    OrderService -->|Publish OrderCreated| MQ[RabbitMQ]
    MQ -->|Consume| PaymentService[Payment Microservice]
    PaymentService -->|Third-party API| ThirdPartyPayment[External Payment Gateway]
    end
    (可將此段語法貼至 GitHub、Notion 或 Mermaid Live Editor 直接渲染成圖表)

  1. 自動生成 OpenAPI (Swagger) 規範與 Mock Server
    定義 API 契約(API Contract)是前後端分離開發的核心。AI 可以根據口頭需求直接輸出標準的 OpenAPI 3.0 YAML/JSON 格式,並自動補全 Request/Response Body 的型別與範例。

範例 Prompt 結構
「請為『使用者取消訂單』功能設計 RESTful API,撰寫 OpenAPI 3.0 YAML 格式。需包含 Path Parameter (order_id)、Request Body(取消原因)、200 成功回應、400 參數錯誤、404 找不到訂單與 500 系統錯誤。」

AI 生成 API 規格(YAML 簡化版)
YAML
openapi: 3.0.0
info:
title: Order Management API
version: 1.0.0
paths:
/api/v1/orders/{order_id}/cancel:
post:
summary: 取消指定訂單
parameters:
- name: order_id
in: path
required: true
schema:
type: string
example: "ORD-20261005-001"
requestBody:
required: true
content:
application/json:
schema:
type: object
properties:
reason:
type: string
example: "買錯商品"
responses:
'200':
description: 成功取消訂單
content:
application/json:
example:
status: "success"
canceled_at: "2026-10-05T15:30:00Z"
'400':
description: 訂單狀態不允許取消
3. 架構決策記錄(ADR)與選型評估
在做技術選型(例如:SQL vs NoSQL、Kafka vs RabbitMQ)時,AI 能快速整理客觀的優缺點分析(Pros & Cons),並生成標準的 ADR (Architecture Decision Record) 文件。

分析面向 PostgreSQL MongoDB
資料結構 強型別、關聯式 schema,適合高一致性(ACID)。 彈性 JSON/BSON 格式,適合 Schema 經常變動的場景。
擴展性 垂直擴展為主,讀寫分離可用 Replica。 水平擴展(Sharding)原生支援度高。
適用場景 帳務、訂單交易、核心業務系統。 使用者行為 Log、產品動態屬性目錄。
今日小結
AI 輔助系統架構設計,能大幅降低架構師與開發團隊在文檔撰寫與初稿繪製上的時間。透過將需求結構化輸出為 Mermaid 圖解 與 OpenAPI 規格,能讓團隊在開發第一天就對系統全貌達成共識。

明天預告:Day 22 - AI 時代的資料庫設計與 SQL 效能調優:從 ER Diagram 到 Query Optimization


上一篇
Day 20:打造 CI/CD 自動化管線——整合 AI 程式碼審查與品質監控
下一篇
Day 22:AI 時代下的資料庫設計與 SQL 效能調優——從 ERD 到 Query Optimization
系列文
AI 時代下的自學革命:30 天打造高效 IT 知識庫與實戰力 共 30 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言