UML畫圖神器來了,比Visio快10倍!
本文介紹了一種結(jié)合了ChatGPT和PlantUML的高效畫圖方法,它極大提升了技術(shù)文檔中UML圖的繪制速度。作者通過具體案例展示了如何快速生成訂單履約的業(yè)務(wù)流程圖,為程序員和架構(gòu)師提供了一種新穎的圖形化文檔制作方法。閱讀本文,掌握這一技術(shù),讓你的工作效率飛躍提升。
大家好,我是湯師爺。在編程工作中,我們經(jīng)常要畫時(shí)序圖和流程圖,特別是寫技術(shù)文檔。
雖然我們一般喜歡用像Visio這樣的畫圖工具,但有時(shí)用編程畫圖可以更高效率,因?yàn)槲覀儗幊陶Z言很熟悉。
今天,我要給你介紹一個(gè)叫ChatGPT+PlantUML的畫圖方法,它們組合起來,可以讓畫圖效率提高幾十倍。不用AI的程序員,真的快要被淘汰了。
拿訂單履約的業(yè)務(wù)流程圖舉例,我花了10多分鐘才完成,而ChatGPT+PlantUML繪圖過程只用了10秒鐘,基本可以達(dá)到同樣的水平,通過ChatGPT可以顯著提高畫流程圖的效率。
01 用ChatGPT生成PlantUML代碼
PlantUML是一款開源的UML圖繪制工具,支持通過文本來生成圖形,使用起來非常高效??梢灾С謺r(shí)序圖、類圖、對象圖、活動(dòng)圖、思維導(dǎo)圖等圖形的繪制。
訂單履約是電商和零售業(yè)務(wù)中的一個(gè)重要環(huán)節(jié),它涉及到從客戶下單到商品交付的整個(gè)過程。
此過程涉及多個(gè)環(huán)節(jié),包括消費(fèi)者在銷售平臺(tái)下單、系統(tǒng)接收訂單、預(yù)占庫存,以及倉庫/門店執(zhí)行揀貨、發(fā)貨等環(huán)節(jié)。
我們以訂單履約業(yè)務(wù)流程為例,讓ChatGPT幫我們生成業(yè)務(wù)流程的PlantUML代碼。
向ChatGPT發(fā)送以下請求:
請使用PlantUML語言繪制訂單履約的業(yè)務(wù)流程。業(yè)務(wù)流程如下:
- 接收訂單:當(dāng)客戶在銷售平臺(tái)下單后,第一步是接收訂單,它涉及到訂單信息的收集和確認(rèn),包括客戶詳情、商品信息、配送地址等。
- 訂單拆單:此環(huán)節(jié)的目的是將復(fù)雜的訂單拆解為更易管理的子訂單,根據(jù)商品的倉儲(chǔ)位置或特定的履約要求進(jìn)行拆分。
- 派單:這一步驟基于多種因素進(jìn)行決策,包括商品的實(shí)際庫存位置、配送地址的距離、以及履約能力,分配給合適的倉庫或門店。
- 預(yù)占庫存:為了確保訂單中的商品能夠被及時(shí)送達(dá),預(yù)占庫存防止在訂單處理期間商品被其他訂單占用,導(dǎo)致無法履約的情況發(fā)生。
- 改派:在履約過程中,可能會(huì)因?yàn)閹齑娌蛔?、配送問題或其他突發(fā)情況,需要重新分配訂單到另一個(gè)履約中心。
- 揀貨:是指根據(jù)訂單信息從庫存中挑選出具體商品的過程。這個(gè)環(huán)節(jié)要求高度的準(zhǔn)確性和效率,錯(cuò)誤揀選會(huì)直接影響到客戶滿意度。
- 打包:揀選完成后,商品會(huì)被包裝好,確保在運(yùn)輸過程中的安全和完整。打包過程還包括貼上運(yùn)輸標(biāo)簽和必要的配送信息,為商品的順利配送做好準(zhǔn)備。
- 出庫:打包好的商品接下來會(huì)被記錄為出庫狀態(tài),這意味著商品正式發(fā)貨出庫,離開門店/倉庫。
- 物流配送:商品出庫后,將通過快遞或同城配進(jìn)行配送。這一階段,物流公司或配送公司負(fù)責(zé)將商品從門店/倉庫運(yùn)輸?shù)娇蛻糁付ǖ氖肇浀刂贰?/li>
- 確認(rèn)收貨:最后,當(dāng)客戶收到商品并確認(rèn)無誤后,訂單履約流程完結(jié)??蛻舸_認(rèn)收貨通常在線上平臺(tái)上確認(rèn)來完成。這一環(huán)節(jié)也是記錄履約時(shí)效、收集客戶反饋和提升服務(wù)質(zhì)量的重要機(jī)會(huì)。
ChatGPT回答如下:
以下是使用PlantUML語言繪制的訂單履約業(yè)務(wù)流程代碼。這段代碼描述了從接收訂單開始,到確認(rèn)收貨結(jié)束的整個(gè)過程。你可以將此代碼復(fù)制并在支持PlantUML的工具或在線編輯器中進(jìn)行渲染,以生成流程圖。
@startuml
!theme plain
title 訂單履約流程圖
|客戶|
start
:下單;
|訂單履約系統(tǒng)|
:接收訂單;
note right: 收集訂單信息n客戶詳情、商品信息、配送地址等
:訂單拆單;
note right: 根據(jù)倉儲(chǔ)位置或n特定履約要求拆分
:派單;
note right: 基于庫存位置、配送地址距離n和履約能力進(jìn)行決策
:預(yù)占庫存;
note right: 防止商品在處理期間被占用
if (需要改派?) then (是)
:改派;
note right: 因庫存不足、配送問題等n重新分配履約中心
else (否)
end if
|倉庫/門店|
:揀貨;
note right: 根據(jù)訂單信息挑選商品
:打包;
note right: 包裝商品,貼上運(yùn)輸標(biāo)簽
:出庫;
note right: 商品發(fā)貨出庫
:物流配送;
note right: 商品從門店/倉庫n運(yùn)輸?shù)娇蛻糁付ǖ刂?/p>
|客戶|
:確認(rèn)收貨;
note right: 在線上平臺(tái)確認(rèn)收貨n完成訂單履約流程
stop
@enduml
02 用drawio繪制流程圖
接下來,我們要使用drawio神器,繪制流程圖。登錄https://app.diagrams.net/,點(diǎn)擊?,選擇高級(jí)→PlantUML。
將上文中的PlantUML代碼,貼入文本框,點(diǎn)擊插入,就能生成流程圖。
我們可以看到,ChatGPT繪制的流程圖質(zhì)量很高,對業(yè)務(wù)流程有深入的理解。
通過不斷與ChatGPT的交流和調(diào)整,我們得到了一個(gè)完整的訂單履約流程圖,清楚地展示了從接收訂單到確認(rèn)收貨的每個(gè)步驟。
下面這張流程圖,我花了10分鐘才完成,而ChatGPT繪圖過程只用了10秒鐘,基本可以達(dá)到同樣的水平,可見ChatGPT能顯著提高畫UML圖的效率。
本文由人人都是產(chǎn)品經(jīng)理作者【湯師爺】,微信公眾號(hào):【架構(gòu)師湯師爺】,原創(chuàng)/授權(quán) 發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于 CC0 協(xié)議。
請問您用的GPT是哪款?我用了文心一言,Kimi,生成的UML語言都不能被drawio等線上工具正確解析,每次都提示錯(cuò)誤。直接復(fù)制你文章里發(fā)的那段代碼可以生成流程圖
有點(diǎn)遺憾,本地版的Driw.io不支持PlantUML