這是《落葉》文集里第?191?片落葉,希望你能喜歡例朱,不為別的孝情,只為這份堅(jiān)持。
【背景】
這幾天跟一些同學(xué)聊了不少敏捷實(shí)施的問題洒嗤,有些人也會問有沒有可以照搬套用的敏捷實(shí)施方案箫荡,其實(shí)是沒有的,因?yàn)椴煌墓居兄煌捻?xiàng)目事業(yè)環(huán)境因素和企業(yè)文化烁竭,項(xiàng)目特點(diǎn)菲茬,人員組成結(jié)構(gòu)等等,再加上敏捷本身就是一種思想派撕,實(shí)際落地后都是各式各樣的模式婉弹,所以不太可能有什么拿來就能套用的流程。
【你問】
有高性價(jià)比的敏捷落地方案嗎终吼?
【我答】
Scrum 什么時(shí)候才能成熟到廣泛應(yīng)用镀赌?
這是我在2010年左右開始接觸 Scrum 時(shí)問自己的一個(gè)問題,我當(dāng)時(shí)的判斷是:
或許這個(gè)時(shí)間點(diǎn)始終都不會到來际跪,也許 Scrum 也不會成為主流的研發(fā)模型商佛。因?yàn)槠髽I(yè)的行業(yè)領(lǐng)域、價(jià)值觀姆打、現(xiàn)狀和事業(yè)環(huán)境因素的本質(zhì)差異良姆,決定了就不會有一個(gè)像 Scrum 這樣被“精確定義”的方法能普遍適用。相反幔戏,極有可能出現(xiàn)類似過去 XP 的情況:Scrum 及其它方法中的各種實(shí)踐會被打散玛追,不是簡單地重新編排一下順序,而是被企業(yè)零散地選擇性采納闲延,最終形成“四不像”的研發(fā)過程痊剖。
在這個(gè)過程中,對企業(yè)現(xiàn)狀的熟悉垒玲、對方法論的深入理解以及靈活應(yīng)用的高級管理人才將有著非常重要的作用陆馁。
當(dāng)初公司引入Scrum 之后,我認(rèn)為最大的變化并不是每個(gè)版本的發(fā)布速度提升了多少合愈,發(fā)布的東西多了多少叮贩,變化最大的其實(shí)是團(tuán)隊(duì)整體對質(zhì)量的信心和工作效率提升了很多击狮,產(chǎn)品、開發(fā)和測試的合作更緊密了妇汗,有效溝通時(shí)間比之前翻了好幾番帘不。
基于這個(gè)最大的變化,下面所遇到的一些問題就都不是不可克服的問題了杨箭。
1. 我們很迷茫,我們也很害怕改變储狭!
1.1 原有的項(xiàng)目開發(fā)周期也是一個(gè)月互婿,其實(shí)版本迭代已經(jīng)很頻繁了,為什么還要引入敏捷呢辽狈?
2.2 開發(fā)過程是比較快了慈参,但原有瀑布流程里的溝通不多,整個(gè)團(tuán)隊(duì)還是按照職能一個(gè)里程碑一個(gè)里程碑的線性工作刮萌,應(yīng)用敏捷之后驮配,大家覺得溝通多了,對質(zhì)量有了更多的信心着茸。
2. Scrum 和現(xiàn)有流程該怎么并行和融合呢壮锻?
2.1 PRD,SPEC 和 Test Plan 等相關(guān)文檔還需要保留涮阔,為了保持產(chǎn)品的一個(gè)延續(xù)性猜绣,這個(gè)會增加團(tuán)隊(duì)成員的工作量,需要在 Sprint Plan 里把工作量計(jì)算進(jìn)去敬特,同時(shí)因?yàn)?Scrum 是從一個(gè)不完善的或者說不確定的需求開始的掰邢,因?yàn)檫@種持續(xù)改進(jìn)的特性,這些文檔也應(yīng)該是協(xié)同持續(xù)更新的伟阔。
2.2 一些原有里程碑辣之,因?yàn)楣芾韺拥男枰孕枰A簦@個(gè)其實(shí)沖突不大皱炉,只要在前期計(jì)劃和過程監(jiān)控中控制好怀估,都不會有太多影響,再將整個(gè) Sprint 里的某些時(shí)間節(jié)點(diǎn)對應(yīng)到原有的里程碑上即可娃承。
2.3 讓大家看到工具的使用會有助于他們在 Sprint 中很容易地掌握自己的進(jìn)度奏夫,計(jì)劃自己的時(shí)間,執(zhí)行完成后很容易統(tǒng)計(jì)自己的工作量和檢查自己的效率和能力提升历筝;
2.4 在工具使用的學(xué)習(xí)階段酗昼,可以把這部分工作量算進(jìn)計(jì)劃當(dāng)中,因?yàn)樵诿艚輬F(tuán)隊(duì)的 Capacity 計(jì)算中梳猪,是可以包含學(xué)習(xí)量的麻削;
3. 團(tuán)隊(duì)成員能力參差不齊怎么辦蒸痹?
3.1 自主學(xué)習(xí),由近到遠(yuǎn)地按規(guī)劃做技術(shù)儲備呛哟;
3.2 結(jié)對開發(fā)叠荠,以老帶新,思維互補(bǔ)扫责,查漏補(bǔ)缺榛鼎;
3.3 代碼審查,黑白結(jié)合鳖孤;
4. 管理層從人力資源利用效率角度要求 Scrum 團(tuán)隊(duì)不能固定怎么辦者娱?
4.1 鐵打的營盤流水的兵和穩(wěn)定的傭兵團(tuán),孰強(qiáng)孰弱苏揣?
4.2 團(tuán)隊(duì)是需要時(shí)間磨合的黄鳍,一個(gè)默契度、熟悉度和相互認(rèn)可度都很高的的團(tuán)隊(duì)平匈,會有著非常高的工作效率和很強(qiáng)的戰(zhàn)斗力框沟,而且隨著時(shí)間的推移,這種戰(zhàn)斗力會呈幾何級增長增炭;
5. 項(xiàng)目范圍總是不可避免的變化怎么應(yīng)對忍燥?
5.1 Sprint Plan 的時(shí)候,預(yù)留 20% 的 Buffer弟跑,用于應(yīng)對項(xiàng)目進(jìn)行中的需求變化灾前;
5.2 每個(gè) User Story 都需要有相對準(zhǔn)確的故事點(diǎn)評估和清晰的優(yōu)先級,在做 Plan 時(shí)孟辑,不要只選同一優(yōu)先級的 User Story哎甲,要選擇不同優(yōu)先級的 User Story,當(dāng)發(fā)生范圍變更風(fēng)險(xiǎn)的時(shí)候饲嗽,就可以用低優(yōu)先級的 User Story 去沖抵炭玫;
上面那些問題的解決方案里,不管是預(yù)留的學(xué)習(xí)時(shí)間貌虾、還是評估里的 Buffer吞加,還是傭兵團(tuán)的培養(yǎng),都是不容忽視的潛在成本尽狠,甚至于有的就是沉沒成本衔憨,所以對于一個(gè)公司來說,不論是初創(chuàng)的袄膏,還是成熟的践图,都不能只從單方面去研究敏捷是否適用與它,而應(yīng)該從項(xiàng)目類型沉馆、人員結(jié)構(gòu)码党、成本效益以及管理層的決心等多方面入手德崭,這就不是簡簡單單地找個(gè)老師來給大家集體培訓(xùn)一下什么是敏捷,或者是找個(gè)咨詢公司入場咨詢個(gè)一兩個(gè)月就能著手開始的事情揖盘。
時(shí)至今日眉厨,我依然堅(jiān)持我的觀念:是否需要引入敏捷研發(fā),應(yīng)該由問題驅(qū)動(Problem Driven):
1. 首先要知道為什么當(dāng)前的研發(fā)模式不能滿足現(xiàn)有需求兽狭,找出真正的原因憾股,如果組織或團(tuán)隊(duì)中不存在需要改進(jìn)的問題,那么就沒有必要一定得引入敏捷箕慧;
2荔燎、針對已知問題,一個(gè)一個(gè)地找到解決方案销钝,再結(jié)合敏捷的思想、具體模型琐簇、方法和工具蒸健,去對現(xiàn)有流程做一個(gè)性價(jià)比最高的補(bǔ)充或改進(jìn);
3婉商、管理層要對自己的公司/企業(yè)/組織/團(tuán)隊(duì)的現(xiàn)狀和存在的問題有一個(gè)清醒的認(rèn)識似忧;
4、下面一些問題可以用于自測丈秩,僅供參考:
我們企業(yè)現(xiàn)在存在哪些問題盯捌?
Scrum 是否可以解決這些問題?
Scrum 是否與我們公司的管理制度和企業(yè)文化相匹配蘑秽?
如果不匹配饺著,需要我們作出多大程度的改變,是否在我們的可承受范圍肠牲?
如果 Scrum 不是適合我們企業(yè)的最佳實(shí)踐幼衰,那么是否可以采用混合的敏捷實(shí)踐?單個(gè)方法不行缀雳,復(fù)方的行不行渡嚣?西式的做法不行,中式的行不行肥印?...
《測試路上你問我答》里的 Q&A 49识椰,如果是你要的,甚好深碱!如果不是腹鹉,你問,我答莹痢!
作者簡介:14 年測試 + 11 年項(xiàng)目管理 + 11 年團(tuán)隊(duì)管理 = 一個(gè)測試?yán)媳?/p>