近期公司讓我做一個小型軟件開發(fā)項目的主管,負責一個小型軟件開發(fā)項目就跟掉層皮似的,其需要花費的心力不亞于負責一個大型的軟件開發(fā)項目。初期的開發(fā)失敗給我很大的打擊,對此我做了許多反思和總結。后來,我終于明白到是由于缺乏切實可行的開發(fā)制度來為開發(fā)過程保駕護航,致使開發(fā)人員和測試人員不知項目該如何穩(wěn)步地往下走,對于出現(xiàn)的異常情況也不知如何預防和規(guī)避,而且在出現(xiàn)問題時也未能有步驟的及時進行快速反應。
由于在資源、人力、管理水平等各種方面都有所欠缺,使我所負責的小型開發(fā)項目走了很多的彎路。為什么小型軟件開發(fā)也有那么多的麻煩事情,到底問題在哪里呢?簡單的說,缺乏制度化管理是這次開發(fā)暫時失利的重要原因。
1、開發(fā)受挫源于對制度化的誤解
所謂開發(fā)制度化,是指在軟件開發(fā)過程中大量使用的口頭的或文字化的規(guī)章、標準或約定等。開發(fā)制度化對于軟件開發(fā)項目來說,就像規(guī)矩對于畫方圓一樣,其重要性不言而喻。但目前許多小型軟件開發(fā)團隊對于開發(fā)制度化卻有不少的誤解。
(1)開發(fā)制度流于形式,缺乏實質(zhì)性操作
目前許多軟件開發(fā)的管理制度都是為大中型開發(fā)項目制定的開發(fā)制度與規(guī)范,如CMM、ISO9000等。因此在實際操作中,許多小型軟件開發(fā)團隊以這些為大中型軟件開發(fā)項目制定的開發(fā)管理流程為基準的、模仿制定的規(guī)范制度,不但未起到明顯效果,有時還會落得個"東施效顰"的罵名。
原因并不是這些制度化的管理規(guī)范本身有什么問題,而是許多小型軟件開發(fā)團隊模仿所制定的開發(fā)管理制度,并沒有針對小型軟件開發(fā)項目的實際配置進行合理優(yōu)化。因此,許多小型軟件開發(fā)團隊花大心血建立的開發(fā)制度只流于形式,缺乏實質(zhì)性操作,在一定程度上導致了項目的失誤,最終形成東施效顰,差之千里。
(2)過猶不及,患上制度迷信病
制度迷信病是小型軟件開發(fā)團隊在其開發(fā)管理過程中另一個常見的問題。原因是有些曾在大中型團隊或項目工作過的開發(fā)人員,在負責小型開發(fā)項目時,也往往喜歡套用大中型開發(fā)項目的經(jīng)驗,強調(diào)要用"制度"管人,用"制度"去指導開發(fā)。但由于缺乏對小型軟件開發(fā)活動特點的深入理解,這些開發(fā)人員往往會不自覺地形成簡單問題復雜化的僵硬化思維。久而 久之,就會產(chǎn)生了一種叫做"制度依賴或制度迷信"的病態(tài)不健康思維方式。
這些開發(fā)人員在開發(fā)過程中過分的期望通過制度來實現(xiàn)對人的有效管束,但卻忽視了小型開發(fā)項目的特點,結果是執(zhí)行力越來越差,效率越來越低,抱怨卻越來越多。這個時候,有制度比沒有制度還糟糕,這就是患上了我們熟知的"制度病"。
(3)過分人本管理,卻欠缺制度化管理
許多小型軟件開發(fā)主管在處理開發(fā)活動和制度化管理關系過程中,常犯的通病是沒有或不善于將人本管理與制度化管理有機地結合起來,使開發(fā)過程中過分傾向于人本管理,而忽視了制度化、規(guī)范化的管理。他們只著眼于單純地、或過份地依賴其個人的管理能力,結果反而造成許多對開發(fā)質(zhì)量穩(wěn)定性不利的影響。
(4)制度執(zhí)行不力,使其成為一紙空文
許多小型軟件開發(fā)團隊在開發(fā)過程中并不缺少文件化的制度,但往往卻容易陷入另一個困境,就是執(zhí)行不力。究其原因有三個:一是開發(fā)制度太多太濫令人無所適從;二是泛濫的制度化帶來了大量的額外煩瑣的管理工作量;三是對違反開發(fā)制度的行為缺乏相應的制裁措施。結果使開發(fā)制度無法有效執(zhí)行,使其成為一紙空文,最后束之高閣。因此有一句大實話是值得小型軟件開發(fā)團隊重視的,就