效率之戰(zhàn):如何提升智能手表開發(fā)團(tuán)隊(duì)效率
在控制領(lǐng)域,閉環(huán)是我們是系統(tǒng)達(dá)到穩(wěn)定的一個(gè)有效方案,對于我們的產(chǎn)品研發(fā),同樣需要類似的反饋系統(tǒng)形成閉環(huán),這樣我們的研發(fā)體系才能有預(yù)期,研發(fā)進(jìn)度才可控,做到心中有數(shù),百戰(zhàn)不殆。
智能手表,一個(gè)新興的領(lǐng)域,充滿了無限的可能,也許有一天,我們隨處可見,就像當(dāng)今的智能手機(jī)一樣。作為一類新興的產(chǎn)品,市場上缺乏成熟的開發(fā)經(jīng)驗(yàn),我們摸著石頭過河,不斷的嘗試,不斷的改進(jìn),不斷的提升。
1.困境
作為一家成熟的消費(fèi)類產(chǎn)品公司,產(chǎn)品僅僅在軟件研發(fā)領(lǐng)域一般包括下圖的各類人員:
簡單的分析上圖中的結(jié)構(gòu),智能手表的開發(fā)貌似和常規(guī)的互聯(lián)網(wǎng)產(chǎn)品類似,然而它的復(fù)雜性卻沒有看上去那么簡單,我們先簡單分析一下上圖:
- 軟件與4類人員有關(guān)聯(lián),兩個(gè)強(qiáng)關(guān)聯(lián),兩個(gè)弱關(guān)聯(lián)。
- 交互與4類人員有關(guān)聯(lián),兩個(gè)強(qiáng)關(guān)聯(lián),兩個(gè)弱關(guān)聯(lián)。
- 其他職能人員關(guān)聯(lián)性都相對較少。
這里有一個(gè)實(shí)踐的經(jīng)驗(yàn),強(qiáng)關(guān)聯(lián)性的增加導(dǎo)致溝通成本以指數(shù)性的上升,弱關(guān)聯(lián)的增加導(dǎo)致溝通成本以簡單+1的形式上升?;诖?,我們假設(shè)強(qiáng)關(guān)聯(lián)的增加的指數(shù)上升為2的倍數(shù)(該值不一定合理,需要實(shí)際研發(fā)數(shù)據(jù)進(jìn)行匹配調(diào)整),建立對應(yīng)的溝通成本計(jì)算數(shù)學(xué)模型:強(qiáng)關(guān)聯(lián)(2的n次方) + 弱關(guān)聯(lián)數(shù)。使用該數(shù)學(xué)模型,我們計(jì)算出各個(gè)領(lǐng)域在軟件研發(fā)領(lǐng)域的溝通成本:
- 運(yùn)營:1+1=2
- 視覺:1+1=2
- 測試:2的1次方+1 = 3
- 規(guī)劃:2的1次方+1 = 3
- 交互:2的2次方+2 = 6
- 軟件:2的2次方+2 = 6
備注:部分領(lǐng)域也許還有其他的關(guān)聯(lián)度,這里僅僅只考慮產(chǎn)品研發(fā)的主要場景。
基于該數(shù)學(xué)模型,我們基本上可以得出,交互和軟件將是整個(gè)研發(fā)流程溝通過程中的核心瓶頸,然而這樣計(jì)算就正確了嗎?交互和軟件在溝通成本上就只比其他領(lǐng)域多這么一點(diǎn)點(diǎn)嗎?我們再把問題拆解得更細(xì)一些。
1.1.領(lǐng)域細(xì)分的副作用
軟件技術(shù)的不斷革新,促使軟件領(lǐng)域增多,針對智能手表領(lǐng)域,它涉及到的軟件領(lǐng)域包括:智能手表端、服務(wù)器端、android應(yīng)用端、ios應(yīng)用端、H5網(wǎng)頁端。以下,是它們之間的溝通關(guān)系圖:
備注:智能手表并不是所有的功能都涉及到上圖的所有軟件領(lǐng)域,上圖僅僅列舉了最復(fù)雜時(shí)的情況。
基于上圖,我們需要重新計(jì)算一下軟件、交互與測試在最復(fù)雜的情況下的溝通復(fù)雜度:
- 交互:2的6次方+2 = 66
- 測試:2的5次方+1 = 33
- 軟件(watch):2的5次方+2 = 34
- 軟件(server):2的6次方+2 = 66
- 軟件(h5):2的3次方+4 = 12
- 軟件(android):2的5次方+3 = 35
- 軟件(ios):2的5次方+3 = 35
因此,軟件、交互、測試在日常工作過程中,溝通成非常高。如此高的溝通成本,意味著研發(fā)效率的下降,產(chǎn)品復(fù)雜度的上升,以及信息不一致情況發(fā)生的概率增高。
1.2.總結(jié)
從本章的分析結(jié)果得出,僅僅在溝通成本這個(gè)層面上,智能手表的復(fù)雜度就非常的高。即使與當(dāng)下常見的互聯(lián)網(wǎng)產(chǎn)品相比,在多引入了一個(gè)手表端的情況下,其復(fù)雜度指數(shù)性的提升一倍,也是不可估量的。從直觀上看,它僅僅是多了一個(gè)手表端,應(yīng)該和傳統(tǒng)互聯(lián)網(wǎng)產(chǎn)品功能復(fù)雜度差不多,但是卻事與愿違。如果《最后期限》一書中所說,我們需要將自身的經(jīng)驗(yàn)?zāi)P突?,這樣才能更準(zhǔn)確的評估軟件開發(fā)情況。有的事情,還是需要嚴(yán)密的理論邏輯分析才能得出正確結(jié)論。
直覺總是告訴我們下面一根線被上面那根短一些,可以它們卻實(shí)實(shí)在在是一樣長。
2.個(gè)體效率與團(tuán)隊(duì)效率的糾纏
直覺告訴我們個(gè)體效率提高,團(tuán)隊(duì)效率就會提高。人員的增多,團(tuán)隊(duì)效率也會提高。但是在沒有背景前提下,這樣的結(jié)論沒有任何意義,如果我們所做的事情可以拆分成多個(gè)基本互不關(guān)聯(lián)的事情,那么,這個(gè)結(jié)論基本成立。
例如:我們都聽說過和尚挑水喝的故事,1個(gè)和尚挑水喝,2個(gè)和尚抬水喝,3個(gè)和尚沒水喝,改為3個(gè)和尚都分別自己挑水。那么相對于1個(gè)和尚,效率提高三倍,如果單個(gè)和尚每天挑水的效率提高1.5倍,那么3個(gè)和尚相對于最開始的一個(gè)和尚效率提高3*1.5=4.5倍,是不是很激動人心。
理想很豐滿的,現(xiàn)實(shí)很骨感,軟件行業(yè)可不能用和尚挑水來簡單類比。這樣的直覺錯(cuò)誤,我們卻經(jīng)常再犯。原因在于我們在分析任何事情時(shí),都是先由系統(tǒng)1(簡單理解為直覺系統(tǒng))處理,在系統(tǒng)1無法給出合理的解釋時(shí),系統(tǒng)2(簡單理解為思維系統(tǒng),可是它很懶)才會介入。軟件行業(yè)的著作《人月神話》全面的闡釋了軟件不能簡單增加開發(fā)人員來解決問題。因此,針對智能手表的研發(fā),取得個(gè)體效率與團(tuán)隊(duì)效率的平衡至關(guān)重要。
產(chǎn)品研發(fā)就像種果樹,必須經(jīng)歷播種、施肥、灌溉等一天天逐漸的長大,不要企圖通過多施肥等手段提前收獲果實(shí)。種一個(gè)棵樹最好的時(shí)間是十年前,其次才是現(xiàn)在,所以想要新品早點(diǎn)上市,那么就需要將需求整理提前,而不是過多的希望研發(fā)后端流程能更有效率。
2.1.如何提高個(gè)體效率
- 盡量減少被打擾的次數(shù)。
- 讓個(gè)體身處于所在專業(yè)領(lǐng)域的團(tuán)隊(duì)中。
- 持續(xù)進(jìn)行某個(gè)特定領(lǐng)域的研究。
- 同領(lǐng)域人員集中地點(diǎn)辦公。
2.2.如何提高團(tuán)隊(duì)效率
- 加強(qiáng)團(tuán)隊(duì)成員溝通。
- 項(xiàng)目組成員集中成一個(gè)團(tuán)隊(duì)。
- 團(tuán)隊(duì)成員為多領(lǐng)域復(fù)合型人才。
- 同項(xiàng)目組成員集中地點(diǎn)辦公。
2.3.矛盾與取舍
雖然大方向來說,需求提前才是促使新品上市的主要方式。但是,實(shí)際研發(fā)過程中,尤其是在迭代開發(fā)中,需求已經(jīng)做到了提前,后端迭代速度偏慢,就成了一個(gè)比較凸顯的問題。多少人能做多少事,增加人員能否提高生產(chǎn)力,迭代速度是否存在極限,這些問題都有待研究和解決。
就像愛因斯坦的相對論,人類無法突破光速有一個(gè)制約的因素,就是速度越快,質(zhì)量越大,接近光速時(shí),質(zhì)量趨于無窮大,也就是說速度越快,加速的成本就越高。一個(gè)軟件開發(fā)的速度也許也受到其固有的軟件復(fù)雜度等因素影響,存在一個(gè)迭代速度極限值,例如:一個(gè)功能點(diǎn)由一個(gè)人變?yōu)閮蓚€(gè)人來做,那么多一個(gè)人就多了溝通成本,那么隨著人數(shù)的激增,超過某個(gè)臨界值時(shí),增加人數(shù)反而會降低研發(fā)速度。
2.3.1. 個(gè)體效率與團(tuán)隊(duì)的矛盾點(diǎn)
- 團(tuán)隊(duì)的溝通與減少打擾互相矛盾。
- 專業(yè)團(tuán)隊(duì)與敏捷團(tuán)隊(duì)矛盾。
- 持續(xù)研究某個(gè)領(lǐng)域與多領(lǐng)域復(fù)合矛盾。
- 專業(yè)團(tuán)隊(duì)集中辦公與敏捷團(tuán)隊(duì)集中辦公矛盾。
以上矛盾簡直是要逼死“處女座”,本人就是“處女座”。所以,現(xiàn)階段根本就不存在個(gè)人效率與團(tuán)隊(duì)效率雙贏的方案,必須有所取所,取長補(bǔ)短。剛開始接觸敏捷開發(fā),要做的事情就是熟悉敏捷開發(fā)中的各個(gè)流程,以及如何操作,解決我們現(xiàn)有的問題?,F(xiàn)在回過頭來分析,敏捷開發(fā)中設(shè)立的每個(gè)環(huán)節(jié),在解決以上矛盾問題上都提出了相應(yīng)的方案。
2.3.2. 團(tuán)隊(duì)的溝通與減少打擾互相矛盾
不管是敏捷團(tuán)隊(duì)還是專業(yè)領(lǐng)域團(tuán)隊(duì),溝通都不可避免,因?yàn)楫a(chǎn)品是由整個(gè)團(tuán)隊(duì)開發(fā)出來的,即使是某個(gè)交互方案、軟件組件、策劃方案往往都由多人參與。然而,頻繁的溝通必然影響個(gè)人的開發(fā)效率,因此在敏捷的團(tuán)隊(duì)里,每日有固定的晨會、每周有固定的迭代計(jì)劃與總結(jié)會等。是的,這就是敏捷開發(fā)在個(gè)人效率與溝通的矛盾上的取舍。
同樣的,在專業(yè)領(lǐng)域團(tuán)隊(duì)中,我們嘗試每周做固定的交流會,以軟件為例:每周固定代碼交流會,以某位軟件同事的作品為主線,引導(dǎo)專業(yè)領(lǐng)域團(tuán)隊(duì)內(nèi)成員交流。這是一個(gè)很好的取舍,讓整個(gè)團(tuán)隊(duì)有自己固定的節(jié)奏。
收益
這樣的方式,極大的改善了團(tuán)隊(duì)內(nèi)信息不對稱的問題,在專業(yè)領(lǐng)域團(tuán)隊(duì)有效的改善設(shè)計(jì)方案,規(guī)章制度的實(shí)際執(zhí)行,同時(shí)提高了整個(gè)團(tuán)隊(duì)的能力等。在敏捷團(tuán)隊(duì)中,有效的避免因信息不一致導(dǎo)致前端設(shè)計(jì)與后端實(shí)現(xiàn)不一致,測試?yán)斫馄畹葐栴}。
損失
每天都有會議,對于工作有一定的打斷影響,部分人員參與會議時(shí),會議參與度低,實(shí)際收益甚微,會議的整體節(jié)奏需要成員逐步適應(yīng),弱一個(gè)人同時(shí)處于多個(gè)敏捷團(tuán)隊(duì)中,會議數(shù)量會嚴(yán)重影響該成員的工作(這種情況需要盡量避免)。
2.3.3. 專業(yè)團(tuán)隊(duì)與敏捷團(tuán)隊(duì)矛盾
在這個(gè)問題上,個(gè)人比較趨向選擇專業(yè)團(tuán)隊(duì)為主,敏捷團(tuán)隊(duì)為輔的方式,不一定正確,也不一定適用于各類場景,這個(gè)決定是站在我現(xiàn)在所處的環(huán)境得出來的,理由如下:
- 敏捷團(tuán)隊(duì)已經(jīng)有足夠多的會議,足以達(dá)到信息對稱的效果。
- 敏捷團(tuán)隊(duì)為主,會導(dǎo)致各個(gè)人員專業(yè)領(lǐng)域薄弱,專業(yè)上缺乏積累,重復(fù)開發(fā)的風(fēng)險(xiǎn)增大。
- 敏捷團(tuán)隊(duì)為主,會導(dǎo)致人員復(fù)用性降低,調(diào)配難度增大,資源獨(dú)占。
- 專業(yè)團(tuán)隊(duì)為主,能有效的積累專業(yè)領(lǐng)域知識,設(shè)計(jì)整體方案,提高生產(chǎn)率。
- 專業(yè)團(tuán)隊(duì)為主,對于技術(shù)方案的評估會更加全面和準(zhǔn)確。
但是,這樣的選擇也有它存在的問題:
- 專業(yè)團(tuán)隊(duì)為主,敏捷團(tuán)隊(duì)缺乏足夠的獨(dú)立性,人員變動可能性增大。
- 專業(yè)團(tuán)隊(duì)為主,敏捷團(tuán)隊(duì)缺乏明確的目標(biāo),難以在迭代過程中找到成就感。
- 專業(yè)團(tuán)隊(duì)為主相比于敏捷團(tuán)隊(duì)為主,在產(chǎn)品開發(fā)期間溝通效率偏低。
2.3.4. 持續(xù)研究某個(gè)領(lǐng)域與多領(lǐng)域復(fù)合矛盾
如今,各類技術(shù)紛繁復(fù)雜,各類想法如雨后春筍般冒出,要跟上市場的節(jié)奏,要求我們必須有足夠的反應(yīng)速度和研究深度。在產(chǎn)品初期,我們往往需要的是快速實(shí)現(xiàn)基本功能,產(chǎn)品的上市后,我們需要不斷的優(yōu)化用戶體驗(yàn),這個(gè)時(shí)候需要我們在需求、交互、軟件方案進(jìn)行深入研究改善。因此,從需求出發(fā),兩者都不能少。
- 識別獨(dú)立的核心領(lǐng)域,專人跟進(jìn)研究,不參與敏捷迭代。
- 豐富領(lǐng)域內(nèi)文檔沉淀,提高新手上手速度,避免踩同樣的坑。
- 團(tuán)隊(duì)內(nèi)在迭代開發(fā)過程中,根據(jù)人員特點(diǎn),重點(diǎn)培養(yǎng)其核心領(lǐng)域,促使團(tuán)隊(duì)在整體上各項(xiàng)領(lǐng)域均研究深入。
- 逐步識別細(xì)分領(lǐng)域,將各項(xiàng)細(xì)分領(lǐng)域?qū)I(yè)化,系統(tǒng)化,模塊化。
2.3.5. 專業(yè)團(tuán)隊(duì)集中辦公與敏捷團(tuán)隊(duì)集中辦公矛盾
這個(gè)問題其實(shí)與“專業(yè)團(tuán)隊(duì)與敏捷團(tuán)隊(duì)矛盾”類似,這里的意見和之前的一致。
2.4.總結(jié)
在個(gè)人效率與團(tuán)隊(duì)效率上,沒有絕對正確的方案,在智能手表這個(gè)產(chǎn)品領(lǐng)域,我們現(xiàn)在采用本章描述的方式進(jìn)行取舍。它還有很多問題,并且存在一定的改善空間,但是這些問題,不能簡單的根據(jù)我們的經(jīng)驗(yàn)得出結(jié)論,需要相關(guān)的數(shù)據(jù)支持以及對應(yīng)的方案實(shí)施驗(yàn)證。因此,需要不斷的思考和嘗試,也需要下一章節(jié)的研發(fā)閉環(huán)來有效的衡量和評估方案的有效性和其帶來的實(shí)際效益。
3.研發(fā)閉環(huán)
談到閉環(huán),我們往往會想到大數(shù)據(jù),因?yàn)楝F(xiàn)在人人都談大數(shù)據(jù)。不談它,感覺自己都不是做產(chǎn)品的人一樣。說得好,不如做得到,相比于產(chǎn)品級的大數(shù)據(jù)研究,在整個(gè)研發(fā)流程中,記錄好各個(gè)節(jié)點(diǎn)的情況,識別出研發(fā)過程中的各項(xiàng)瓶頸和問題,做到可追溯,可分析,也顯得十分的重要。
但是在開始記錄數(shù)據(jù)之前,我需要著重聲明一下:我們一定要避免什么數(shù)據(jù)都記錄,因?yàn)槲覀兛偢杏X每一項(xiàng)數(shù)據(jù)都有它的意義。讓數(shù)據(jù)產(chǎn)生它應(yīng)有的價(jià)值才更重要,數(shù)據(jù)驅(qū)動改善研發(fā)流程,需要以迭代的思想逐步優(yōu)化,不能一蹴而就。
3.1.瓶頸識別
每個(gè)專業(yè)領(lǐng)域都有它固有的研發(fā)效率,產(chǎn)品研發(fā)就像多條并行生產(chǎn)的流水線,需要經(jīng)歷一個(gè)又一個(gè)的環(huán)節(jié),如果每個(gè)環(huán)節(jié)都保持著忙碌,那么效率最低的環(huán)節(jié)決定了整個(gè)研發(fā)團(tuán)隊(duì)效率。尤其是上下銜接的兩個(gè)環(huán)節(jié),如果的生產(chǎn)與消費(fèi)不匹配,就是導(dǎo)致資源不足或者資源浪費(fèi)問題。
生產(chǎn)和消費(fèi)必然不可能完全匹配,因此在軟件領(lǐng)域有隊(duì)列,在迭代領(lǐng)域有需求池,這些措施能解決一定的沖突。但是如果嚴(yán)重不匹配,例如生產(chǎn)者太強(qiáng),那么最后任務(wù)就得不到及時(shí)的響應(yīng),尤其是產(chǎn)品研發(fā)領(lǐng)域,時(shí)機(jī)有時(shí)候很重要。如果消費(fèi)者太強(qiáng),又導(dǎo)致一定的資源浪費(fèi)。因此,我們想要什么?快速,還是省資源?這決定了在整個(gè)團(tuán)隊(duì)組建過程中人員的配比情況。
那么如何識別瓶頸?在產(chǎn)品研發(fā)領(lǐng)域主要包括以下流程:
識別瓶頸的核心思想在于評估相互連接著的兩個(gè)環(huán)節(jié)的匹配度和處理能力,因此我們需要任何一個(gè)功能在每個(gè)節(jié)點(diǎn)上的完成時(shí)間,當(dāng)我們想識別在整個(gè)項(xiàng)目周期,各個(gè)領(lǐng)域的瓶頸問題時(shí),我們只需要選取按照一周為一個(gè)節(jié)點(diǎn)進(jìn)行計(jì)算分析,就能得出對應(yīng)的上下兩個(gè)環(huán)節(jié)生產(chǎn)與消費(fèi)是否匹配,從而識別瓶頸領(lǐng)域。
3.2. 研發(fā)效率量化
在3.1中,我們記錄了每個(gè)功能在每個(gè)環(huán)節(jié)上完成的時(shí)間,基于該數(shù)據(jù),我們可以做以下這些事情:
- 尋找生產(chǎn)大于消費(fèi)的時(shí)間區(qū)間,計(jì)算此時(shí)消費(fèi)者的效率,該效率基本能代表該專業(yè)領(lǐng)域的實(shí)際研發(fā)效率。
- 基于得出來的實(shí)際研發(fā)效率,對比每月的實(shí)際生產(chǎn)率,分析當(dāng)前是否存在人員閑置,或者利用不足。
- 對比多月的實(shí)際研發(fā)效率,用于評估在領(lǐng)域優(yōu)化,或者敏捷流程優(yōu)化等方面的方案嘗試中,是否取得實(shí)際效果。
3.3. 定位問題點(diǎn),針對性總結(jié)優(yōu)化
根據(jù)各個(gè)節(jié)點(diǎn)的數(shù)據(jù),識別出在項(xiàng)目過程中開發(fā)進(jìn)度不合理的功能,并進(jìn)行階段性的總結(jié)分析,針對遇到的問題,制定對應(yīng)的改善方案,持續(xù)優(yōu)化項(xiàng)目研發(fā)流程,在流程優(yōu)化過程中做到有理可依,有數(shù)據(jù)可以證明。
3.4. 總結(jié)
在控制領(lǐng)域,閉環(huán)是我們是系統(tǒng)達(dá)到穩(wěn)定的一個(gè)有效方案,例如在自動化原理里面提到的PID控制,它根據(jù)當(dāng)前實(shí)際值與期望值的誤差計(jì)算,利用比例、積分、微分三個(gè)方面的反饋控制,使系統(tǒng)最終在期望值上下浮動,趨于相對穩(wěn)定。對于我們的產(chǎn)品研發(fā),同樣需要類似的反饋系統(tǒng)形成閉環(huán),這樣我們的研發(fā)體系才能有預(yù)期,研發(fā)進(jìn)度才可控,做到心中有數(shù),百戰(zhàn)不殆。
本文由 @空穴來風(fēng) 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理。未經(jīng)許可,禁止轉(zhuǎn)載。
- 目前還沒評論,等你發(fā)揮!