如何由 CSV 建立泳道圖
把一個 CSV 匯出檔的負責人或指派給欄變成泳道:每一個不重複值成為一條泳道,空白儲存格會落入第一條,而一次交接就是兩端坐在不同泳道的連線。
運作方式
挑出那一個指名負責人的欄
匯出檔通常給你幾個人選:指派給、擁有者、負責人、部門、團隊、隊列。挑那個處於你想要泳道所在層級的欄——讀者是經理的話就用團隊,只有在流程真的因人而異時才用具名的人。一張泳道圖有一條承擔論點的泳道軸;其餘那些欄可以跟著走而不被使用。
匯入之前先列出不重複值
在產生這個檔案的工具裡,對那個欄做一次不重複值或者移除重複的處理,然後讀一讀結果。那份清單正好就是你即將得到的那組泳道。如果它有九項而你預期五項,那你有的是四個拼寫變體,不是四個團隊,而在欄裡修好它,遠比事後合併泳道便宜。
把空白填上一個真實的值
一個空白的負責人儲存格不會產生一條「未知」泳道——那個步驟會落進第一條泳道,而在每一位讀者眼中,看上去都會像是第一個團隊擁有那件工作。在每一個空儲存格打上一個明確的值,「未指派」或者「未議定」。沒有人叫得出負責人的那些步驟,是整件功夫最有用的產出,所以給它們一個看得見的位置坐。
把標題列改名
匯入器讀的就是標題列:步驟用「方框文字」、它所通往那一列的列號用「連線至」、分支標籤用「連線文字」、Start/Process/Decision/End 用「形狀」,而負責人用「縱向泳道」。如果你同時有一個階段欄,也一併用「橫向泳道」。一個仍然叫作「擁有者」的標題會被帶過並忽略,而圖會扁平地渲染,不會有任何警告。
檢查分隔符、引號用法與編碼
負責人那些值是最有可能含有逗號的——「財務, EMEA」或者「營運, 北歐」——而一個沒有引號保護的逗號會把那一列拆出一個多餘的欄,令它後面每一個值往左移一格。用純文字編輯器打開這個檔案,看三四行。確認分隔符就是你以為的那個、任何含有它的值都用雙引號包起,而且檔案是 UTF-8,好讓帶重音的泳道名稱活得下來。
匯入,然後讀那些跨界
把 .csv 拖到一張新圖表的試算表區域,或者把文字貼進去。泳道會以帶狀出現,而圖自行選路。現在追一追每一條離開一條帶、進入另一條帶的箭嘴:那些就是交接,而值得留意的是那些跨過去又跨回來的一對,例如示例裡市場推廣與法務之間那條改寫措辭的迴路。
常見問題
負責人應該放「橫向泳道」還是「縱向泳道」?
兩者都可以,而且你可以兩個都用。示例裡的慣例是負責人放「縱向泳道」——申請人、市場推廣、品牌、法務、媒體採購——而階段放「橫向泳道」:簡報、草擬、審閱、審批、上線。這樣得到一個網格,一個步驟的位置同時說明了由誰做以及在甚麼時候做。如果你的檔案只有一個負責人欄,就填一個泳道欄、另一個留空;單軸也是一張正常的泳道圖。
我會得到幾條泳道?
泳道欄裡每一個不重複而非空白的值一條,這正是為甚麼那份不重複值清單值得在匯入之前先讀一次。空白儲存格不會多產生一條泳道——它們把步驟放進第一條——所以一份有空缺的匯出檔,會悄悄把沒有人負責的工作歸給碰巧排在最前的那個團隊。在那些儲存格打上「未指派」花你一分鐘,而它把一個隱形的錯誤變成一條看得見的泳道。
單看這個 CSV 就找得出那些交接嗎?
找得出,而且值得做一次,好讓你信得過那張圖。對每一列,拿「連線至」裡的數字,找到那一列,再比較兩個負責人儲存格:值不同就代表工作換了手。往回的數字也算——一列指向較前一列的返工,是另一個方向上的一次交接。/yue/templates/csv泳道流程圖 的示例檔案有 30 條連線,其中 15 條跨越了泳道界線。
我的匯出檔是一張工單一列,而指派給裡有四十個名字。現在怎麼辦?
你手上的是一份個案日誌,不是一份流程定義,而匯入它會得到四十條泳道,每一條放著幾個互不相關的方框。兩趟功夫可以修好:先把那些列收攏成那些工單所經過的不重複步驟,然後把姓名對應到執行它們的角色或團隊。泳道大約在三條到七條之間才讀得到,而一張一人一條泳道的圖,回答的是一個人手編制的問題,不是一個流程的問題。
泳道標題變成了亂碼字元。哪裡出錯了?
編碼。泳道名稱是畫在圖上的,所以一個以 Latin-1 或 Windows-1252 匯出、卻被當成 UTF-8 去讀的檔案,會把損壞顯示在最顯眼的位置——Ø、ä 與 é 在一條帶的標題裡各自變成一對雜亂字元。請重新匯出為 UTF-8,而不是人手更正那些標籤,因為同樣那些值通常在其他欄裡也出現。如果反而是第一個欄看上去被忽略了,就檢查標題列前面有沒有一個位元組順序標記。