在前面章節介紹過Kanban及建立,Kanban是一種輕量級的敏捷方法,基於工作的持續交付,不斷追蹤工作進度。不需要詳細的計畫,只需要根據團隊的工作流程和能力來制定Kanban。
這章節你將學會
Kanban與Scrum不一樣,它沒有Active sprints。Board預設有四列,分別為BACKLOG、SELECTED FOR DEVELOPMENT、IN PROGRESS、DONE,被分配到這問題的開發人員,可以將問題從一列移到另一列,能幫助開發人員顯示最新的狀態。
當你一個問題,預設會放在backlog。當團隊定義優先處理哪些任務時,會被移到「Selected for Development」列,所以開發人員只需要專注於「Selected for Development」列的問題就好,團隊有人要開始處理問題時,就會被移到移到「IN PROGRESS」列,當任務完成時就會被移到「Done」列。
除了預設的四列之外,你也可以自定義列,符合團隊的工作流程。
點擊右上(...),選擇「Board settings」,然後選擇「Columns」選項。
在下方右上點擊「Add column」按鈕
出現輸入列的名稱並選擇一個類別。 一般來說,如果該列代表工作流的開始,那麼它應該在 To Do 類別中。 如果它代表結束,那麼它應該在 Done 類別中。 否則,請使用「IN PROGRESS」類別。
這邊就命名test,然後點擊「Add」新增後,就會看到列裡面多一個test列,可以透過向左向右拖動列重新排列位置,讓工作流處於正確的狀態。
Kanban上面的Backlog可以與其餘的列分開。好處因為Backlog問題尚未確認,所以將Backlog分開,可以讓開發人員專注處理優先問題。那要如何把Backlog從Kanban移至backlog?
點擊右上(...),選擇「Board settings」,然後選擇「Columns」選項。
在下方左側有一個叫「Kanban backlog」。如果將一個或多個狀態移動至Kanban backlog,那在Kanban上就不會看見。
在Jira中,Kabnban backlog可以與 Kanban board分離,為了簡化Kanban board流程,並允許Backlog單獨工作。
剛剛把Backlog移動後,左邊會出現一個Backlog選項,點進去後就會看到在Kanban board裡的Backlog列所有的問題。
那在最上方的第一列「Selected for Development」,你可以將需要處理的問題移上去,讓開發人員知道需要處理的問題。當你把問題移上去時,在Kanban board也可以看到該問題。
通過限制進行中的工作,可以快速識別流程中的任何瓶頸,問題很容易被發現,限制進行中的工作也限制了過程中的浪費量,如果在某個狀態中存在問題的累積,可能會有問題的工作被延遲,一但你為工作流設置了最小和最大的約束,當你違反了這些約束Kanban會出現訊息色告訴你,也是持續改進團隊工作的一種方式。
點擊右上(...),選擇「Board settings」,然後選擇「Columns」選項。
在點擊「Column Constraint」下拉選單,可以選擇定義對問題數量或不包括子任務的問題數量的約束,這裡選擇「Issue Count」選項。
你可以看到每一列都沒有最小或最大約束
在這裡將Selected for Development最小改為2,意味著如果問題少於兩個,則該列表就會出現黃色訊息,In Progress最大改為3,超過三個則會顯示紅色訊息。
在限制了工作訊息後,在列名稱旁邊有一個「Min 2」文字,由於我們在此列中只有一個問題,因此它以黃色突出顯示。因此需要加入問題至列中
In Progress 列名稱旁邊有一個「Max 3」文字。 由於有四個問題的狀態為進行中,因此該列已變為紅色。代表團隊有過多的問題在處理中,在要開始製作新問題前,先把手邊的工作結束後再開始新問題。
需要注意的是限制不宜設太高或太低
Scrum和Kanban的關鍵區別是,Scrum限制了每次迭代的工作,Kanban是一個連續的問題流,從Backlog到完成的列。
Backlog與Kanban board分離,可以讓開發人員更專注於優先處理的問題。限制工作量,可以幫助團隊識別工作流中的瓶頸,當發現Kanban board有衝突時,團隊應該重新評估當前的工作負載,不斷改進流程,進而提高工作效率。