DM這個項目,按我們以往的開發與測試模式,3個月之內會完成所有的工作,雖然測試一般都是在產品完成代碼編寫之后才參與,但因為團隊有一定的流程管理,公司也比較重視測試,且開發與測試的水平都不錯,產品的質量是比較有保證的,經我們發布出去的產品在現網運行效果一直有較好的口碑。只是,缺少需求、設計以及代碼的評審,大部分的問題都是在測試階段發現并解決,這樣一來,問題的修改成本相對比較高,而且產品的質量很大程度上依賴測試人員的素質和對業務的熟悉程度。這一點,我在以往的測試中一直強調,希望問題能夠及早發現,也希望產品的質量能夠盡量少地依賴個人。
CMMI5強調通過各種的活動及早發現并解決問題,通過流程的控制減少產品質量的人為因素,這些正是我們所需要的。不過,每件事情都會有兩面性,一個本來3個月就可以完成的項目,按照CMMI5的流程來實施,需要6個月,而且需要耗費更多的人力資源。特別是在項目的前期,大量的文檔、評審,的確是需要投入非常多的人力和時間,而且也不能馬上看到效果。從短期來看,當然是不劃算,也看不到真正的收益,這就是為什么在中國大多數的IT公司都不注重流程控制、也是為什么CMMI到了中國實施起來就變了味兒的原因之一。我曾經跟一個資深的工程師探討CMMI在項目中的應用,他跟我說,他反對將國外的CMMI不經消化便套到項目實施中,因為流程管理在項目的應用中沒有起到效果,反而是讓人疲于應付各種流程各種文檔,導致項目的開展效率低見效少抱怨多。末了,他頗具幽默地對我說,其實,coding并不是靠管理給管出來的。但愿,CMMI5在我們的項目的應用中能看到積極正面的評價。
如果CIMMI5只是在某個項目中實施,如果實施的目的只是為了過級,如果過級之后就連CMMI5是什么都給丟了,我覺得是沒有任何的意義的,浪費時間浪費精力。既然開展了就得認認真真地實施,項目結束之后,將其中的精髓應用于整個團隊,改進團隊的開發與測試流程,提高產品的開發效率與質量,這才是CMMI5所給我們帶來的真正意義。否則,在一個項目中投入如此大的成本,就真的太不劃算了。在對CMMI5的應用熟悉到一定程度之后,我們不必實施CMMI5的所有活動,完全可以適當地剪裁合適我們的東西并應用起來,相信這樣效果會更好。這些,當然,需要管理層認為有用并下決心去推動,而且團隊中的成員也要積極支持,才會出現積極的效果。CMMI5在DM中的應用,能否給整個團隊注入煥然一新的面貌?還是只是一場過場戲?現在給結論還為期過早,咱們拭目以待吧!
PS:在項目啟動前,開發經理跟我說,DM的測試負責人,就由你來做吧!我自然是樂顛顛地接受了,因為這是一個學習和施展的好機會。事后,他問我:“你已經作為兩個核心產品的測試負責人了,下半年的IAGW還要靠你去主導,是否給任務太重了?”我跟他說:“沒事,我能行?!币环矫?,我相信我自己可以安排好,不會辜負他對我的信任;另一方面,我的確是很珍惜這個學習的機會。關于流程管理,我有一定的基礎和思考,但是沒有真正地運用起來,這個機會正好可以讓我認真地去學習一些新的知識,應用一些新的理念。下半年的任務如此重,我想我應該學會將任務下放了,主要的精力是集中在測試計劃、測試設計和宏觀調控上,至于具體案例的編寫,我可以思考測試要點之后將部分案例的設計交給其他的測試人員去編寫,而測試的實施,因為有了測試用例和測試方案,也可以將部分功能的測試交給其他的測試人員去測試,自己可以集中在質量的宏觀把關上。當然,很多事情還是需要自己親自去做的。