估計(jì)沒有人會愿意,甚至喜歡去做那種會讓你不死也活脫脫掉層皮的苦項(xiàng)目,沒日沒夜人如機(jī)器扳高速在運(yùn)轉(zhuǎn),即便最后項(xiàng)目最終做成了,整個項(xiàng)目組的人也在過程中被折騰得不成人形。或許能夠把人做到吐血,以至于丟掉小命的項(xiàng)目不少人曾經(jīng)遇到過。我把這種項(xiàng)目叫成骨頭項(xiàng)目,雖然不少人喜歡啃骨頭,特別是硬骨頭,在多番嘗試努力之后咬到嘴里的肉吃起來別有味道,更有快感,但是這種快感需要付出更多的代價(jià)。
什么樣的項(xiàng)目會讓你在過程中做得比較輕松自如,游刃有余呢?需求明確,開發(fā)進(jìn)度合理,技術(shù)風(fēng)險(xiǎn)可控,人員配備到位且團(tuán)隊(duì)士氣活躍,多方條件一一具備之下,或許你的項(xiàng)目會如大塊吃肉一般,過程和結(jié)果都那么愉悅,但是這樣的項(xiàng)目對于絕大部分的人來說,應(yīng)該說一個一個美好的夢想。
有沒有這種吃肉形的項(xiàng)目呢?有,但是為數(shù)不多,至少自己工作了這么多年,也就那么一兩次,而且還是10人/月之下的小項(xiàng)目。記憶比較清晰的是一個數(shù)據(jù)庫遷移項(xiàng)目,主要是更具需求完成Oracle 存儲過程開發(fā)工作,整個項(xiàng)目是4人/月的開發(fā)工數(shù),但是投入了2個Senior Engineer,2個Middle Engineer和1個Junior Engineer進(jìn)行開發(fā),那個時候公司的項(xiàng)目不緊張,人員資源也就稍微富足一點(diǎn)。5個人做了1個月(實(shí)際投入工數(shù)是5人/月,超過項(xiàng)目預(yù)算),由于客戶需要我們完成存儲過程的開發(fā)和測試數(shù)據(jù)和測試報(bào)告,要求測試數(shù)據(jù)的覆蓋率需要100%,時間和人員都比較充裕的情況下,我們想了一個辦法來測試存儲過程的覆蓋率,我們用C#的按照存儲過程的邏輯重新編寫,然后用Nunit和Nconver結(jié)合的方式確保我們構(gòu)造的數(shù)據(jù)的覆蓋率達(dá)到百分百。在生成測試報(bào)告的時候,我們又用Excel的VBScript腳本編寫模板,自動導(dǎo)出數(shù)據(jù)和做成報(bào)告。這個項(xiàng)目在兩個方法被實(shí)現(xiàn)后,后期的工作非常輕松,特別是整個項(xiàng)目的質(zhì)量非常高,客戶沒有提出過一個Bug。
也只有這樣的項(xiàng)目配備和人員結(jié)果才能讓我們有時間思考和嘗試如何做得更好,做到最后就像吃肉般的舒服,對于其它的都是在一次一次地啃骨頭,甚至雞肋,我們在做項(xiàng)目的時候容不得自己挑挑揀揀,所以即便明知食之無味,但是公司不會丟棄。我們也只能硬著頭皮頂上去,這個時候感覺自己如果是在炮火霏霏的戰(zhàn)場上,自己懷里估計(jì)就揣了一桿木槍,還在奮力沖刺。
從早上收到郵件說關(guān)于美國醫(yī)療領(lǐng)域的那個項(xiàng)目的合同已經(jīng)基本確定,目前已經(jīng)可以確定的規(guī)模大概有120人/月,這些和上周在周會上的得到的情報(bào)基本吻合。只是今天比較明確的是這個項(xiàng)目將會交給我的開發(fā)團(tuán)隊(duì)來處理,而且客戶希望能夠在8個月內(nèi)能夠完成項(xiàng)目的開發(fā)工作,后續(xù)有2-3個月的客戶試用測試、交付使用和問題對應(yīng)階段。
郵件附件中有一些關(guān)于這個項(xiàng)目的簡單介紹,項(xiàng)目主要是客戶希望能夠給美國的醫(yī)院提供在線服務(wù)的功能,能夠?yàn)獒t(yī)院里面的醫(yī)生提供在線辦公,同時病人提供在線看病和病歷管理的服務(wù)。郵件里面的內(nèi)容比較簡單,大概地介紹了一下項(xiàng)目的目的和希望,還有幾張簡單的項(xiàng)目結(jié)構(gòu)示意說明圖。
看著郵件和那幾片概述性的論述文字,感覺像對著一顆定時炸彈。120人/月,8個月開內(nèi)完成,還不包括2-3個月的需求調(diào)研時間,實(shí)際的開發(fā)時間也就是5個月。120人/月的工數(shù)中,開發(fā)估計(jì)在100人/月左右,那至少也需要20個人才能夠在5個月內(nèi)完成開發(fā)。這種小學(xué)的加減乘除地算法在我的腦子來回運(yùn)算著,越算越感覺到時間緊迫。
“一場艱苦的戰(zhàn)。”在自己心里冒出的直觀感覺,我深深吸了口氣,便站起身準(zhǔn)備找項(xiàng)目總監(jiān)去,對于這個項(xiàng)目的一些事情我需要和他確認(rèn)清楚。
我把項(xiàng)目總監(jiān)約到了會議室,還沒有等我坐下,他就先開口問道:“早上發(fā)給你的郵件你看過了嗎?”
“嗯。”
“那好,我們現(xiàn)在可以先著手準(zhǔn)備,預(yù)計(jì)合同很快就會簽下來,然后在下月初估計(jì)整個項(xiàng)目就會開始。”
“嗯,這個項(xiàng)目已經(jīng)最終確定交給我們團(tuán)隊(duì)來做嗎?”我還在需要再次確認(rèn)這個問題。
“是的,關(guān)于人員方面的問題我們也在考慮。到時候會給你協(xié)調(diào)其它團(tuán)隊(duì)的開發(fā)人員和部分外駐開發(fā)人員。”
“外駐?”聽到這個自己感覺壓力更大,因?yàn)橹暗捻?xiàng)目中用到過外駐人員,也就是其它公司外派到我們這里,臨時性的加入開發(fā),這樣的人員在項(xiàng)目中的風(fēng)險(xiǎn)很大,不容易管理。
“是的,這個項(xiàng)目需求,開發(fā)和測試的人員都加在一起,預(yù)計(jì)會有20人左右,從公司目前的人員狀況來看,我們只能使用部分外駐人員參與開發(fā)。但是我們還是計(jì)劃再招聘一到兩個的Senior級別的開發(fā)人員補(bǔ)充到你的團(tuán)隊(duì)中。”
從公司的角度來考慮,對于這種項(xiàng)目的確會希望使用外駐人員的參與,因?yàn)闉榱艘粋€項(xiàng)目一下子把一個團(tuán)隊(duì)從目前的7個人一下擴(kuò)充到20人,一旦項(xiàng)目結(jié)束之后,那后續(xù)補(bǔ)充進(jìn)來的人員的安置也就有一定的問題,所以基于成本的考慮,公司的做法倒也合情合理。
“對于具體的人員需求,你再考慮一下,在周五的項(xiàng)目例會上再最終討論一下。”
“這次誰會到客戶那邊去做需求?”
“公司本來是想讓你到客戶那邊,但是如果你去了,就沒有人管理項(xiàng)目,所以這次會從上海那邊派兩個BA(business Account) 到客戶那里去做需求。”
“嗯,了解。”
“小余,這個項(xiàng)目還算比較大,在做的時候可能會有一些問題,希望你能夠努力把它做好,如果過程中遇到任何問題或則說需要任何支援的話,你可以隨時找我來解決。”
我微微笑了笑算是做了一個答復(fù),對于這種任重期望的話,無疑往自己的肩膀上又多加了不少分量。項(xiàng)目是沒有辦法挑選和推托,雖然可以預(yù)計(jì)到這個項(xiàng)目能夠順利做下來不是那么容易,既然要做,即便是再難啃的骨頭,我也要把肉咬到嘴里,越面對困難重重,自己越要堅(jiān)定信心,這才是自己的個性。
從會議室出來,我就開始考慮整個項(xiàng)目的人員問題,雖然是先著手準(zhǔn)備,但是目前團(tuán)對立面連我在內(nèi)就7個人,對于即將補(bǔ)充進(jìn)來的13個人里面的人員和對應(yīng)的角色都需要自己仔細(xì)考慮。其它團(tuán)隊(duì)的人員,外駐人員和自己的人員,感覺就像一個大雜燴。從目前的能夠拿到的資料來看,對于項(xiàng)目還無法做一個比較充分的預(yù)估,因?yàn)榫唧w開發(fā)的技術(shù)性問題和業(yè)務(wù)性的問題都難以預(yù)計(jì)。
我在腦海里面首先把人員做了初步的劃分,20人的隊(duì)伍中預(yù)計(jì)有5個測試人員,對于測試和開發(fā)的人員比例我一般會傾向于1:2的值,即兩個開發(fā)人員會配上一個測試人員,這也是目前公司所采用的模式。測試人員會來自公司的測試團(tuán)隊(duì)。那么實(shí)際的開發(fā)人員會有15個人,15個人中Senior Engineer,Middle Engineer,Junior Engineer的比例大概是1:2:4,所以也就需要3個Senior Engineer,4個Middle Engineer和8個Junior Engineer。
人員的劃分到?jīng)]有多大的困難,結(jié)合上自己團(tuán)隊(duì)目前的人員情況,所需要的其他人員也就非常清楚。雖然缺少的人員的清單已經(jīng)列舉的非常清楚,但是這也只是一個列表而已,是否能夠找到合適的人員與之配備,將會成為項(xiàng)目開發(fā)的一個關(guān)鍵因素。
我同時也把上海的那幾個BA都回憶了一下,在項(xiàng)目例會上自己需要比較明確的提出人員,否則如果BA的人員出了問題,需求如果無法整理清楚,那么對于項(xiàng)目來說打擊會是致命的。
在很多時候,做軟件開發(fā)是比較辛苦的事情,大部分的項(xiàng)目都像是一塊難啃的骨頭,畢竟一個項(xiàng)目能夠做到萬事具備的情況就像買彩票一樣,其概率估計(jì)是在五六個小數(shù)點(diǎn)之后的值,項(xiàng)目在開發(fā)過程中各種問題層出不窮,人員不足,周期不足,需求步明確,客戶隨意變更等等問題都隨意可見。所以做項(xiàng)目開發(fā)的整個過程無疑就是在面對這些殘缺的問題,以及我們在思考如何去解決這些問題。
沒有人會樂意做這種啃骨頭的事情,除非他已經(jīng)麻木了。當(dāng)然我們也在一次一次的這種骨頭項(xiàng)目中不斷的提升自己,以及在克服重重困難之后看到成功后的那種滿足感,這些才是支撐大伙完成項(xiàng)目的一個關(guān)鍵。
如果你接手的是一個可以預(yù)見的骨頭型項(xiàng)目,要么你放棄不做,高枕無憂,不過可能性非常小;要么你就多足充裕的準(zhǔn)備,比如前期的人員考慮以及合作人員的能力考慮,就像選擇BA的人一樣,如果他在已經(jīng)在過去出現(xiàn)過過種種的問題,那么對于這種關(guān)鍵的合作人員自己就需要加倍留心;團(tuán)隊(duì)組建過程中的人員的安排等,對于人員的風(fēng)險(xiǎn)需要考慮到位,比如說外駐人員的管理問題等;對團(tuán)隊(duì)成立后協(xié)同工作等問題考慮,還有項(xiàng)目技術(shù)和業(yè)務(wù)風(fēng)險(xiǎn)的考慮,這些都是在項(xiàng)目還沒有開始的時候需要考慮的點(diǎn),而不是等到項(xiàng)目真正開始做的時候才意識到有這些問題,因?yàn)轫?xiàng)目一旦開始的時候,我們要面對的是如何解決這些問題,而不是考慮這些問題的原因。
回到自己的座位上,看著還在他們忙碌著,老馬,阿毛,木子,超仔,大師, 杰克著幾個我能夠指望共同作戰(zhàn)的團(tuán)員,他們也是我有信心去啃著塊硬骨頭的基礎(chǔ)。
作者:Yice(小余)
本文版權(quán)歸作者所有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責(zé)任的權(quán)利。

浙公網(wǎng)安備 33010602011771號