敏捷軟件開發(fā)之 Kanban 101

What's Kanban

Kanban珊佣,源自日語“看板”(冷知識:Kanban 和漢語拼音一致),是由日本豐田公司的工程師大野大一于 1940 年發(fā)明的一套及時管理模式(Just In Time, JIT)柱嫌。JIT 的核心理念是:

讓正確的物資虎敦,在正確的時間,流動到正確的地方身隐,數量是剛剛好的數量

Toyota

在敏捷軟件開發(fā)流行后,工程管理人員也將 Kanban 引入到了軟件開發(fā)當中唯灵,成為了與 Scrum 比肩的一套通用實現模式贾铝。雖然現代版 Kanban 比當年豐田幾只木架、幾張貼紙豐富得多埠帕,但是主要功能還是還是這么幾點:

  • 可視化工作
  • 限制進行中的工作(WIP)
  • 最大化工作效率或流程
  • 持續(xù)改善團隊秩序

Basic

Kanban 的基本組成其實非常簡單:一塊看板垢揩,一個泳道圖和幾張貼紙:

Kanban Basic
  • Kanban Board:

    豐田用的看板非常簡陋,現代的開發(fā)團隊通常會使用敛瓷,例如trello叁巨,這種更專門的看板工具。上面提到過呐籽,看板的主要功能是可視化一個項目或是工作流锋勺。它能直觀地展示任務項,使團隊成員隨時查看每個任務的狀態(tài)狡蝶。

  • Kanban List or Lane

    泳道圖的每一列表示項目進程的不同階段庶橱;每一個泳道上會貼一些卡片,代表該階段正在處理的任務贪惹。我們可以將整塊看板抽象為管道苏章,每個泳道就是管道內先后執(zhí)行的處理器,卡片從左往后通過管道后馍乙,完成產品交付布近;交付花費的時間我們稱為 Cycle time垫释,是 Kanban 的一個重要指標。

    Pipeline & Processors

    各泳道通常使用 To-Do撑瞧、Doing棵譬、Done 這類能明確表達流程先后順序的標簽,以幫助我們直觀地發(fā)現各個階段的瓶頸预伺。我曾看到過有些團隊的看板泳道是“高”订咸、“中”、“低”這種優(yōu)先級標簽酬诀,這個一般用作 planning 階段的任務池(backlog)脏嚷,常于 Kanban 結合使用。

  • Kanban Card

    每張卡片代表的是一個任務項瞒御,它一般包括受托人父叙、截止時間、優(yōu)先級肴裙、分類趾唱、狀態(tài)等等 tag,現代開發(fā)工具一般都可以對這些 tag 進行篩選和查詢蜻懦。開發(fā)團隊通過對卡片進度的追蹤甜癞,可以了解到該任務的生命周期。

    這里再廢話幾句宛乃,Kanban 在上世紀四十年代被發(fā)明出來的時候悠咱,確實是工業(yè)界的一次“認知升級”,簡單高效征炼,影響深遠析既。但是都這么多年了,其實也沒太多神秘光環(huán)了柒室,大家別再過分挖掘一塊板或是一張紙有什么內在的深刻的含義了渡贾。

  • Work in progress(WIP) Limits

    Kanban 還有個核心概念叫做 WIP 限制,主要用來指定各階段的最大負荷雄右。限制 WIP 可以幫助領導干部更快地識別出工作流程中效率最低的那個階段,也就是交付管道中的瓶頸纺讲;盡早發(fā)現瓶頸能有效防止過度生產擂仍,并及時投入資源去解決最急切的問題。
    WIP 限制是 Kanban 有別于其他敏捷開發(fā)模式的最大特色熬甚。通俗來說逢渔,Kanban 關注的其實是吞吐量:通過一定的資源調動來改善吞吐量,從而提升生產效率乡括;而不是依賴 deadline 來提升效率肃廓。

    Bottleneck

Kanban vs. Scrum

OK智厌,上文提到了另一種敏捷軟件開發(fā)模式 Scrum,它也常常給我們呈現一幅貼紙卡片板的形象盲赊。那 Scrum 和 Kanban 有什么區(qū)別呢铣鹏?

Role

角色分配是它們倆最直觀的區(qū)別。Scrum 有三個最基本的角色扮演:

  • Product Owner:產品負責人哀蘑,主要職責是分析用戶需求诚卸,并將這些需求分解為各個子任務。他是各個任務優(yōu)先級的制定者绘迁,以及最終發(fā)布產品的決策者
  • Scrum Master:Scrum 管理的執(zhí)行者合溺,俗稱“監(jiān)工”,負責人力和資源的調配缀台,指導和監(jiān)督 Scrum 開發(fā)流程的執(zhí)行和落實
  • Team Members:就是具體干活的人棠赛,敏捷軟件開發(fā)比較強調主觀能動性,所以需要 member 們主動攬活膛腐,還能互相扶持

相比之下恭朗,Kanban 更簡潔,沒有強制的角色分配依疼,要求每個團隊成員自發(fā)地履行執(zhí)行監(jiān)督的職能痰腮。當然,現實中保證會有一個領導干部的啦律罢,不過存在感稍弱于 Scrum膀值,還常常親自參與干活。

Workflow

工作流程上也有很大的區(qū)別误辑,Scrum 是基于迭代周期(Sprint)執(zhí)行的沧踏,所以強調“按時完工”;而 Kanban 更關注最大 WIP巾钉,所以不強調時間結點翘狱。

Kanban 和 Scrum 的管理工具都是白板+貼紙的組合,主流的看板工具(如 Jira砰苍、TargetProces潦匈、Trello)都可以滿足兩者的需求。但是 Kanban 的每一列必需列出最大的 WIP 限制赚导,要求每一列的卡片數量不得高于這個限制茬缩。

