關(guān)于我們
書(shū)單推薦
新書(shū)推薦
|
Scrum精髓:敏捷轉(zhuǎn)型指南 短短幾年時(shí)間,Scrum躍升為敏捷首選方法,在全球各地得以普遍應(yīng)用。針對(duì)如何用好、用巧這個(gè)看似簡(jiǎn)單的框架,本書(shū)以通俗易懂的語(yǔ)言、條理清晰的脈絡(luò)闡述和提煉出Scrum的精髓。全書(shū)共4部分23章,闡述了七大核心概念:Scrum框架,敏捷原則,沖刺,需求和用戶故事,產(chǎn)品訂單,估算與速率,技術(shù)債;五大角色:產(chǎn)品負(fù)責(zé)人,ScrumMaster,開(kāi)發(fā)團(tuán)隊(duì),Scrum團(tuán)隊(duì)結(jié)構(gòu),經(jīng)理:Scrum規(guī)劃原則及四大規(guī)劃活動(dòng):多層次規(guī)劃、產(chǎn)品組合規(guī)劃、產(chǎn)品規(guī)劃和長(zhǎng)期規(guī)劃;沖刺四大活動(dòng):規(guī)劃、執(zhí)行、評(píng)審和回顧。 本書(shū)取自作者十多年的實(shí)踐經(jīng)驗(yàn),對(duì)員工個(gè)體和管理層都具有重要的指導(dǎo)和參考意義,可以幫助企業(yè)導(dǎo)入Scrum方法實(shí)現(xiàn)敏捷轉(zhuǎn)型,從而在動(dòng)態(tài)的商業(yè)環(huán)境中以積極的心態(tài)擁抱變化,做出優(yōu)秀、卓越的產(chǎn)品,成就創(chuàng)業(yè)、守業(yè)、常青基業(yè)。
上市以來(lái)雄踞亞馬遜敏捷類(lèi)暢銷(xiāo)書(shū)榜首,熱評(píng)如潮 Scrum精髓,一點(diǎn)就通,一本就夠 揭示同類(lèi)書(shū)不告訴你的主題和秘笈 適用于大多數(shù)敏捷過(guò)程的實(shí)用指南 適合團(tuán)隊(duì)成員、經(jīng)理和執(zhí)行負(fù)責(zé)人閱讀的知識(shí)讀本 如果想用Scrum來(lái)開(kāi)發(fā)足以引爆流行的產(chǎn)品和服務(wù),本書(shū)就是你夢(mèng)寐以求的完全參考。作為業(yè)內(nèi)領(lǐng)先的敏捷教練和培訓(xùn)師,KennethRubin用通俗易懂的語(yǔ)言和豐富的實(shí)例與我們分享他十多年的實(shí)踐經(jīng)驗(yàn),詮釋Scrum的價(jià)值觀、原則和實(shí)踐,描述一些靈活、可行的方法幫助我們用好Scrum! ♂槍(duì)Scrum新手和達(dá)人,本書(shū)從團(tuán)隊(duì)、產(chǎn)品和產(chǎn)品組合這三個(gè)層面來(lái)介紹、澄清和深化Scrum的相關(guān)原則和應(yīng)用。Rubin曾幫助數(shù)百個(gè)組織成功應(yīng)用Scrum,積累了相當(dāng)豐富的實(shí)踐經(jīng)驗(yàn)和表達(dá)能力。作為這些經(jīng)驗(yàn)和能力的結(jié)晶,本書(shū)圖文并茂,通過(guò)通俗易懂的描述和兩百多幅圖對(duì)Scrum進(jìn)行了闡述,這些圖采用的是一種全新的視覺(jué)圖標(biāo)語(yǔ)言,用于描述Scrum的角色、工件和活動(dòng)。 本書(shū)可以幫助團(tuán)隊(duì)成員、經(jīng)理和執(zhí)行主管了解Scrum常識(shí),掌握可以拿來(lái)即用的通用詞匯表,充分攫取Scrum的潛力,最終實(shí)現(xiàn)優(yōu)秀團(tuán)隊(duì)能夠做到持續(xù)、穩(wěn)健發(fā)展的目標(biāo)。
什么是Scrum?2 Scrum的起源3 為什么要用Scrum?5 Genomica取得的成果6 Scrum能給你帶來(lái)幫助嗎?6 復(fù)雜域9 繁雜域10 簡(jiǎn)單域10 混亂域10 無(wú)序11 事務(wù)性工作11 結(jié)語(yǔ)12 第Ⅰ部分 核 心 概 念 第2章 Scrum框架17 概述17 Scrum角色19 產(chǎn)品負(fù)責(zé)人20 ScrumMaster20 開(kāi)發(fā)團(tuán)隊(duì)21 Scrum活動(dòng)與工件21 產(chǎn)品列表23 沖刺25 制定沖刺計(jì)劃26 沖刺執(zhí)行28 每日例會(huì)29 完成31 沖刺評(píng)審32 沖刺回顧33 結(jié)語(yǔ)34 第3章 敏捷原則35 概述35 可變性和不確定性37 積極采用有幫助的可變性38 采用迭代和增量開(kāi)發(fā)39 通過(guò)檢視、調(diào)整和透明充分利用可變性42 同時(shí)減少各種各樣的不確定因素43 預(yù)測(cè)和適應(yīng)44 不到最后時(shí)刻,不輕易做決定44 承認(rèn)無(wú)法一開(kāi)始就把事情做對(duì)45 偏好適應(yīng)性、探索式的方法46 用經(jīng)濟(jì)合理的方法接受變化48 平衡預(yù)測(cè)性的事前工作和適應(yīng)性的剛好及時(shí)工作之間的關(guān)系51 經(jīng)驗(yàn)認(rèn)知52 快速驗(yàn)證重要的假設(shè)52 利用多個(gè)認(rèn)知循環(huán)并行的優(yōu)勢(shì)53 妥善組織工作流程以獲得快速反饋54 WIP56 批量大小要經(jīng)濟(jì)合理56 識(shí)別并管理庫(kù)存以達(dá)到良好的流動(dòng)57 關(guān)注閑置工作,而非閑置人員59 考慮延期成本61 進(jìn)度63 根據(jù)實(shí)時(shí)信息來(lái)重新制定計(jì)劃63 通過(guò)驗(yàn)證工作結(jié)果來(lái)度量進(jìn)度63 聚焦于以?xún)r(jià)值為中心的交付64 執(zhí)行65 快速前進(jìn),但不匆忙65 以質(zhì)量為魂65 采用最小夠用的儀式66 結(jié)語(yǔ)68 第4章 沖刺71 概述71 時(shí)長(zhǎng)限定72 設(shè)定WIP數(shù)量限制72 強(qiáng)制排列優(yōu)先順序73 展示進(jìn)度73 避免不必要的完美主義73 促進(jìn)結(jié)束74 增強(qiáng)可預(yù)測(cè)性74 持續(xù)期短74 容易規(guī)劃74 反饋快74 投入產(chǎn)出比高75 錯(cuò)誤有限75 有助于“滿血復(fù)活”75 檢查點(diǎn)多76 一致的持續(xù)期77 有節(jié)奏感78 簡(jiǎn)化規(guī)劃活動(dòng)79 鎖定沖刺目標(biāo)80 什么是沖刺目標(biāo)?80 共同承諾80 是變更,還是澄清?80 變更引起的后果81 注重實(shí)效83 異常終止84 完成的定義85 什么是完成的定義?86 完成的定義可以隨時(shí)間演變88 完成的定義還是接收標(biāo)準(zhǔn)?89 完成還是完成-完成90 結(jié)語(yǔ)91 第5章 需求與用戶故事93 概述93 利用對(duì)話96 逐步細(xì)化97 用戶故事是什么?97 卡片98 對(duì)話99 確認(rèn)100 詳細(xì)程度101 好故事的INVEST原則104 獨(dú)立104 可協(xié)商105 有價(jià)值106 可估算107 大小合適108 可測(cè)試108 非功能性需求109 知識(shí)獲取型故事110 收集故事112 用戶故事寫(xiě)作研討會(huì)112 繪制故事地圖113 結(jié)語(yǔ)115 第6章 產(chǎn)品列表117 概述117 PBI118 產(chǎn)品列表的四大特征119 詳略得當(dāng)119 涌現(xiàn)的120 做過(guò)估算的121 排列優(yōu)先順序的122 梳理123 什么是梳理?123 由誰(shuí)來(lái)梳理?124 何時(shí)梳理?125 就緒的定義127 工作流管理128 版本的工作流管理129 沖刺的工作流管理130 產(chǎn)品列表有哪些,應(yīng)該有多少?131 什么是產(chǎn)品?132 大型產(chǎn)品,層級(jí)化列表133 多個(gè)團(tuán)隊(duì),一個(gè)產(chǎn)品列表135 一個(gè)團(tuán)隊(duì),多個(gè)產(chǎn)品136 結(jié)語(yǔ)137 第7章 估算與速率139 概述139 何時(shí)估,估什么?141 組合列表?xiàng)l目的估算141 產(chǎn)品列表?xiàng)l目的估算142 任務(wù)估算143 PBI估算的概念143 團(tuán)隊(duì)估算144 估算不是承諾145 準(zhǔn)確與精確146 估算相對(duì)大小147 PBI估算的單位149 故事點(diǎn)149 理想天149 規(guī)劃撲克150 估算151 活動(dòng)規(guī)則152 好處155 什么是速率?155 計(jì)算速率范圍156 預(yù)測(cè)速率157 影響速率的因素158 速率的誤用160 結(jié)語(yǔ)161 第8章 技術(shù)債163 概述163 技術(shù)債的后果165 爆發(fā)點(diǎn)不可預(yù)期165 交付時(shí)間延長(zhǎng)166 缺陷數(shù)量可觀167 開(kāi)發(fā)和支持成本上升167 產(chǎn)品萎縮168 可預(yù)測(cè)性降低168 表現(xiàn)越來(lái)越差168 挫折感四處彌漫168 客戶滿意度降低169 技術(shù)債的起因169 如期完工的壓力169 試圖以錯(cuò)誤的方式提高速率170 誤區(qū):減少測(cè)試可以提高速率171 債累債172 技術(shù)債必須加以管理173 管理應(yīng)計(jì)技術(shù)債174 使用良好的技術(shù)實(shí)踐174 使用強(qiáng)完成定義175 正確理解技術(shù)債經(jīng)濟(jì)175 讓技術(shù)債可見(jiàn)178 讓技術(shù)債在業(yè)務(wù)層面可見(jiàn)178 讓技術(shù)債在技術(shù)層面可見(jiàn)180 償還技術(shù)債181 并非所有技術(shù)債都應(yīng)該償還182 行將就木的產(chǎn)品183 一次性原型183 短命產(chǎn)品183 應(yīng)用童子軍規(guī)則 (有債就還)184 分期償還技術(shù)債185 先償還高息技術(shù)債186 一邊做有客戶價(jià)值的工作,一邊償還技術(shù)債186 結(jié)語(yǔ)188 第Ⅱ部分 Scrum的角色 第9章 產(chǎn)品負(fù)責(zé)人191 概述191 主要職責(zé)192 管理經(jīng)濟(jì)效益193 版本層面的經(jīng)濟(jì)考量193 沖刺級(jí)別的經(jīng)濟(jì)考量194 產(chǎn)品列表的經(jīng)濟(jì)考量195 參與規(guī)劃195 梳理產(chǎn)品列表195 定義接收標(biāo)準(zhǔn)并驗(yàn)證196 與開(kāi)發(fā)團(tuán)隊(duì)協(xié)作196 與利益干系人協(xié)作198 特征∕技能198 領(lǐng)域能力199 人際交往能力200 決策力200 責(zé)任心201 日常工作內(nèi)容201 誰(shuí)來(lái)?yè)?dān)任產(chǎn)品負(fù)責(zé)人?204 內(nèi)部開(kāi)發(fā)205 商業(yè)開(kāi)發(fā)206 外包開(kāi)發(fā)項(xiàng)目208 組件開(kāi)發(fā)209 產(chǎn)品負(fù)責(zé)人兼任其他角色210 產(chǎn)品負(fù)責(zé)人團(tuán)隊(duì)210 產(chǎn)品負(fù)責(zé)人代理211 首席產(chǎn)品負(fù)責(zé)人212 結(jié)語(yǔ)213 第10章 ScrumMaster215 概述215 主要職責(zé)215 教練215 服務(wù)型領(lǐng)導(dǎo)217 過(guò)程權(quán)威217 “保護(hù)傘”217 “清道夫”218 變革代言人218 特征/技能218 見(jiàn)多識(shí)廣218 善于提問(wèn)219 有耐心219 有協(xié)作精神220 保護(hù)團(tuán)隊(duì)220 公開(kāi)透明220 日常工作內(nèi)容221 履行角色222 誰(shuí)來(lái)?yè)?dān)任ScrumMaster?222 ScrumMaster是全職工作嗎?223 ScrumMaster兼任其他角色223 結(jié)語(yǔ)225 第11章 開(kāi)發(fā)團(tuán)隊(duì)227 概述227 專(zhuān)職團(tuán)隊(duì)227 主要職責(zé)228 沖刺執(zhí)行229 每日檢視和調(diào)整229 梳理產(chǎn)品列表229 沖刺規(guī)劃229 檢視和調(diào)整產(chǎn)品與過(guò)程230 特征/技能230 自組織231 跨職能的多樣化和全面化233 T型技能234 火槍手態(tài)度236 溝通廣泛237 透明溝通239 規(guī)模適中239 專(zhuān)注、有責(zé)任感240 工作步調(diào)可持續(xù)242 團(tuán)隊(duì)人員穩(wěn)定243 結(jié)語(yǔ)245 第12章 Scrum團(tuán)隊(duì)結(jié)構(gòu)247 概述247 特性團(tuán)隊(duì)與組件團(tuán)隊(duì)248 多團(tuán)隊(duì)之間的協(xié)調(diào)253 SoS253 版本火車(chē)255 結(jié)語(yǔ)258 第13章 經(jīng)理259 概述259 塑造團(tuán)隊(duì)261 定義邊界261 提供一個(gè)清晰而鼓舞人心的目標(biāo)262 組建團(tuán)隊(duì)262 改變團(tuán)隊(duì)的人員組成263 授權(quán)團(tuán)隊(duì)264 培育團(tuán)隊(duì)265 激勵(lì)團(tuán)隊(duì)265 發(fā)展團(tuán)隊(duì)能力266 建立職能領(lǐng)導(dǎo)力267 保持團(tuán)隊(duì)的完整性267 整改環(huán)境268 傳播敏捷價(jià)值觀268 移除組織層面的障礙268 使內(nèi)部各個(gè)團(tuán)隊(duì)一致269 使外部合作伙伴一致269 管理價(jià)值創(chuàng)造流程270 采用系統(tǒng)化視角270 管理經(jīng)濟(jì)效益270 測(cè)量和報(bào)告271 項(xiàng)目經(jīng)理272 Scrum團(tuán)隊(duì)中的項(xiàng)目管理職責(zé)272 保留單獨(dú)的項(xiàng)目經(jīng)理角色274 結(jié)語(yǔ)278 第Ⅲ部分 規(guī) 劃 第14章 Scrum的規(guī)劃原則283 概述283 假設(shè)事先無(wú)法制定完美計(jì)劃284 事先規(guī)劃有幫助,但不宜過(guò)度284 最后責(zé)任時(shí)刻才敲定計(jì)劃286 關(guān)注適應(yīng)與重新規(guī)劃勝于遵循計(jì)劃286 正確管理規(guī)劃庫(kù)存288 提倡更小、更頻繁發(fā)布289 計(jì)劃快速學(xué)習(xí)并在必要時(shí) 調(diào)頭291 結(jié)語(yǔ)291 第15章 多層級(jí)規(guī)劃293 概述293 組合規(guī)劃295 產(chǎn)品規(guī)劃(構(gòu)想)295 愿景295 概要產(chǎn)品列表296 產(chǎn)品路線圖296 版本規(guī)劃298 沖刺規(guī)劃300 日常規(guī)劃301 結(jié)語(yǔ)302 第16章 產(chǎn)品組合規(guī)劃303 概述303 時(shí)間安排303 參與者304 流程304 進(jìn)度安排策略306 優(yōu)先考慮生命周期利潤(rùn)307 計(jì)算延期成本308 估算要準(zhǔn)確,不必精確311 流入策略312 應(yīng)用經(jīng)濟(jì)過(guò)濾器313 到達(dá)率和離開(kāi)率要平衡314 快速擁抱新涌現(xiàn)的機(jī)會(huì)316 為更小、更頻繁發(fā)布做計(jì)劃317 流出策略318 關(guān)注閑置工作, 而非閑置人員318 設(shè)立WIP限制319 等待整個(gè)團(tuán)隊(duì)一起行動(dòng)320 WIP策略321 使用邊際效益321 結(jié)語(yǔ)323 第17章 構(gòu)想(產(chǎn)品規(guī)劃)325 概述325 時(shí)間安排326 參與者327 過(guò)程327 示例:SR4U329 建立愿景330 創(chuàng)建概要產(chǎn)品列表333 定義產(chǎn)品路線圖334 其他活動(dòng)337 從經(jīng)濟(jì)合理的角度構(gòu)想產(chǎn)品339 瞄準(zhǔn)一個(gè)實(shí)際的信心閾值340 關(guān)注短期收益341 動(dòng)作要快342 花錢(qián)買(mǎi)經(jīng)驗(yàn)認(rèn)知343 使用遞增/暫行的資助方式344 快速學(xué)習(xí)并調(diào)頭 (即快速失。345 結(jié)語(yǔ)346 第18章 版本規(guī)劃(長(zhǎng)期規(guī)劃)347 概述347 時(shí)間安排348 參與者349 過(guò)程349 版本約束351 固定一切352 固定范圍和日期352 固定范圍354 固定日期354 可變質(zhì)量355 更新約束355 梳理產(chǎn)品列表356 細(xì)化最小可發(fā)布特性357 沖刺映射(PBI歸位)358 版本規(guī)劃:固定日期版本360 版本規(guī)劃:固定范圍版本365 計(jì)算成本367 溝通進(jìn)展情況368 固定范圍版本如何溝通369 固定日期版本如何溝通371 結(jié)語(yǔ)373 第Ⅳ部分 沖 刺 第19章 沖刺規(guī)劃377 概述377 時(shí)間安排377 參與者378 流程378 沖刺規(guī)劃的兩種方式380 兩段式?jīng)_刺規(guī)劃381 一次性沖刺規(guī)劃382 確定生產(chǎn)能力382 什么是生產(chǎn)能力?382 用故事點(diǎn)來(lái)表示生產(chǎn)能力384 用工時(shí)來(lái)表示生產(chǎn)能力385 選取PBI386 獲得信心386 細(xì)化沖刺目標(biāo)388 敲定承諾388 結(jié)語(yǔ)389 第20章 沖刺執(zhí)行391 概述391 時(shí)間安排391 參與者391 流程392 沖刺執(zhí)行規(guī)劃393 工作流程管理394 并行工作和蜂擁式394 從哪個(gè)PBI開(kāi)始397 如何安排任務(wù)397 需要完成哪些工作?398 誰(shuí)來(lái)做具體工作?398 每日例會(huì)399 任務(wù)執(zhí)行:強(qiáng)調(diào)技術(shù)實(shí)踐399 溝通401 任務(wù)板401 沖刺燃盡圖402 沖刺燃燒圖404 結(jié)語(yǔ)406 第21章 沖刺評(píng)審407 概述407 參與者408 準(zhǔn)備工作410 確定邀請(qǐng)誰(shuí)參加410 安排活動(dòng)日程411 確認(rèn)沖刺工作完成411 演示準(zhǔn)備工作412 確定誰(shuí)做什么413 方式(方法)413 總結(jié)414 演示415 討論416 調(diào)整416 沖刺評(píng)審的問(wèn)題417 簽字接收417 斷斷續(xù)續(xù)地參與417 大型開(kāi)發(fā)工作418 結(jié)語(yǔ)419 第22章 沖刺回顧421 概述421 參與者423 準(zhǔn)備工作424 定義回顧重點(diǎn)425 選擇練習(xí)活動(dòng)425 收集客觀數(shù)據(jù)426 安排回顧日程426 方式(方法)427 營(yíng)造氛圍429 建立共同背景429 事件時(shí)間線431 情緒測(cè)震儀431 得出見(jiàn)解432 確定采取行動(dòng)437 回顧結(jié)束438 貫徹執(zhí)行438 沖刺回顧的問(wèn)題439 結(jié)語(yǔ)442 第23章 前進(jìn)之路443 Scrum,有完?沒(méi)完!443 修行靠個(gè)人444 分享最佳實(shí)踐444 使用Scrum探明未來(lái)之路446 整裝待發(fā)!447 后記449 詞匯表453 參考文獻(xiàn)475
KennethRubin
Ken提供Scrum和敏捷培訓(xùn)與教導(dǎo)服務(wù),旨在幫助企業(yè)以更高效、更經(jīng)濟(jì)合理的方式開(kāi)發(fā)產(chǎn)品。作為一名認(rèn)證的Scrum培訓(xùn)師,他曾為1.8萬(wàn)人提供過(guò)Scrum和敏捷培訓(xùn),管理過(guò)面向?qū)ο箜?xiàng)目與企業(yè)轉(zhuǎn)型管理過(guò)程。他還為數(shù)千家公司(從初創(chuàng)公司到財(cái)富十強(qiáng)的企業(yè))提供教練服務(wù)。Rubin是全球Scrum聯(lián)盟的首任常務(wù)董事,Scrum聯(lián)盟是一家非盈利機(jī)構(gòu),著眼于推廣Scrum的成功應(yīng)用。從事開(kāi)發(fā)工作期間,Rubin也是一個(gè)能干的多面手,先后擔(dān)任過(guò)Scrum產(chǎn)品負(fù)責(zé)人、ScrumMaster和開(kāi)發(fā)人員。他的管理經(jīng)歷也很豐富,擔(dān)任過(guò)CEO,COO,工程副總,產(chǎn)品管理副總和專(zhuān)業(yè)服務(wù)副總。他還是SucceedingwithObjects:DecisionFrameworksforProjectManagement一書(shū)的合著者,此書(shū)出版于1995年。他還獨(dú)立開(kāi)發(fā)了業(yè)內(nèi)享有盛譽(yù)的OBA/D(對(duì)象行為分析與設(shè)計(jì))方法論。 姜信寶喜歡新鮮事物,喜歡讀書(shū),喜歡分享,愿意和大家共同進(jìn)步。Agile1001公開(kāi)課聯(lián)合發(fā)起人之一。CSP,CSM,PMP。熱衷和推廣敏捷,是國(guó)內(nèi)敏捷社區(qū)的主要推動(dòng)者之一。 米全喜IT行業(yè)的一名老兵,敏捷愛(ài)好者,在軟件開(kāi)發(fā)、測(cè)試、項(xiàng)目管理和運(yùn)行方面都有一定的工作經(jīng)驗(yàn),目前從事金融行業(yè)IT流程管理工作。參與過(guò)《團(tuán)隊(duì)之美》、《編程 KennethRubin
推薦序—Mike Cohn
推薦序—Ron Jeffries 推薦序—李國(guó)彪 前言 致謝 第1 章引言 什么是Scrum? Scrum 的起源 為什么要用Scrum? Genomica 取得的成果 Scrum 能給你帶來(lái)幫助嗎? 復(fù)雜域 繁雜域 簡(jiǎn)單域 推薦序—Mike Cohn 推薦序—Ron Jeffries 推薦序—李國(guó)彪 前言 致謝 第1 章引言 什么是Scrum? Scrum 的起源 為什么要用Scrum? Genomica 取得的成果 Scrum 能給你帶來(lái)幫助嗎? 復(fù)雜域 繁雜域 簡(jiǎn)單域 混亂域 無(wú)序 常常被打斷的工作 結(jié)語(yǔ) 第Ⅰ部分 核心概念 第 2 章 Scrum 框架 概述 Scrum 角色 產(chǎn)品負(fù)責(zé)人 ScrumMaster 開(kāi)發(fā)團(tuán)隊(duì) Scrum 活動(dòng)與工件 產(chǎn)品 Backlog 沖刺 制定沖刺計(jì)劃 目錄 沖刺執(zhí)行 每日例會(huì) 完成 沖刺評(píng)審 沖刺回顧 結(jié)語(yǔ) 第 3 章敏捷原則 概述 可變性和不確定性 積極采用有幫助的可變性 采用迭代和增量開(kāi)發(fā) 通過(guò)檢查、調(diào)整和透明性充分利用可變性 同時(shí)減少各種形式的不確定因素 預(yù)測(cè)與適應(yīng) 保持選擇開(kāi)放 承認(rèn)無(wú)法一開(kāi)始就把事情做對(duì) 偏好適應(yīng)性、探索式的方法 用經(jīng)濟(jì)合理的方法接受變化 平衡預(yù)測(cè)性的事前工作和適應(yīng)性的剛好及時(shí)工作之間的關(guān)系 經(jīng)過(guò)驗(yàn)證的認(rèn)知 快速驗(yàn)證重要的假設(shè) 利用多個(gè)認(rèn)知循環(huán)并行的優(yōu)勢(shì) 組織妥善工作流程以獲得快速反饋 在制品 批量大小要經(jīng)濟(jì)、合理 識(shí)別并管理庫(kù)存以達(dá)到良好的流動(dòng) 考慮延遲成本 進(jìn)度 根據(jù)實(shí)時(shí)信息來(lái)重新制定計(jì)劃 通過(guò)驗(yàn)證工作結(jié)果來(lái)度量進(jìn)度 聚焦于以?xún)r(jià)值為中心的交付 執(zhí)行 快速前進(jìn),但不匆忙 內(nèi)建質(zhì)量 采用最小夠用的儀式 結(jié)語(yǔ) 第 4 章沖刺 概述 時(shí)長(zhǎng)限定 設(shè)定在制品數(shù)量限制 強(qiáng)制排列優(yōu)先順序 展示進(jìn)度 避免不必要的完美主義 促進(jìn)結(jié)束 增強(qiáng)可預(yù)測(cè)性 持續(xù)期短 容易制定計(jì)劃 快速反饋 提高投入產(chǎn)出比 有限的錯(cuò)誤 重新煥發(fā)活力 頻繁的檢查點(diǎn) 一致的持續(xù)期 節(jié)奏感的好處 簡(jiǎn)化計(jì)劃過(guò)程 所做的變化不允許改變目標(biāo) 什么是沖刺目標(biāo)? 共同的承諾 是變更,還是澄清 變更所引起的后果 注重實(shí)效 異常終止 完成的定義 什么是完成的定義 完成的定義可以隨時(shí)間演變 完成的定義與驗(yàn)收標(biāo)準(zhǔn)的比較 完成還是完成-完成 結(jié)語(yǔ) 第 5 章需求與用戶故事 概述 利用對(duì)話 逐步細(xì)化 用戶故事是什么 卡片 確認(rèn) 細(xì)化程度 好故事的INVEST 原則 獨(dú)立 可協(xié)商 有價(jià)值 可估算 大小合適(。 可測(cè)試 非功能性需求 目錄 知識(shí)獲取型故事 收集故事 用戶故事編寫(xiě)研討會(huì) 繪制故事地圖 結(jié)語(yǔ) 第 6 章產(chǎn)品 Backlog 概述 PBI 哪種方法更適合好的產(chǎn)品Backlog 有何特征 詳略得當(dāng) 涌現(xiàn)的 做過(guò)估算的 排列好優(yōu)先順序的 修整 什么是修整 由誰(shuí)來(lái)修整? 何時(shí)修整? 就緒的定義 工作流管理 版本工作流管理 沖刺工作流管理 有哪些產(chǎn)品Backlog,有多少個(gè)? 什么是產(chǎn)品? 大型產(chǎn)品——層級(jí)式Backlog 多個(gè)團(tuán)隊(duì),一個(gè)產(chǎn)品Backlog 一個(gè)團(tuán)隊(duì),多個(gè)產(chǎn)品 結(jié)語(yǔ) 第 7 章估算與速率 概述 何時(shí)估算,估算什么 產(chǎn)品組合Backlog 條目的估算 產(chǎn)品 Backlog 的估算 任務(wù)估算 PBI 估算的概念 團(tuán)隊(duì)估算 估算不是承諾 準(zhǔn)確相比精確 相對(duì)大小估算 PBI 估算單位 故事點(diǎn) 理想天數(shù) 規(guī)劃撲克 估算規(guī)模 活動(dòng)規(guī)則 好處 什么是速率? 計(jì)算速率范圍 預(yù)測(cè)速率 影響速率 速率的誤用 結(jié)語(yǔ) 第 8 章技術(shù)債 概述 技術(shù)債的后果 目錄 不知何時(shí)爆發(fā) 交付時(shí)間增長(zhǎng) 缺陷數(shù)量可觀 開(kāi)發(fā)支持成本上升 產(chǎn)品萎縮 可預(yù)測(cè)度降低 表現(xiàn)欠佳 普遍的挫敗感 客戶滿意度降低 技術(shù)債的起因 按期完工的壓力 嘗試錯(cuò)誤地提速 誤區(qū):減少測(cè)試可以提速 債累債 技術(shù)債必須加以管理 管理技術(shù)債的增長(zhǎng) 使用良好的技術(shù)實(shí)踐 使用強(qiáng)完成標(biāo)準(zhǔn) 正確理解技術(shù)債的經(jīng)濟(jì)效果 讓技術(shù)債可見(jiàn) 讓技術(shù)債在業(yè)務(wù)層面可見(jiàn) 讓技術(shù)債在技術(shù)層面可見(jiàn) 維護(hù)技術(shù)債 并非所有技術(shù)債都應(yīng)償還 行將就木型產(chǎn)品 即扔原型 短命型產(chǎn)品 應(yīng)用童子軍規(guī)則(即遇技術(shù)債即維護(hù)) 增量地償還技術(shù)債 先償還高利息技術(shù)債 邊做有客戶價(jià)值工作邊償還技術(shù)債 結(jié)語(yǔ) 第Ⅱ部分 Scrum 的角色 第 9 章產(chǎn)品負(fù)責(zé)人 概述 主要職責(zé) 管理經(jīng)濟(jì)因素 版本發(fā)布層面的經(jīng)濟(jì)情況 沖刺級(jí)的經(jīng)濟(jì)情況 產(chǎn)品 Backlog 的經(jīng)濟(jì)因素 參與制定計(jì)劃 修整產(chǎn)品Backlog 定義驗(yàn)收標(biāo)準(zhǔn)并驗(yàn)證這些標(biāo)準(zhǔn)是否得到滿足 與開(kāi)發(fā)團(tuán)隊(duì)協(xié)作 與利益干系人協(xié)作 特征∕技能 領(lǐng)域能力 人際交往能力 決策力 責(zé)任心 日常一天 誰(shuí)應(yīng)當(dāng)成為產(chǎn)品負(fù)責(zé)人? 內(nèi)部開(kāi)發(fā) 商業(yè)開(kāi)發(fā) 外包開(kāi)發(fā)項(xiàng)目 組件開(kāi)發(fā) 目錄 產(chǎn)品負(fù)責(zé)人兼任其他角色 產(chǎn)品負(fù)責(zé)人團(tuán)隊(duì) 產(chǎn)品負(fù)責(zé)人代理 首席產(chǎn)品負(fù)責(zé)人 結(jié)語(yǔ) 第 10 章 ScrumMaster 概述 主要職責(zé) 教練 服務(wù)型領(lǐng)導(dǎo) 過(guò)程專(zhuān)家 屏蔽干擾(在Scrum 中通常說(shuō)“保護(hù)團(tuán)隊(duì)”) 移除障礙 變革推動(dòng)者 特征/技能 知識(shí)淵博 善于提問(wèn) 有耐心 有協(xié)作精神 給予保護(hù)的 透明 日常一天 履行角色 誰(shuí)應(yīng)該成為ScrumMaster ScrumMaster 是全職工作嗎? ScrumMaster 兼任其他角色 結(jié)語(yǔ) 第 11 章開(kāi)發(fā)團(tuán)隊(duì) 概述 專(zhuān)門(mén)角色的團(tuán)隊(duì) 主要責(zé)任 沖刺執(zhí)行 每日檢查和調(diào)整 修整產(chǎn)品Backlog 規(guī)劃沖刺 檢查和調(diào)整產(chǎn)品和過(guò)程 特點(diǎn)和技能 自組織 跨職能的多樣化和全面化 T 型技能 火槍手態(tài)度 高效溝通 透明溝通 大小合適 專(zhuān)注與承諾 可持續(xù)的工作節(jié)奏 保持團(tuán)隊(duì)持久 結(jié)語(yǔ) 第 12 章 Scrum 團(tuán)隊(duì)結(jié)構(gòu) 概述 特性團(tuán)隊(duì)與組件團(tuán)隊(duì) 多個(gè)團(tuán)隊(duì)的協(xié)調(diào) Scrum of Scrums 版本火車(chē) 結(jié)語(yǔ) 目錄 第 13 章經(jīng)理 概述 塑造團(tuán)隊(duì) 定義邊界 提供一個(gè)清晰而鼓舞人心的目標(biāo) 組建團(tuán)隊(duì) 改變團(tuán)隊(duì)的組成 授權(quán)團(tuán)隊(duì) 培育團(tuán)隊(duì) 激勵(lì)團(tuán)隊(duì) 發(fā)展團(tuán)隊(duì)能力 建立職能領(lǐng)導(dǎo)力 保持團(tuán)隊(duì)完整性 調(diào)整并改造環(huán)境 傳播敏捷價(jià)值觀 移除組織層面的障礙 協(xié)調(diào)內(nèi)部多個(gè)團(tuán)隊(duì)合作 使外部合作伙伴保持一致 管理價(jià)值創(chuàng)造的流程 采用系統(tǒng)性視角 管理經(jīng)濟(jì)狀況 監(jiān)控測(cè)量和報(bào)告 項(xiàng)目經(jīng)理 Scrum 團(tuán)隊(duì)中項(xiàng)目管理的職責(zé) 保留單獨(dú)的項(xiàng)目經(jīng)理角色 結(jié)語(yǔ) 第 14 章 Scrum 的規(guī)劃原則 概述 前期做不好計(jì)劃 少量前期規(guī)劃仍有益 最后責(zé)任時(shí)刻前仍可改變規(guī)劃 關(guān)注適應(yīng)與重新規(guī)劃多過(guò)遵循計(jì)劃 正確管理規(guī)劃庫(kù)存 偏好更小、更頻繁地發(fā)布 必要時(shí)為快速學(xué)習(xí)與關(guān)鍵轉(zhuǎn)折作規(guī)劃 結(jié)語(yǔ) 第 15 章多層次規(guī)劃 概述 產(chǎn)品組合的規(guī)劃 產(chǎn)品規(guī)劃(愿景) 愿景 高層次產(chǎn)品Backlog 產(chǎn)品路線圖 制定版本計(jì)劃 制定沖刺計(jì)劃 制定每日計(jì)劃 結(jié)語(yǔ) 第 16 章產(chǎn)品組合規(guī)劃 概述 時(shí)機(jī) 參與者 流程 進(jìn)度安排策略 為生命周期利潤(rùn)而優(yōu)化 計(jì)算延期成本 目錄 準(zhǔn)確估算,而不用精確估算 流入策略 應(yīng)用經(jīng)濟(jì)指標(biāo) 平衡到達(dá)日期和離開(kāi)日期 快速擁抱新涌現(xiàn)的機(jī)會(huì) 為更小、更頻繁的發(fā)布做計(jì)劃 流出策略 關(guān)注閑置工作,而非閑置人員 設(shè)定在制品限制 等待一個(gè)完整的團(tuán)隊(duì) 在制品策略 使用邊際效益 結(jié)語(yǔ) 第 17 章構(gòu)想(產(chǎn)品規(guī)劃) 概述 時(shí)機(jī) 參與者 流程 SR4U 實(shí)例 愿景 建立概要產(chǎn)品Backlog 定義產(chǎn)品路線圖 其他活動(dòng) 以經(jīng)濟(jì)合理合理的方式建立構(gòu)想 瞄準(zhǔn)切實(shí)可行的信心門(mén)檻 關(guān)注短期范圍 快速行動(dòng) 為經(jīng)驗(yàn)知識(shí)付出代價(jià) 使用遞增的/暫行資金 快速學(xué)習(xí)和調(diào)頭(也稱(chēng)快速失。 第 18 章版本計(jì)劃(長(zhǎng)期計(jì)劃) 概述 時(shí)間安排 參與者 過(guò)程 版本限制條件 固定全部特性 固定范圍和日期 固定范圍 固定日期 可變質(zhì)量 更新限制條件 修整產(chǎn)品Backlog 細(xì)化最小可發(fā)布特性(MRF) 沖刺映射(插入PBI) 固定日期的版本計(jì)劃 固定范圍的版本計(jì)劃 計(jì)算成本 溝通 對(duì)固定范圍版本的進(jìn)展情況進(jìn)行溝通 對(duì)固定范圍版本的燃盡圖進(jìn)行溝通 固定范圍版本的燃燒圖 結(jié)語(yǔ) 第Ⅳ部分 沖刺 第 19 章沖刺計(jì)劃 概述 時(shí)機(jī) 參與者 流程 沖刺計(jì)劃的方法 兩段式?jīng)_刺計(jì)劃 一次性沖刺計(jì)劃 確定生產(chǎn)能力 什么是生產(chǎn)能力? 用故事點(diǎn)表示的生產(chǎn)能力 用工時(shí)表示生產(chǎn)能力 選取 PBI 獲得信心 優(yōu)化沖刺目標(biāo) 敲定承諾 結(jié)語(yǔ) 第 20 章沖刺執(zhí)行 概述 時(shí)間安排 參與者 流程 沖刺執(zhí)行計(jì)劃 工作流動(dòng)管理 并行工作和蜂擁式 從哪項(xiàng)工作開(kāi)始 如何安排任務(wù) 需要完成什么工作 誰(shuí)來(lái)做具體的工作? 每日例會(huì) 任務(wù)執(zhí)行——技術(shù)實(shí)踐 溝通 任務(wù)板 沖刺燃盡圖 沖刺燃燒圖 結(jié)語(yǔ) 第 21 章沖刺評(píng)審 概述 參與者 準(zhǔn)備工作 確定邀請(qǐng)誰(shuí)參加 安排活動(dòng)日程 確認(rèn)沖刺工作完成了 為演示做準(zhǔn)備 確定誰(shuí)做什么 方法 總結(jié) 演示 討論 調(diào)整 有關(guān)沖刺評(píng)審的問(wèn)題 簽字驗(yàn)收 斷斷續(xù)續(xù)地參與 大型開(kāi)發(fā)工作 結(jié)語(yǔ) 第 22 章沖刺回顧 概述 參與者 準(zhǔn)備工作 定義回顧的重點(diǎn) 選擇需要完成的任務(wù) 收集客觀數(shù)據(jù) 安排回顧工作 方法 營(yíng)造氛圍 共同的上下文 事件的時(shí)間線 情緒測(cè)震儀 找出見(jiàn)解 確定措施 選擇見(jiàn)解 確定行動(dòng) 見(jiàn)解 Backlog 結(jié)束回顧 進(jìn)行到底 有關(guān)沖刺回顧的問(wèn)題 結(jié)語(yǔ) 第 23 章前進(jìn)的道路 終極狀態(tài)是不存在的 找到自己的道路 共享最佳實(shí)踐 使用 Scrum 發(fā)現(xiàn)前進(jìn)的道路 心動(dòng)不如行動(dòng)__
預(yù)測(cè)與適應(yīng)
在使用Scrum時(shí),經(jīng)常需要平衡預(yù)測(cè)性的事前工作與適應(yīng)性的適時(shí)工作之間的關(guān)系。下面五個(gè)敏捷原則與這個(gè)主題相關(guān): 保持選擇開(kāi)放 承認(rèn)無(wú)法一開(kāi)始就把事情做對(duì) 偏好適應(yīng)性、探索式的方法 用經(jīng)濟(jì)合理的方法積極主動(dòng)接受變化 在預(yù)測(cè)性的事前工作和適應(yīng)性的適時(shí)工作之間做出平衡 保持選擇開(kāi)放 對(duì)于需求或設(shè)計(jì),計(jì)劃驅(qū)動(dòng)的順序開(kāi)發(fā)方式要求在當(dāng)前這個(gè)階段就做出重要的決策并進(jìn)行審批。而且,在進(jìn)入下一個(gè)階段之前必須先做出決策,即使這些決策依據(jù)的知識(shí)有限。 Scrum認(rèn)為,不該單單因?yàn)橥ㄓ眠^(guò)程要求此時(shí)做出決定,我們就得做出不成熟的決定。相反,在使用Scrum時(shí),我們傾向于“保持選擇開(kāi)放”這個(gè)策略。這個(gè)原則常被稱(chēng)為“最后責(zé)任時(shí)刻”(LastResponsibleMoment,LRM)(PoppendieckandPoppendieck,2003),意思是推遲做出承諾,直到最后責(zé)任時(shí)刻再做出重要的、不可逆轉(zhuǎn)的決定。那么,最后責(zé)任時(shí)刻是什么時(shí)候呢?這個(gè)時(shí)刻就是不做決定的成本大于做決定的成本時(shí)(參見(jiàn)圖3.6)。此時(shí),就需要做出決定了。 圖3.6在最后責(zé)任時(shí)刻做出決定 為了領(lǐng)會(huì)這個(gè)原則,我們考慮下面這種情況。在產(chǎn)品開(kāi)發(fā)工作的第一天,我們對(duì)自己的工作內(nèi)容了解得最少。隨后的每一天,我們的了解都能多一點(diǎn)點(diǎn)。既然如此,為什么要在第一天或者很早就做出所有最關(guān)鍵且(也許)無(wú)法逆轉(zhuǎn)的決定呢?大多數(shù)人都傾向于等有更多信息之后再做出更明智的決定。在處理重要的或不可逆轉(zhuǎn)的決定時(shí),如果決策太早且有錯(cuò),就會(huì)處于圖3.6中決策成本的指數(shù)部分。更好理解決策之后,決策成本會(huì)下降(因?yàn)槭袌?chǎng)和技術(shù)的確定性增加,做出錯(cuò)誤決策的可能性降低了)。這說(shuō)明我們應(yīng)該在掌握更多信息之后再做決策。 承認(rèn)無(wú)法一開(kāi)始就把事情做對(duì) 計(jì)劃驅(qū)動(dòng)的過(guò)程不僅要求有完整的需求和全面的計(jì)劃,還想當(dāng)然地認(rèn)為事先就能“把事情做對(duì)”。但實(shí)際情況是我們基本上不可能事先就能以正確的方式得到所有需求,也不可能基于這些需求以正確方式得出詳盡的計(jì)劃。更糟糕的是,一旦需求有變,還得修改需求和計(jì)劃基線以適應(yīng)當(dāng)時(shí)的實(shí)際情況(詳情參見(jiàn)第5章)。 在Scrum中,我們承認(rèn)自己不可能事先確定所有需求或計(jì)劃。事實(shí)上,我們認(rèn)為這樣做可能很危險(xiǎn),因?yàn)榭赡苈┑糁匾闹R(shí)而產(chǎn)生大量低質(zhì)量的需求(參見(jiàn)圖3.7)。 圖3.7計(jì)劃驅(qū)動(dòng)的需求獲取與產(chǎn)品知識(shí)積累 圖3.7表明,在使用計(jì)劃驅(qū)動(dòng)的順序過(guò)程時(shí),在早期產(chǎn)品知識(shí)積累有限的時(shí)候就產(chǎn)生了大量需求。這樣做是有風(fēng)險(xiǎn)的,因?yàn)樗刮覀儺a(chǎn)生錯(cuò)覺(jué),認(rèn)為自己已經(jīng)消除了結(jié)果不確定性。一旦了解得更多或事情有變,可能還會(huì)造成巨大的浪費(fèi)(詳情參見(jiàn)后文)。 在Scrum中,我們也會(huì)預(yù)先產(chǎn)生需求和計(jì)劃,但原則是夠用就好,一旦了解更多在建產(chǎn)品的相關(guān)知識(shí),我們就會(huì)填充需求和計(jì)劃的細(xì)節(jié)。畢竟,在開(kāi)始構(gòu)建前,即使我們篤定要以什么方式構(gòu)建哪些特性,但在把早期的增量可交付物放到目標(biāo)使用環(huán)境之后,還是會(huì)發(fā)現(xiàn)不對(duì)勁兒的地方。此時(shí),種種實(shí)際情形都會(huì)推動(dòng)我們改變初衷,去做真正適用、適時(shí)的東西。 偏好適應(yīng)性、探索式的方法 使用(或利用)現(xiàn)在已知的東西并對(duì)未知的東西進(jìn)行預(yù)測(cè),這是計(jì)劃驅(qū)動(dòng)的順序過(guò)程關(guān)注的重點(diǎn)。Scrum則更傾向于恰當(dāng)運(yùn)用探索式方法,在此基礎(chǔ)上采用適應(yīng)性的試錯(cuò)法。 探索指的是通過(guò)某些活動(dòng)來(lái)獲得知識(shí),例如構(gòu)建原型、創(chuàng)建概念驗(yàn)證、實(shí)施研究或進(jìn)行試驗(yàn)。換句話說(shuō),則是面對(duì)不確定,我們通過(guò)探索來(lái)獲取信息。 工具和技術(shù)對(duì)探索成本有很大的影響。在過(guò)去,軟件產(chǎn)品開(kāi)發(fā)的探索成本很高,因而采用預(yù)測(cè)性的、盡量一開(kāi)始時(shí)做對(duì)的方法是有利的(參見(jiàn)圖3.8)。 圖3.8過(guò)去的探索成本 舉個(gè)例子,我在佐治亞理工學(xué)院讀大一時(shí)(上世紀(jì)80年代初),我用過(guò)幾次打孔卡——跟打字機(jī)似的,如果出錯(cuò)或需要修改,是很煩人的。必須非常小心地為所有解決方案逐個(gè)做打孔卡,然后再排隊(duì)等待使用大型機(jī),可能得等上24小時(shí)才能驗(yàn)證解決方案是否正確,在這樣的背景下,“快點(diǎn)試一試,看情況”這個(gè)理念是讓人很難接受的。即使微不足道的排版錯(cuò)誤,也至少得耽誤一天的工夫。瀑布過(guò)程在面對(duì)不確定性時(shí)可以仔細(xì)考慮當(dāng)前知識(shí)并做出預(yù)測(cè),以求找到優(yōu)化的解決方案,這種做法在經(jīng)濟(jì)上是合理的。 幸運(yùn)的是,現(xiàn)在的工具和技術(shù)越來(lái)越好,探索成本也隨之下降。從經(jīng)濟(jì)層面上不再是探索的阻礙。事實(shí)上,到如今,快速構(gòu)建少量?jī)?nèi)容并根據(jù)用戶反饋進(jìn)行調(diào)整,其成本往往低于事先投入精力試圖一次性做對(duì)所有事情。解決方案的目標(biāo)使用環(huán)境(技術(shù))如今已變得更加復(fù)雜,所以能夠采取這種做法也是很值得慶幸的。 在Scrum中,只要具備足夠的知識(shí),就可以得出明智、合理的最終解決方案。然而,在面對(duì)不確定性時(shí),不要一廂情愿地預(yù)測(cè),要用低成本的探索方式來(lái)?yè)Q取相關(guān)信息,并綜合利用這些信息得出明智、合理的最終解決方案。通過(guò)行動(dòng)所獲得的反饋可以幫助我們確定是否還需要進(jìn)一步探索以及何時(shí)進(jìn)行。 用經(jīng)濟(jì)合理的方法接受變化 我們都知道,使用順序開(kāi)發(fā)方式時(shí),后期變更成本比早期變更成本高很多(參見(jiàn)圖3.9,基于Boehm1981)。 圖3.9順序開(kāi)發(fā)方式的變更成本曲線圖 舉個(gè)例子,分析階段的變更可能只花1美元,但在后期測(cè)試階段,同樣的變更卻可能花1000美元。為什么會(huì)這樣呢?如果分析階段出現(xiàn)的錯(cuò)誤能在現(xiàn)階段被發(fā)現(xiàn),那么修正成本肯定不高。但如果直到設(shè)計(jì)階段才發(fā)現(xiàn)這個(gè)錯(cuò)誤,則不僅需要修正錯(cuò)誤需求,可能還要修復(fù)基于這個(gè)錯(cuò)誤需求所做的設(shè)計(jì)。每往后延一個(gè)階段,錯(cuò)誤的影響也越大,甚至出現(xiàn)這樣的情況:分析階段的小錯(cuò)誤到測(cè)試或運(yùn)行階段演變成大錯(cuò)誤。 為避免后期變更,順序開(kāi)發(fā)過(guò)程的做法是設(shè)法提高預(yù)測(cè)的準(zhǔn)確度,澄清系統(tǒng)需求及其實(shí)現(xiàn)過(guò)程,再加以嚴(yán)格控制,力求最小化需求和設(shè)計(jì)變更。 不幸的是,早期活動(dòng)階段的過(guò)度預(yù)測(cè)往往適得其反。不僅無(wú)法消除變更,反而成為交付延期和預(yù)算超支的原因之一。為什么會(huì)出現(xiàn)這種有悖常理的事實(shí)呢?首先,為了消除昂貴的變更,我們被迫在每個(gè)階段進(jìn)行過(guò)度投資,即做一些不必要、不切實(shí)際的工作。其次,在尚未得到干系人對(duì)工作產(chǎn)品的反饋以驗(yàn)證我們的假設(shè)之前,我們被迫在過(guò)程早期對(duì)重要的假設(shè)進(jìn)行決策。結(jié)果,根據(jù)這些假設(shè)而產(chǎn)生大量工作產(chǎn)品。后來(lái),在這些假設(shè)被證實(shí)(或被推翻)或發(fā)生變更的時(shí)候(例如,需求的出現(xiàn)或演變),很可能得修改或放棄原有的工作成果,這樣的情況時(shí)有發(fā)生。自我實(shí)現(xiàn)的預(yù)言,其經(jīng)典模式莫過(guò)于此(參見(jiàn)圖3.10)。 在Scrum中,我們認(rèn)為變更是很正常的。我們相信,產(chǎn)品開(kāi)發(fā)所固有的不確定性是無(wú)法事先通過(guò)加班加點(diǎn)來(lái)預(yù)測(cè)的。因此,必須準(zhǔn)備好積極主動(dòng)迎接變更。不過(guò),在出現(xiàn)變更時(shí),我們希望能比傳統(tǒng)開(kāi)發(fā)更經(jīng)濟(jì)的方式來(lái)處理,即使變更發(fā)生在產(chǎn)品開(kāi)發(fā)工作后期。 因此,我們的目標(biāo)是要讓變更成本曲線盡可能長(zhǎng)期保持平穩(wěn)——即使在后期接受變更,開(kāi)銷(xiāo)也是經(jīng)濟(jì)合理的。圖3.11說(shuō)明了這個(gè)觀點(diǎn)。 我們可以通過(guò)對(duì)在制品數(shù)量和工作流進(jìn)行管理來(lái)實(shí)現(xiàn)這個(gè)目標(biāo),因此,與順序開(kāi)發(fā)相比,在使用Scrum時(shí),變更成本受時(shí)間的影響更小。 不管使用哪種方式來(lái)進(jìn)行產(chǎn)品開(kāi)發(fā),我們都希望有這樣的關(guān)系:小的需求變更所造成的實(shí)現(xiàn)方式變更也相應(yīng)較小,因而成本變更也小(不難想象,大型變更帶來(lái)的成本顯然更高)。我們從這種關(guān)系中希望得到的另外一個(gè)特征:不管變更請(qǐng)求何時(shí)出現(xiàn),都要保持這種關(guān)系。 圖3.10自我實(shí)現(xiàn)的預(yù)言 圖3.11讓變更成本曲線趨于平穩(wěn) 在使用Scrum時(shí),很多工作產(chǎn)品(例如詳細(xì)需求、設(shè)計(jì)和測(cè)試用例)都是以剛好及時(shí)的方式產(chǎn)生的,以免創(chuàng)建非必需的工件。這樣,在發(fā)生變更時(shí),不必丟棄或重新修改的、基于假設(shè)而產(chǎn)生的工作或被迫做出的決定要少得多,因此可以讓成本和變更請(qǐng)求的大小更加成比例。 使用順序開(kāi)發(fā)方式時(shí),庫(kù)存會(huì)隨著時(shí)間的推移而增加,這意味著早期所建的工件和被迫做出的不成熟決定最終造成變更成本快速上升。這導(dǎo)致圖3.11中傳統(tǒng)開(kāi)發(fā)方式的曲線在早期就出現(xiàn)拐點(diǎn)(曲線突然上升的那個(gè)點(diǎn))。在使用Scrum開(kāi)發(fā)時(shí),到達(dá)某個(gè)時(shí)間點(diǎn)之后,變更成本和變更請(qǐng)求的比例也會(huì)變得很離譜,但這個(gè)時(shí)間點(diǎn)會(huì)出現(xiàn)得更晚一些(如圖3.11中的Scrum曲線拐點(diǎn)所示)。 平衡預(yù)測(cè)性的事前工作和適應(yīng)性的剛好及時(shí)工作之間的關(guān)系 計(jì)劃驅(qū)動(dòng)開(kāi)發(fā)有一個(gè)基本的理念:事先得到詳細(xì)需求和計(jì)劃是至關(guān)重要的,并且做事情要有先后。在Scrum中,我們相信前期工作有幫助,但不宜過(guò)度。 在Scrum中,我們承認(rèn)不可能事先精確獲得所有需求和計(jì)劃。這是否意味著不應(yīng)該事先做需求和計(jì)劃呢?當(dāng)然不是!Scrum的要義是找到平衡點(diǎn),即使平衡預(yù)測(cè)性的前期工作和適應(yīng)性的剛好及時(shí)工作之間的平衡(參見(jiàn)圖3.12,改編自Cohn2009中的圖)。 在開(kāi)發(fā)產(chǎn)品時(shí),應(yīng)該從經(jīng)濟(jì)合理的角度來(lái)設(shè)置平衡點(diǎn),滿足法規(guī)、監(jiān)管和∕或公司的目標(biāo)的前提下,盡量根據(jù)快速反饋持續(xù)進(jìn)行調(diào)整,少做事前預(yù)測(cè)。 究竟怎樣才算平衡?這在一定程度上由這幾個(gè)因素推動(dòng):所建產(chǎn)品的類(lèi)型、待建產(chǎn)品(結(jié)果不確定性)和產(chǎn)品構(gòu)建方式(方法不確定性)的不確定程度以及開(kāi)發(fā)中的限制。過(guò)度預(yù)測(cè)要求我們?cè)谄毡榇嬖诓淮_定性的情況下做出假設(shè)。過(guò)度調(diào)整可能會(huì)讓我們處于動(dòng)蕩中,讓人覺(jué)得工作效率低下、混亂。為了能夠快速開(kāi)發(fā)創(chuàng)新產(chǎn)品,在我們的工作環(huán)境中,一方面要調(diào)整,一方面也要通過(guò)剛好夠的預(yù)測(cè)來(lái)取得平衡,以免陷入混亂。Scrum框架在秩序與混亂之間取得了很好的平衡。
你還可能感興趣
我要評(píng)論
|