日本和歐美經(jīng)常會(huì)有程序員是低級(jí)工作一說(shuō),很多人不明就里,對(duì)國(guó)內(nèi)程序員也照搬,對(duì)國(guó)內(nèi)的程序員來(lái)說(shuō)是很不公平的。在國(guó)內(nèi),只會(huì)照抄別人代碼,一點(diǎn)都不懂創(chuàng)新,凡事依靠別人,快下班就盯著表看的程序員是不少,這種人一般很難有什么前途。但是,優(yōu)秀的不斷進(jìn)取的程序員也很多。由于國(guó)內(nèi)沒(méi)有象CMM這樣的軟件規(guī)范或者很少,所以這類優(yōu)秀的程序員不少都是干著系統(tǒng)分析員甚至PM的活,拿著程序員的工資。這類程序員雖然在起步時(shí)會(huì)吃很多虧,而且是主動(dòng)找虧吃,然而幾年之后與前一種程序員的社會(huì)地位會(huì)出現(xiàn)明顯的分化。當(dāng)上進(jìn)的程序員們作為PM進(jìn)行商務(wù)談判的時(shí)候,前者還在各個(gè)公司里頻繁跳槽,跳來(lái)跳去都不滿意。有些扯開(kāi)了,回到我們的話題。
日本的軟件規(guī)范與CMM有驚人的相似,其中至少有35%以上都是幾乎一模一樣的。最近經(jīng)濟(jì)不景氣,東京倒閉了160家軟件公司,這個(gè)數(shù)字是今年6月份的,還在不斷增加。這些公司紛紛搶灘上海,招收技術(shù)人員。如果去這樣的公司應(yīng)聘就要考慮清楚了,進(jìn)去可以學(xué)到他們的規(guī)范和質(zhì)量控制,可是要想從程序員成為系統(tǒng)分析員或PM,比登天還難。往往一個(gè)程序員進(jìn)去干了好幾年,對(duì)自己的那一塊熟的不得了,而對(duì)隔壁同事所做的東西一竅不通。拒傳華為正在嘗試CMM4(華為印度研究所已經(jīng)通過(guò)CMM4),對(duì)在華為工作的程序員們來(lái)說(shuō)可謂福禍難料。當(dāng)然,已經(jīng)作到PM或QA或者熱愛(ài)CODING的朋友例外。
需求分析本身也存在著時(shí)間分配的問(wèn)題。第一遍需求分析花的時(shí)間會(huì)最長(zhǎng),分析員們?cè)诳蛻舻母鱾€(gè)部門(mén)之間幾乎把腿都跑斷,把口水說(shuō)干,就是為了確立一個(gè)初期的需求模型。所有的文檔將會(huì)提交給PM進(jìn)行復(fù)審并簽字,不合格的打回重做。反饋表隨之將提交給客戶,第二遍第三遍等等等等接踵而來(lái),與客戶反復(fù)討論和磋商,反復(fù)提交文檔和表格,目的只有一個(gè),明確需求。當(dāng)PM最終合并了所有文檔并確立需求之后,最終生成的需求文檔將提交給客戶的各部門(mén)負(fù)責(zé)人簽字。這些文檔將作為合同的附件添加,以便在將來(lái)項(xiàng)目變更或者碰到重大問(wèn)題時(shí)和客戶扯皮的重要依據(jù)。
在啟動(dòng)階段明確需求并簽字,無(wú)論最終情況如何,一份詳盡的書(shū)面文檔可以解決很多口頭承諾或概念模糊的文檔帶來(lái)的許多問(wèn)題。詳盡的需求分析有一個(gè)額外的好處就是對(duì)一些雙方都很陌生或者從來(lái)無(wú)人嘗試的領(lǐng)域?qū)⑹且粋€(gè)決定是否進(jìn)行項(xiàng)目的判斷標(biāo)準(zhǔn)。
需要說(shuō)明的是,客戶并非都是蠻不講理,但是說(shuō)實(shí)話,頗有無(wú)奈,國(guó)內(nèi)目前的項(xiàng)目大多數(shù)客戶為了不讓自己的錢(qián)白花,經(jīng)常變著法子提需求。有時(shí)候,這種大項(xiàng)目在簽單時(shí)雙方都沒(méi)有絕對(duì)把握保證可以出成果,一旦在需求分析階段發(fā)現(xiàn)難以逾越的技術(shù)難關(guān),就會(huì)放棄項(xiàng)目。