在技術文件撰寫的世界中,「圖即程式碼」(Diagram as Code)已從一個小眾的開發人員實務,演變為業界的標準做法。然而,對於需要處理多種圖表類型(流程圖、序列圖、C4 模型、基礎架構圖)的團隊來說,最大的挑戰來自於工具碎片化。Visual Paradigm 的 VPasCode 正是為了解決這個問題而誕生——它在單一、瀏覽器為基礎的平台中,整合了三種主要的文字轉圖表引擎,並透過 AI 功能強化,與文件工作流程無縫銜接。
本指南將深入探討 VPasCode 的核心功能,展示其支援語法的實用範例,並說明它如何透過 OpenDocs 生態系實現「活文件」(living documentation)。
VPasCode 的獨特之處在哪裡?
VPasCode 是一個統一的圖即程式碼平台,在同一個介面中支援 Mermaid.js、PlantUML 和 Graphviz。團隊不再需要為了不同圖表類型切換工具,而是可以在單一編輯器中標準化工作流程,系統會自動辨識並渲染每種語法。
核心功能總覽
| 功能 | 說明 |
|---|---|
| 多引擎支援 | 單一編輯器完整支援 Mermaid、PlantUML 和 Graphviz 語法 |
| 即時預覽 | 輸入時立即呈現高品質圖表渲染 |
| AI 程式碼錯誤修正 | 即時偵測並自動修正語法錯誤 |
| AI 圖表翻譯 | 將文字標籤轉換為多國語言,支援全球化團隊 |
| 零環境設定 | 以瀏覽器為基礎,無需安裝任何軟體 |
| 原生 Git 整合 | 圖表原始碼可與應用程式碼一同進行版本控管 |
| OpenDocs Pipeline 整合 | 一鍵發送至文件系統,並保留版本追蹤 |
支援的引擎:你可以建立哪些圖表?
VPasCode 支援三個主要的開放原始碼文字轉圖表引擎:
Mermaid.js 支援
Mermaid 非常適合現代化、以 Markdown 為靈感的圖表。VPasCode 支援:
- 流程圖與心智圖
- 序列圖與類別圖
- 實體關係圖(ERD)
- C4 模型
- 甘特圖、時間軸與看板
- 使用者旅程圖與 Git 圖表
PlantUML 支援
PlantUML 擅長繪製嚴謹的軟體藍圖:
- UML 類別圖、序列圖與使用案例圖
- C4 模型與 ArchiMate
- 活動圖與狀態圖
- 元件圖與部署圖
- ERD(含 Chen 表示法)
- 網路拓撲圖與工作分解結構(WBS)
Graphviz 支援
Graphviz 使用 DOT 語言處理複雜的網路拓撲與相依結構:
- 有向圖與一般圖形
- 組織圖
- 叢集圖
- 資料流程圖
實用範例:Mermaid 實戰應用
以下是在真實世界中常見的 Mermaid 圖表範例,均與 VPasCode 完全相容。
1. 微服務架構流程圖
此圖展示典型的雲原生請求流程,從用戶端經由 API 閘道、服務網格,到資料庫層:
flowchart TB
Client[網頁/行動用戶端] -->|HTTPS| Gateway[API 閘道]
subgraph Services[微服務層]
direction LR
Auth[認證服務]
Order[訂單服務]
Payment[支付服務]
Inventory[庫存服務]
end
subgraph Data[資料層]
AuthDB[(認證資料庫)]
OrderDB[(訂單資料庫)]
PaymentDB[(支付資料庫)]
InventoryDB[(庫存資料庫)]
end
Gateway --> Auth
Gateway --> Order
Gateway --> Payment
Gateway --> Inventory
Auth --> AuthDB
Order --> OrderDB
Payment --> PaymentDB
Inventory --> InventoryDB
Order <--> Inventory
Payment -->|Webhook| Notification[通知服務]
classDef gateway fill:#e1f5fe,stroke:#01579b
classDef service fill:#f3e5f5,stroke:#4a148c
classDef db fill:#e8f5e9,stroke:#1b5e20
class Gateway gateway
class Auth,Order,Payment,Inventory,Notification service
class AuthDB,OrderDB,PaymentDB,InventoryDB db
應用場景:提供新進團隊成員或系統設計審查時的架構文件。
2. 使用者身分驗證序列圖
此序列圖記錄了包含權杖發放與錯誤處理的登入流程:
sequenceDiagram
actor 使用者
participant 前端 as 前端應用程式
participant 認證 as 認證服務
participant 資料庫 as 使用者資料庫
participant 快取 as Redis 快取
使用者->>前端: 輸入憑證(電子郵件/密碼)
前端->>認證: POST /api/v1/login
認證->>資料庫: 依電子郵件查詢使用者
資料庫-->>認證: 回傳使用者記錄(雜湊密碼)
alt 憑證有效
認證->>快取: 儲存工作階段權杖
快取-->>認證: 工作階段已建立
認證-->>前端: 200 OK + JWT 權杖
前端-->>使用者: 重新導向至儀表板
else 憑證無效
認證-->>前端: 401 未經授權
前端-->>使用者: 顯示錯誤訊息
Note right of 使用者: 「電子郵件或密碼無效」
end
應用場景:API 文件、安全性審查,或後端工程師的入門指引。
3. CI/CD 管線流程圖
此範例展示包含條件階段的部署管線模型:
flowchart LR
subgraph CI[持續整合]
Lint[語法檢查與測試] --> Build[建置成品]
Build --> Scan[安全性掃描]
end
subgraph CD[持續部署]
DeployStaging[部署至 Staging 環境] -->|自動| RunTests[整合測試]
RunTests -->|通過| Approval[手動核准]
Approval -->|核准| DeployProd[部署至正式環境]
RunTests -->|失敗| Rollback[復原至前一版本]
end
Scan -->|通過| DeployStaging
Scan -->|失敗| Alert[通知團隊]
classDef ci fill:#e3f2fd,stroke:#1565c0
classDef cd fill:#fff3e0,stroke:#e65100
classDef decision fill:#ffebee,stroke:#c62828
class Lint,Build,Scan ci
class DeployStaging,RunTests,DeployProd,Rollback cd
class Approval,Alert decision
應用場景:DevOps 文件、應變手冊(runbooks)與版本發布流程指南。
AI 聊天機器人整合:從提示詞到圖表
VPasCode 最強大的功能之一,在於它與 Visual Paradigm 的 AI 聊天機器人 深度整合。這建立了一個兩階段的工作流程,有效解決了「從空白頁面開始」的難題。
第一階段:透過 AI 進行構思
您可以透過自然語言描述系統需求,AI 便會生成初始的圖表結構。例如:
提示詞:「為一個美食外送應用程式繪製使用案例圖,包含顧客、外送員和餐廳業者。」
AI 會理解您的意圖,並生成對應的 PlantUML 或 Mermaid 程式碼,完整包含參與者(actors)、使用案例及它們之間的關係。
第二階段:在 VPasCode 中進行精修
其中的關鍵橋樑是 「在 VPasCode 中開啟」 按鈕。此功能會將 AI 生成的邏輯匯出至程式碼編輯器中,您可以在其中:
- 調整樣式(如
skinparam linetype ortho、left to right direction) - 手動定義關係與模板(stereotypes)
- 補充 AI 可能遺漏的特定元素
- 套用公司品牌色系與一致的格式設定
這種混合式方法解決了 Visual Paradigm 所稱的 「AI 生成的最後一哩問題」——AI 為您完成 90% 的草稿,而 VPasCode 則讓您完善最後的 10%。
AI 錯誤修正:消除語法困擾
採用圖即程式碼的主要障礙之一,就是語法除錯。一個放錯位置的符號就可能導致圖表無法渲染。VPasCode 的 AI 程式碼錯誤修正 功能以流暢的工作流程解決了這個問題:
- 即時偵測:當語法錯誤發生時(例如使用了無效的連接運算子),VPasCode 會顯示「無法生成圖表」的警示,並標示錯誤行號。
- 一鍵修正:錯誤通知中會出現 「由 AI 修正」 按鈕。
- AI 處理:系統會彈出視窗,確認 AI 正在分析錯誤,並比對有效的語法模式。
- 自動更正:有問題的程式碼會被替換為正確的語法,圖表隨即重新渲染。
這大幅降低了認知負擔,讓各種技能水準的使用者都能輕鬆使用圖即程式碼,而無需背誦每一條語法規則。
範例:AI 修正前後的對比
錯誤的 Mermaid 語法(第 11 行):
flowchart LR
A[開始] -->|處理| B[任務]
B ---> C[結束]
(使用了無效的運算子 --->)
經 AI 修正後:
flowchart LR
A[開始] -->|處理| B[任務]
B --> C[結束]
OpenDocs Pipeline:從程式碼到活文件
VPasCode 與 OpenDocs 的整合,打造了 Visual Paradigm 所稱的 「活文件」 工作流程。圖表不再以靜態圖片匯出,而是透過一個管線傳送,同時保留版本歷史與雙向同步機制。
五階段工作流程
- 在 VPasCode 中起草:工程師在瀏覽器編輯器中編寫或編輯圖表語法。
- 傳送至管線:點擊「傳送至 OpenDocs Pipeline」,並可選擇附加背景說明(例如:「已更新以支援 TLS 1.3」)。
- 插入 OpenDocs:技術文件撰寫者可以開啟 Pipeline 面板,一鍵將圖表插入即時文件中。
- 就地編輯:點擊內嵌圖表上的鉛筆圖示,即可在 VPasCode 中開啟原始碼進行精修。
- 自動同步更新:變更會立即生效,無需重新上傳檔案,徹底消除版本錯誤問題。
實際效益數據
根據 NovaStream(一家 SaaS 供應商)的案例研究,實施此管線後獲得了顯著改善:
| 指標 | 導入前 | 導入後 | 改善幅度 |
|---|---|---|---|
| 更新週期時間 | 55 分鐘 | 8 分鐘 | 改善 85% |
| 版本錯誤次數 | 頻繁發生 | 零次 | 100% 消除 |
| 跨團隊交接次數 | 3 次 | 0 次 | 100% 減少 |
Graphviz 範例:基礎架構文件
對於基礎架構團隊,VPasCode 的 Graphviz 支援讓雲端架構能以程式化方式呈現。以下是一個實用範例:
digraph EnterpriseCloud {
compound=true;
node [fontname="Helvetica,Arial,sans-serif" fontsize=11 shape=box style="filled,rounded" fillcolor="#E3F2FD" fontcolor="#1565C0"];
subgraph cluster_vpc_prod {
label="正式環境 VPC"; style="dashed"; fillcolor="#FFF3E0";
subgraph cluster_k8s {
label="Kubernetes 叢集"; style="rounded"; fillcolor="#E8F5E9";
pod1 [label="API 服務\n(Pod 1)"];
pod2 [label="API 服務\n(Pod 2)"];
db_master [label="PostgreSQL\n主節點"];
db_replica [label="PostgreSQL\n備援節點"];
}
lb [label="應用程式負載平衡器" fillcolor="#FFF9C4"];
}
vpn [label="IPSec VPN 閘道" shape="hexagon" fillcolor="#FFCCBC"];
vpn -> lb [label="加密流量"];
lb -> pod1 [label="代理流量" lhead=cluster_k8s];
lb -> pod2 [label="代理流量" lhead=cluster_k8s];
pod1 -> db_master [label="寫入"];
pod2 -> db_replica [label="讀取"];
db_master -> db_replica [label="非同步複製" style="dashed"];
}
關鍵特色:
- 子圖(Subgraphs):模型化階層式的雲端邊界(如 VPC、Kubernetes 命名空間)
- 全域樣式設定:在圖形層級定義一致的色彩與形狀
- compound=true:將連線指向叢集邊界,而非個別節點
VPasCode 入門指南
VPasCode 提供 免費方案,包含即時預覽、URL 分享及 SVG/PNG 匯出功能。付費方案則解鎖 AI 程式碼錯誤修正與語言翻譯等進階功能。
快速入門步驟
- 前往 VPasCode(瀏覽器即可使用,無需安裝)
- 選擇語法:Mermaid、PlantUML 或 Graphviz
- 撰寫程式碼於左側面板,即時預覽會同步顯示於右側
- 傳送至 OpenDocs Pipeline 以嵌入文件系統
- 提交至 Git 與應用程式碼一同進行版本控管
總結
VPasCode 代表了圖即程式碼工具的重大演進,其價值體現在以下幾個面向:
- 統一三種主要語法於單一平台
- 透過 AI 生成與錯誤修正 加速圖表建立流程
- 經由 OpenDocs Pipeline 消除文件與實作之間的落差
- 支援 版本控管 與原生 Git 工作流程
無論您是使用 Mermaid 記錄微服務、使用 PlantUML 建模系統架構,還是使用 Graphviz 繪製雲端基礎架構,VPasCode 都提供了一個統一的介面,完美銜接程式碼與視覺化呈現之間的鴻溝。