Kanban Board

此外,Scrum 看板往往服務于一個較小組織吼旧,人力安排上要求這個組織包含全流程相關的所有技能凰锡,比如設計、測試、開發(fā)掂为、架構都能在這個組織里找到相應的角色裕膀,因此常常需要一個 member 擁有多種技能。

Kanban 相對應于一個較大組織的全流程管理勇哗,一個小組往往只負責其中幾個相鄰泳道昼扛;人力分工更加精細,更趨向傳統(tǒng)工業(yè)上的流水線管理智绸。

Which to choose

那到底是選 Kanban野揪,還是 Scrum 呢?顯然沒有明確的界碑瞧栗,不過有這么幾點建議可以用作參考斯稳。

  • 選 Scrum

    • 你可以相對容易地細分每個任務,并且這些細分的任務塊都能在規(guī)定時間內(比如兩周)完成
    • 需要整個項目的高度可預測性迹恐,Scrum 專注于將 sprint 時間減到最少
    • 如果團隊成員較新挣惰,Scrum 可以幫助大家更快地了解開發(fā)的全流程
  • 選 Kanban

    • 如果你的項目變更比較頻繁,包括需求殴边、人力憎茂、時間等等變更
    • 任務塊很難細分,并且?guī)缀醪豢赡茉趦芍軆韧旯?/li>
    • 團隊比較成熟且紀律良好锤岸,即便沒有指定 deadline 也能保證作業(yè)能及時完工

當然竖幔,我們也不必拘泥于教條,現實中常常把它們倆結合使用是偷,現在還給這種結合起了一個專業(yè)名詞拳氢,叫Scrumban。敏捷軟件開發(fā)的“敏捷”是簡單高效的意思蛋铆,大家千萬不要把它們搞成了玄學馋评;尤其是“原教旨主義”這一套,更是大可不必刺啦。

Benefits

OK留特,我們再來總結一下 Kanban 方法的優(yōu)點:

  • 靈活性(Flexibility)

    由于 Kanban 并沒有規(guī)定的時間限制,因而團隊可以更輕易地調整任務優(yōu)先級玛瘸,以便盡快解決生產瓶頸

  • 透明性(Transparency)

    團隊共用一張視圖蜕青,每個人都可以清晰地觀察到工作進度;領導干部能從更宏觀的視角觀察流水捧韵,并幫助制定提升計劃

  • 關注度(Focus)

    Kanban 的主要目標是控制 WIP 數量市咆,因此同一時間段內,一個小 team 只需要關注特定的任務數再来,也就擁有了更充裕的時間來解決最緊迫的問題

  • 生產效率(Productivity)

    從 1940 年代起,Kanban 就在各行業(yè)中被證明是一種行之可效的管理方式,生產團隊可以借助 Kanban 指標(Cycle time)制定長遠計劃芒篷,并提升生產效率搜变。

講了這么多的 Kanban 的好處,也說一下我認為的缺點针炉。Kanban 畢竟是脫胎于重工業(yè)時代挠他,強調的是組織性和紀律性,本質上還是將人放到流水線上操作篡帕;當生產線上的工人開始疲憊后殖侵,自然而然地會轉向“摸魚的藝術”。管理者在使用 Kanban 這類工具之外镰烧,也應加入更多有趣的內容拢军,以幫助團隊消除這類“疲憊感”。最后還是那句話——工具不是解決問題的關鍵怔鳖,人才是茉唉!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市结执,隨后出現的幾起案子度陆,更是在濱河造成了極大的恐慌,老刑警劉巖献幔,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件懂傀,死亡現場離奇詭異,居然都是意外死亡蜡感,警方通過查閱死者的電腦和手機蹬蚁,發(fā)現死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來铸敏,“玉大人缚忧,你說我怎么就攤上這事¤颈剩” “怎么了闪水?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長蒙具。 經常有香客問我球榆,道長,這世上最難降的妖魔是什么禁筏? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任持钉,我火速辦了婚禮,結果婚禮上篱昔,老公的妹妹穿的比我還像新娘每强。我一直安慰自己始腾,他們只是感情好,可當我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布空执。 她就那樣靜靜地躺著浪箭,像睡著了一般。 火紅的嫁衣襯著肌膚如雪辨绊。 梳的紋絲不亂的頭發(fā)上奶栖,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天,我揣著相機與錄音门坷,去河邊找鬼宣鄙。 笑死,一個胖子當著我的面吹牛默蚌,可吹牛的內容都是我干的冻晤。 我是一名探鬼主播,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼敏簿,長吁一口氣:“原來是場噩夢啊……” “哼明也!你這毒婦竟也來了?” 一聲冷哼從身側響起惯裕,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤温数,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后蜻势,有當地人在樹林里發(fā)現了一具尸體撑刺,經...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年握玛,在試婚紗的時候發(fā)現自己被綠了够傍。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡挠铲,死狀恐怖冕屯,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情拂苹,我是刑警寧澤安聘,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站瓢棒,受9級特大地震影響浴韭,放射性物質發(fā)生泄漏。R本人自食惡果不足惜脯宿,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一念颈、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧连霉,春花似錦榴芳、人聲如沸嗡靡。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽叽躯。三九已至财边,卻和暖如春肌括,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背酣难。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工谍夭, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人憨募。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓紧索,卻偏偏與公主長得像,于是被迫代替她去往敵國和親菜谣。 傳聞我的和親對象是個殘疾皇子珠漂,可洞房花燭夜當晚...
    茶點故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內容