“軟件業(yè),以人為本”。參與軟件開發(fā)過程的各類人員的共通心理表現(xiàn),對整個開發(fā)過程起著舉足輕重的影響。作為一名項目管理者,非常有必要對其進(jìn)行一一剖析,找出心結(jié),然后對癥下藥,加大溝通力度,提高開發(fā)效率。
結(jié)癥一:用戶,由于觀念上的不同,國內(nèi)的用戶更傾向于看到一個實實在在的“東西”。傳統(tǒng)開發(fā)方法的每個階段的審查和簽字,留下的往往是那句經(jīng)典笑話:“不錯,這是我所要求的,但不是我想要的?!倍矣捎诳蛻艨床坏揭粋€成型的“東西”,讓他在確認(rèn)報告上簽字也是一件比較頭痛的事,更何況客戶的需求隨時都有可能在變化。但是一開始就要給用戶一個“令客戶滿意的結(jié)果”,這樣的場面實際上是不存在的,而且也是不可能的。
結(jié)癥二,系統(tǒng)分析員:系統(tǒng)分析員認(rèn)為應(yīng)該的東西客戶往往覺得沒必要??蛻粲X得應(yīng)該的東西系統(tǒng)分析員又覺得不可理解。最為系統(tǒng)分析員惱火的事情就是客戶不停地在變更需求(特別是原地打轉(zhuǎn)的情況)。系統(tǒng)分析員在設(shè)計系統(tǒng)時考慮的最多是實現(xiàn)上的方便,而不是系統(tǒng)的擴展和更新。系統(tǒng)分析員總是在做“吃力不討好”的事,常常善意地自以為是地為客戶做許多“假設(shè)”。事實上這些“假設(shè)”往往與客戶的實際情況相背離。而且系統(tǒng)分析員最大的“致命傷”就是:系統(tǒng)分析員從心理上往往忽略一些細(xì)節(jié)上的東西,然而這些細(xì)節(jié)往往在系統(tǒng)實現(xiàn)時成為系統(tǒng)成敗的關(guān)鍵。
結(jié)癥三,程序員:中國的軟件企業(yè)普遍還處在“作坊時代”。至今還有很多程序員,滿腦袋的“數(shù)字英雄主義”,喜歡獨出心裁。他們更傾向于一拿到項目馬上編碼。然后告訴您:他的編碼多么出色。他們會把詳細(xì)設(shè)計說明書當(dāng)作是對他們的一種“桎梏”。他們認(rèn)為程序應(yīng)該是一門藝術(shù),而他們正是“藝術(shù)大師”。因此在程序中他們留下的“舊日足跡”隨處可見。他們喜歡天馬行空的工作方式,從而往往忽略別人價值的存在。
結(jié)癥四,測試工程師:測試工程師往往的想法是“我已經(jīng)仔細(xì)審查并測試過了,不會再有錯誤的”。實際上運行時不存在錯誤的軟件是不存在的。因為運行產(chǎn)生的錯誤的原因更多可能是來自于外界因素。測試工程師往往更傾向于測試軟件本身而忽略運行環(huán)境。一旦交付使用后,對于客戶產(chǎn)生的抱怨他們往往會說“這是設(shè)計者的不完全造成的,與我不相干”。因此,您很難定他們的“罪”。
如何解決這些心理結(jié)癥。“第一是溝通,第二是溝通,第三還是溝通”??蛻舴矫娴暮献魇窍到y(tǒng)實現(xiàn)的前提。從項目開始到結(jié)束,用戶的參與必不可少。您必須讓客戶看到:你們是在實實在在地為他們辦事。這樣您才能得到客戶從心理上的認(rèn)可。消除了原有的顧慮后,事情辦起來就順利多了。其次系統(tǒng)分析員方面,在設(shè)計階段把所有可能出現(xiàn)的問題擺在桌面,與客戶一起參與討論(問題產(chǎn)生的條件,特點,效果,后果等),一起解決,盡可能少地把分析,設(shè)計時的錯誤帶入下一步開發(fā)階段。程序員方面,要不厭其煩的向他們講明編程規(guī)則的重要性。從心理方面,我們要采用積極引導(dǎo)的辦法,多給程序員吃“補藥”,多兩句贊美的話往往會帶來很好的效果,畢竟程序員是年輕人的團體,是受不得“打擊”的。此外培養(yǎng)他們的團隊精神也是必不可少的。測試工程師方面,我們要尊重他們(國內(nèi)許多公司測試工程師的地位是比較低的),讓他們意識到自己工作的重要性。還要不斷培養(yǎng)她們的耐性,責(zé)任感和細(xì)心的作風(fēng)(在這方面,女測試工程師比較有優(yōu)勢)。認(rèn)真聽取他們的建議,了解他們的心理感受。在解決上述人員的心理結(jié)癥后,您會發(fā)現(xiàn)整個項目的開發(fā)效率有明顯的提高。
我個人覺得一名優(yōu)秀的軟件項目管理者,首先應(yīng)是一名管理心理學(xué)方面的專家。人是軟件企業(yè)的立足之本。了解參與項目開發(fā)人員的心理活動,對于項目管理者來說,可以順勢利導(dǎo),消除不良的人為因素,提高團隊的凝聚力和工作能力,從而提高開發(fā)效率。