什麼是工作流程看板?

工作流程看板 是一個日文術語,表示看板或看板。 一位名叫太一歐野的工業工程師在豐田汽車公司開發工作流程看板,以提高製造效率。

雖然工作流程看板是針對製造而建立的,但軟體開發共用許多相同的目標,例如增加流程和輸送量。 軟體開發小組可以使用工作流程看板指導原則和方法,提升其效率,並更快為使用者提供價值。

Image that shows people using Kanban boards.

工作流程看板原則

採用工作流程看板需要遵循一些可能不同於小組先前方法的基本做法。

將工作可視化

了解開發小組狀態和工作進度可能會很困難。 以可視化方式呈現時,工作進度和目前狀態更容易瞭解,而不是工作專案或檔的清單。

工作的視覺效果是工作流程看板主要透過工作流程看板解決的主要原則。 這些面板會使用依進度組織的卡片來溝通整體狀態。 將工作可視化為面板上不同狀態的卡片,有助於輕鬆查看專案目前所在的大局,以及找出可能影響生產力的潛在瓶頸。

Diagram showing a Kanban board.

使用提取模型

從歷史上看,項目關係人要求功能的方式是將工作推送至開發小組,通常期限很緊。 如果小組必須採取快捷方式,在時間範圍內提供功能,品質就會受到影響。

工作流程看板著重於維護在考慮完成工作之前必須符合的一致質量水準。 為了支援此模型,項目關係人不會將工作推送至已經在容量工作的小組。 相反地,項目關係人會將要求新增至待辦專案,讓小組在容量可供使用時提取到其工作流程中。

強制使用 WIP 限制

嘗試同時處理太多工作的小組可能會因為頻繁且昂貴的內容切換而降低生產力。 小組很忙,但工作沒有完成,導致無法接受的高潛在客戶時間。 限制小組一次可處理積存專案的數目,有助於增加焦點,同時減少內容切換。 小組目前正在處理的專案稱為進行中工作(WIP)。

Teams 會決定 WIP 限制,或一次可以處理的項目數目上限。 一個紀律良好的小組確保不會超過他們的 WIP 限制。 如果小組超過 WIP 限制,他們會調查原因並努力解決根本原因。

測量持續改善

若要練習持續改善,開發小組需要一種方法來測量有效性和輸送量。 工作流程看板提供工作流程中工作狀態的動態檢視,讓小組可以實驗流程,並更輕鬆地評估工作流程的影響。 採用工作流程看板以進行持續改進的小組會使用前置時間和週期時間度量。

看板

工作流程看板是小組用來實作工作流程看板作法的工具之一。 工作流程看板可以是實體面板或軟體應用程式,以顯示排列成數據行的卡片。 典型的數據行名稱為 To-doDoDone,但小組可以自定義名稱以符合其工作流程狀態。 例如,小組可能偏好使用 [新增]、[開發]、[測試][UAT] 和 [完成]。

以軟體開發為基礎的工作流程看板會顯示對應至產品待辦專案卡片。 卡片包含其他項目的連結,例如工作和測試案例。 Teams 可以自定義卡片,以包含與其程式相關的資訊。

Screenshot of a software development Kanban board.

在工作流程看板上,WIP 限制會套用至所有進行中的數據行。 WIP 限制不適用於第一個和最後一個數據行,因為這些數據行代表尚未啟動或已完成的工作。 工作流程看板可藉由注意超過限制的數據行,協助小組保持在WIP限制內。 然後,Teams 可以判斷要移除瓶頸的動作。

累計流程圖

軟體開發型工作流程看板的常見補充是一個 稱為累積流程圖的圖表。。。。 此FDA 說明一段時間內每個狀態中的項目數目,通常橫跨數周。 水平軸會顯示時間軸,而垂直軸則顯示產品待辦項目的數目。 彩色區域表示卡片目前所在的狀態或數據行。

在一段時間內識別趨勢特別有用,包括瓶頸和其他進度速度中斷。 良好的CFD會顯示一致的向上趨勢,而小組正在處理專案。 如果小組在WIP限制內運作,整個圖表的彩色區域應該大致平行。

Image showing a cumulative flow diagram.

一或多個彩色區域的膨脹通常表示團隊流程中的瓶頸或障礙。 在下列CFC中,綠色已完成的工作是平的,而藍色的測試狀態正在成長,可能是因為瓶頸。

Image showing a bottleneck in a cumulative flow diagram.

敏捷式開發中的工作流程看板和 Scrum

雖然大致適合在敏捷式開發傘下,但 Scrum 和 Kanban 卻大相徑徑行。

  • Scrum 著重於固定長度短期衝刺,而工作流程看板是連續流程模型。
  • Scrum 已定義角色,而工作流程看板不會定義任何小組角色。
  • Scrum 會使用速度作為關鍵計量,而工作流程看板則使用週期時間。

Teams 通常會採用 Scrum 和 Kanban 的層面,以協助他們更有效地運作。 無論他們選擇哪些特性,團隊都能隨時檢閱和調整,直到他們找到最適合。 Teams 應該會開始簡單,而不會忽視定期為用戶傳遞價值的重要性。

使用 GitHub 的工作流程看板

GitHub 透過 專案面板(傳統版)提供工作流程看板體驗。 這些面板可協助您 組織並排定特定功能開發、完整藍圖或發行檢查清單的工作 優先順序。 您可以將 專案面板(傳統版) 自動化,以同步處理卡片狀態與相關聯的問題和提取要求。

使用 Azure Boards 的工作流程看板

Azure Boards 提供完整的 DevOps 規劃工作流程看板解決方案。 Azure Boards 在 Azure DevOps 之間具有深入整合,也可以是 Azure Boards-GitHub 整合一部分。