敏捷開發-Kanban
主題: |
敏捷開發-Kanban |
文章簡介: |
本文簡述敏捷軟體開發方法的演進、敏捷方法帶來的新思維與介紹『看板方法』 |
作者: |
Ellen |
版本/產出日期: |
V1.0/2016.12.08 |
1. 前言
• 一個團隊同時要開發多個專案,該怎麼辦?
• 要維護線上系統、要持續開發新功能、還時常要處理主管指派的插件,該怎麼辦?
在軟體工程演進的過程中,有一道曙光『敏捷方法』。
2. 敏捷軟體開發方法的演進
軟體開發方法中的『看板方法』(Kanban)是隸屬於敏捷開發的精實方法(Lean)之下,下圖簡述演進歷程
[圖:敏捷開發之演進歷程]
3. 敏捷開發
首先,需要澄清的部份是,敏捷開發並不是著重在『快速開發』,而是提供方法讓團隊『快速因應』各種事件的發生,強調的是解決問題。另外各種敏捷開發方法所提出的都是『原則』而非『規範』。團隊可視各自的狀況作調整,並且以持續改善的方式讓運作更加順暢。
敏捷開發有四個特點:
個人與互動 重於 流程與工具
可用的軟體 重於 詳盡的文件
與客戶合作 重於 合約協商
回應變化 重於 遵循計劃
敏捷方法是一種應對快速變化的環境(需求)的一種軟體開發能力。其主要的精神在於縮短的開發循環與漸進式開發和交付。所以用此角度來說,專案的成果(系統 / 軟體),包含規劃、各類的需求細節、設計等都會隨著專案的進行而逐漸的完整,而不是在一開始將所有的計畫與需求制定完成。
4. Kanban
看板之父 David J. Anderson 曾說明「看板」源由 :「看板」始自1940年代的豐田汽車公司發明。Kanban實際上在TPS(Toyota Production System,豐田生產系統)中,是一種訊號卡片(signal card)。名稱源自日文「看板」。在軟體開發過程,可以使用「看板卡」(經常為便利貼)來執行看板。這些卡片不是作為提高生產量的信號,而是用於記載生產數量和標記生產過程。
• 看板方法植基於兩組基本原則:『變更管理原則』和『服務交付原則』。
• 變更管理原則
1. 從你現在做的開始。尊重當前的流程、角色、職責和頭銜。
2. 同意(支持)持續增量與漸進的變化。
3. 鼓勵各層級對於六個實務的領導行為(包含個人與高階主管)。
看板方法不規範特定的角色或流程步驟,而是從現有的文化開始,同時鼓勵持續、漸增的進化系統。看板方法也在尋求方法幫助人員驅除恐懼和抵抗變化,以促進有益的改善。
• 服務交付原則
1. 了解並專注於客戶的需求和期望。
2. 管理工作; 讓組織成員自我管理。
3. 制定政策以改善客戶關係與商務產出。
看板方法強調注重客戶與提供客戶所需要的服務,而不是個體的行為。
• Kanban方法的六個實務做法:
1. 視覺化(Visualize)
主要目標是讓所有參與的人員明白當下整個團隊正在面對何種狀況,提高參與感與榮譽心。隨時隨地可視化的提醒,無論角色、無論輕重,每個人的付出都是重要的貢獻。另一個角度來說,也能觀察到哪些是不必要浪費。例如,過度的評估或者是無結果的會議。
2. 限制WIP(Limit work in progress)
管控工作量,讓每個成員在妥適的安排下穩定的產出。人員的穩定性也是專案成敗的關鍵因素。
3. 評估與管理工作流(Manage flow)
首要目的是觀察/找出障礙所在,以便討論障礙、解決障礙進而日後得以改善。
4. 讓規則明確(Make policies explicit)
讓團隊成員明瞭工作項目的開端為何與結束的條件又為何,需要大家都有一致的認知與共同的目標。
5. 落實回饋循環(Implement feedback loops)
無論視客戶或者是團隊成員,每個階段、每個過程都可以蒐集回饋資訊。看板方法主要的重點之一就是『建立逐步改善的文化』,為了做到這一點,落實各種不同層級的回饋,是極為重要的因素。
6. 藉由合作和實驗持續演進(Improve collaboratively, evolve experimentally)
此項目相呼應第五點,得到回饋之後探討如何改善。藉由一次又一次的溝通來尋求改善之道,每一次的小改變都能演進成下一次的成長。
5. 結語
敏捷方法是極有潛力發展成多贏的工作模式,可達成客戶滿意的內容,也可讓團隊成員有合理的工作項目亦有可發揮的舞台,另外也很有機會創造公司的獲利。導入的過程雖然不易但值得嘗試。
6. 參考來源
• Kanban board 介紹-
https://leankit.com/learn/kanban/kanban-board/
• Agile, Lean, Kanban開發方法原則-
http://www.reader.idv.tw/2015/08/agile-lean-kanban.html
• 先學Scrum還是先學Kanban-https://ruddyblog.wordpress.com/2014/11/10/%e5%85%88%e5%ad%b8-scrum%e9%82%84%e6%98%af-kanban/