剛開始從事項目管理工作那會兒,對于制定項目計劃常常有這種感受:都是開發(fā)和測試說了算。他們說需要三天,就三天,他們說什么時候上線就什么時候上線。這種執(zhí)念一直糾纏著我,有一段時間也曾非常的糾結(jié)于這一點,甚至一度覺得非常失落,開始懷疑自己的價值。但是隨著經(jīng)驗的增加,經(jīng)歷的項目增多,在這一點上漸漸有了些新的體會:在項目計劃上,項目經(jīng)理能做的還有很多。
項目經(jīng)理并不是在項目計劃上可有可無的角色,也不只是幫大家畫個時間線這樣的角色,只是項目經(jīng)理在這上面的作用不是那么顯性,但卻是不可缺少的。首先介紹一下,當(dāng)前筆者所在團(tuán)隊是如何做計劃的。需求確定之后,開發(fā)會根據(jù)需求分解任務(wù),對于不同的任務(wù),進(jìn)行估算,并且確認(rèn)提測時間。然后將安排發(fā)給測試,由測試補(bǔ)充各任務(wù)的測試時間以及回歸、兼容性等測試的安排,從而制定出初步的計劃(包含上線時間)。
初一看,完美!團(tuán)隊自己就把計劃制定出來了!有項目經(jīng)理什么事兒?!其實不然。下面跟大家分享一下,筆者認(rèn)為的項目經(jīng)理能在這過程中起到的作用。
1. 確認(rèn)版本周期
計劃的時間點需要根據(jù)開發(fā)的工作量評估來確定,但是項目經(jīng)理需要確定這個版本大概的周期是多久,是一個兩周版本還是一個一月版本。在開發(fā)開始評估工作量和確認(rèn)提測點之前,項目經(jīng)理就要將版本周期情況同步給團(tuán)隊。影響項目經(jīng)理確定版本周期的因素往往有:
上個版本的情況:如果上個版本剛剛經(jīng)過一個非常緊張的大版本,有不少小的優(yōu)化功能未能上線或者大版本上線后用戶反饋了一些比較影響體驗的問題。那么下一個版本項目經(jīng)理就有可能考慮發(fā)一個較小的版本,將這些優(yōu)化和問題盡快上線。
運(yùn)營推廣計劃:某些版本可能是配合運(yùn)營推廣的計劃,那么在確定版本周期的時候就要考慮到這一點,確保移動端通過審核的時間能夠滿足推廣需求。
與其他端的配合:某些版本需要多端協(xié)同的,那么確定周期時就需要考慮到其他端的發(fā)布安排。
2. 完善和優(yōu)化團(tuán)隊給出的初步計劃
開發(fā)和測試給出自己相關(guān)任務(wù)的時間點,但是對于一個項目來說,這些還不夠。這些往往會被團(tuán)隊所忽略的,包括但不限于如下幾點:
安排多提測點:剛開始的時候,開發(fā)會習(xí)慣給出一個最終提測的點,這對盡快交付并不是什么好消息。所以項目經(jīng)理需要去跟開發(fā)一起梳理,是否有一些功能點是可以提前交付的,這樣測試就能提前介入,從而縮短研發(fā)周期。
需求凍結(jié)時間點:幾乎在每一個團(tuán)隊中,需求變更總是被開發(fā)和測試所詬病。對于需求變更,我們不能完全說不(一來是要應(yīng)對市場的變化,二來我們也理解在策劃階段總是有一些未知的問題),但是不是任何時間提出來的需求變更我們都接受的,我們認(rèn)為在某個時間點之后再提出的需求就會影響版本的順利上線,那么我們就有可能拒絕。這個時間就是凍結(jié)時間點??紤]到這個時間不能太早也不能太晚,太早不切實際,太晚又影響計劃。所以我們定義的需求凍結(jié)時間點是在最后一個提測點之后的一天。
數(shù)據(jù)埋點的安排:埋點一直以來都被開發(fā)認(rèn)為是最不重要的工作,無所謂什么時候做,只要在上線前埋一下就行了。但是有一次埋點就埋出了問題。那次是在上線前一天,在最后的版本開發(fā)做了埋點的工作,最終導(dǎo)致了軟件出現(xiàn)崩潰的問題。自那次以后我們就約定埋點要盡快進(jìn)行,不能等到最后一天。但是埋點工作也常常在計劃階段被遺忘,所以就需要在計劃制定過程中給開發(fā)預(yù)留一部分工作量用于埋點,同時明確埋點完成的時間節(jié)點以及埋點驗收完成的時間。