您的位置:軟件測(cè)試 > 軟件項(xiàng)目管理 > 進(jìn)度管理 >
淺析軟件項(xiàng)目管理中10個(gè)誤區(qū)
作者:網(wǎng)絡(luò)轉(zhuǎn)載 發(fā)布時(shí)間:[ 2013/5/20 15:28:55 ] 推薦標(biāo)簽:

隨著計(jì)算機(jī)硬件水平的不斷提高,計(jì)算機(jī)軟件的規(guī)模和復(fù)雜度也隨之增加。計(jì)算機(jī)軟件開發(fā)從“個(gè)人英雄”時(shí)代向團(tuán)隊(duì)時(shí)代邁進(jìn),計(jì)算機(jī)軟件項(xiàng)目的管理也從“作坊式”管理向“軟件工廠式”管理邁進(jìn)。這要求軟件開發(fā)人員特別是軟件項(xiàng)目管理人員更深一步地理解和掌握現(xiàn)代軟件工程的理論方法,完成思想觀念上的轉(zhuǎn)變。筆者在此分析了10個(gè)在現(xiàn)代項(xiàng)目管理中思想觀念上容易陷入的誤區(qū),希望能夠拋磚引玉,引發(fā)大家更多的思索和討論。

誤區(qū)1:在項(xiàng)目的需求分析階段,開發(fā)方與客戶方在各種的問題的基本輪廓上達(dá)成一致即可,具體細(xì)節(jié)可以在以后填充。因?yàn)闊o論開始時(shí)有多么細(xì)致, 以后對(duì)需求的修改幾乎是必然的。分析:這是一種非常危險(xiǎn)的思想。實(shí)際上許多軟件項(xiàng)目失敗的主要的原因是需求階段對(duì)問題的描述不夠細(xì)致,導(dǎo)致后來預(yù)算超出或者時(shí)間 進(jìn)度達(dá)不到要求。正確的做法是:在項(xiàng)目需求分析階段,雙方必須全面地盡可能細(xì)致地討論項(xiàng)目的應(yīng)用背景、功能要求、性能要求、操作界面 要求、與其他軟件的接口要求,以及對(duì)項(xiàng)目進(jìn)行評(píng)估的各種評(píng)價(jià)標(biāo)準(zhǔn)。并且,在需求分析結(jié)束以后,雙方還要建立可以直接聯(lián)系的渠道,以盡 早地對(duì)需求變動(dòng)問題進(jìn)行溝通。

誤區(qū)2:軟件項(xiàng)目的需求可以持續(xù)不斷的改變,而且這些改變可很容易地被實(shí)現(xiàn)。分析:的確,在具體實(shí)際中由于種種原因客戶方很難在需求分析階段全面而準(zhǔn)確地描述所有問題。隨著開發(fā)進(jìn)度的推進(jìn),往往會(huì)有一些需求的 改變。而現(xiàn)代軟件工程理論也利用軟件的靈活性特點(diǎn)通過各種方式來適應(yīng)這種情況。不過,這并不表明“軟件項(xiàng)目的需求可以持續(xù)不斷的改變 ,而且這些改變可很容易地被實(shí)現(xiàn)”。實(shí)踐表明:隨著開發(fā)進(jìn)度的推進(jìn),實(shí)現(xiàn)軟件需求更改所需要的代價(jià)呈指數(shù)形式增長。假定在需求分析階 段實(shí)現(xiàn)需求更改需要花費(fèi)1倍的代價(jià);那么,在系統(tǒng)設(shè)計(jì)和編碼階段,需要花費(fèi)1.5-6倍的代價(jià);在系統(tǒng)測(cè)試階段需要花費(fèi)10-20倍的代價(jià);在軟 件版本發(fā)布以后,甚至可能要花費(fèi)60-100倍的代價(jià)。由此可見,在項(xiàng)目開展過程中,軟件需求的改變應(yīng)當(dāng)盡量早地提出。這樣才可能花費(fèi)少, 容易被實(shí)現(xiàn)。

誤區(qū)3:軟件程序主要由代碼組成,因此編碼階段是整個(gè)軟件項(xiàng)目的重要的階段,應(yīng)該給與大量的時(shí)間,并且集中主要的資源。分析:與以前相比,由于軟件的規(guī)模和復(fù)雜度的增加,以及半自動(dòng)化軟件代碼開發(fā)平臺(tái)的出現(xiàn),現(xiàn)代軟件項(xiàng)目管理的中心發(fā)生了轉(zhuǎn)移——不是 著重編碼階段,而是著重系統(tǒng)總體/詳細(xì)設(shè)計(jì)階段。一般說來,在現(xiàn)代軟件項(xiàng)目管理中各種資源的合理分配比例是:項(xiàng)目論證、風(fēng)險(xiǎn)評(píng)估階段3% ,項(xiàng)目需求分析階段8%,系統(tǒng)總體/詳細(xì)設(shè)計(jì)階段45%,編碼階段10%,系統(tǒng)測(cè)試階段34%。

誤區(qū)4:為了便于代碼的維護(hù)修改,在系統(tǒng)的詳細(xì)設(shè)計(jì)階段文檔工作應(yīng)該做到寫出所有程序的偽碼。分析:通常偽碼的大作用是對(duì)程序的算法流程進(jìn)行描述,便于人們深入了解程序的功能和實(shí)現(xiàn)過程。可見,在一定程度上偽碼的確有利于對(duì) 程序代碼的維護(hù)和修改。但是,我們知道為了保證項(xiàng)目文檔和程序代碼的一一對(duì)應(yīng)關(guān)系,維護(hù)程序代碼的時(shí)候同時(shí)需要對(duì)項(xiàng)目文檔進(jìn)行維護(hù)。偽碼和程序代碼是非常接近的,對(duì)偽碼進(jìn)行維護(hù)的話,相當(dāng)于進(jìn)行了2倍的程序代碼維護(hù)。工作量是很大的。所以切合實(shí)際的方式應(yīng)該是對(duì)一般 的程序文檔做到程序流程圖即可,對(duì)于涉及了較復(fù)雜算法的才需要偽碼。

誤區(qū)5:既然在項(xiàng)目人員配置中設(shè)置了專門的測(cè)試人員,那么軟件所有的內(nèi)部測(cè)試工作全部應(yīng)該由測(cè)試人員完成。分析:軟件程序測(cè)試可以分為“白盒法”和“黑盒法”兩種方式。由于使用“白盒法”對(duì)測(cè)試人員各方面素質(zhì)的種種要求,在進(jìn)行程序測(cè)試時(shí) 測(cè)試人員總是優(yōu)先使用“黑盒法”。他們的工作方式往往是先對(duì)程序進(jìn)行“黑盒法”測(cè)試;如果測(cè)試沒有通過,不得已這才考慮對(duì)程序代碼 進(jìn)行“白盒法”測(cè)試。顯然,這種對(duì)“白盒法”有意無意的“逃避”,對(duì)軟件的可靠性和穩(wěn)定性構(gòu)成了威脅。如何解決這個(gè)問題?一方面需要 提高對(duì)測(cè)試人員的要求,另一方面也需要程序員完成部分的“白盒法”測(cè)試(實(shí)際上,程序員往往也是進(jìn)行“白盒法”測(cè)試的佳人選)。

誤區(qū)6:軟件項(xiàng)目管理只是相關(guān)技術(shù)部門的事情,與公司其他部門無關(guān)。分析:在競(jìng)爭日益激烈的,軟件項(xiàng)目規(guī)模大、復(fù)雜度高而且時(shí)間要求緊迫。要想提高公司的軟件項(xiàng)目管理水平,這需要提高公司的整體 參與意識(shí),需要公司各個(gè)部門協(xié)同作戰(zhàn)。例如需要會(huì)計(jì)部門協(xié)助進(jìn)行項(xiàng)目預(yù)算,財(cái)務(wù)管理和費(fèi)用控制;需要研究部門(技術(shù)委員會(huì))指派專家 協(xié)助進(jìn)行各種風(fēng)險(xiǎn)評(píng)估,提供技術(shù)指導(dǎo);需要后勤部門提供各種保障。

誤區(qū)7:在開發(fā)進(jìn)度滯后的情況下,可以聘請(qǐng)更多的程序員加入到開發(fā)團(tuán)隊(duì)中,通過增加人力資源來趕上進(jìn)度。分析:在注重團(tuán)隊(duì)開發(fā)的時(shí)代,開發(fā)方應(yīng)該根據(jù)目前的軟件項(xiàng)目管理水平慎重考慮這個(gè)做法。如果新加入的程序員對(duì)目前軟件項(xiàng)目的應(yīng)用行業(yè) 有一定了解,并且可以很快適應(yīng)了開發(fā)方的項(xiàng)目管理方式、軟件開發(fā)風(fēng)格、團(tuán)隊(duì)協(xié)作氛圍;那么“新人”的加入是有益的。否則,可能會(huì)“好 心好意做壞事”。因?yàn)楸M管其個(gè)人能力很高,但是為了使其與大家一起協(xié)同工作,開發(fā)團(tuán)隊(duì)不得不分出人手對(duì)其進(jìn)行與項(xiàng)目有關(guān)的技術(shù)/業(yè)務(wù)培 訓(xùn),更重要的(也是難度大的)是還要引導(dǎo)其融入團(tuán)隊(duì)。這可能需要花費(fèi)開發(fā)團(tuán)隊(duì)許多時(shí)間和精力,很有可能使項(xiàng)目進(jìn)度更慢。

誤區(qū)8:技術(shù)骨干應(yīng)該成為項(xiàng)目的項(xiàng)目經(jīng)理,項(xiàng)目經(jīng)理一定是所有項(xiàng)目成員中薪水高的。分析:在“軟件作坊”時(shí)代,這是一種普遍使用而且效果不錯(cuò)的方法;而在“軟件工廠”時(shí)代,這種方法卻帶來各種問題,有時(shí)甚至直接導(dǎo)致 項(xiàng)目失敗。究其原因這主要是因?yàn)殡S著現(xiàn)代軟件開發(fā)分工的細(xì)化,對(duì)項(xiàng)目經(jīng)理的要求也發(fā)生了根本的改變——注重的不是其對(duì)某項(xiàng)專業(yè)技術(shù) 的掌握程度,而是其組織、領(lǐng)導(dǎo)、協(xié)調(diào)開發(fā)團(tuán)隊(duì)的能力(當(dāng)然,可以兩者均突出好)。至于項(xiàng)目經(jīng)理的薪水問題,這和定薪制度有很大關(guān)系 。通常,項(xiàng)目經(jīng)理執(zhí)行的是管理人員的薪酬體系,而其他人員執(zhí)行的是技術(shù)人員的薪酬體系。項(xiàng)目經(jīng)理的薪水在項(xiàng)目成員中是比較高的,但不 一定是高的。有時(shí)候,為了激勵(lì)技術(shù)人員,項(xiàng)目中的技術(shù)骨干得到的酬勞比項(xiàng)目經(jīng)理要高。

誤區(qū)9:只有項(xiàng)目經(jīng)理以及部門主管才會(huì)關(guān)心項(xiàng)目整體進(jìn)度,程序員只關(guān)心自己的開發(fā)進(jìn)度。分析:這是一種“官僚”的想法。實(shí)際上程序員作為團(tuán)隊(duì)中的一員,他不僅僅是在打一份工,更重要的是在參與一件“作品”的創(chuàng)作。在體味 工作的辛苦的同時(shí),程序員更重要的是要享受創(chuàng)作的快感。項(xiàng)目經(jīng)理不應(yīng)該漠視程序員對(duì)“成感”的追求,應(yīng)該向每一個(gè)人詳細(xì)描述終“ 作品”將會(huì)如何美妙和令人興奮,并且在到達(dá)終目標(biāo)的路上設(shè)立一系列的里程碑。每當(dāng)項(xiàng)目整體推進(jìn)到一個(gè)里程碑的時(shí)候,項(xiàng)目經(jīng)理應(yīng)該把 這個(gè)消息告訴每一位項(xiàng)目成員。實(shí)際上,這不僅僅可以讓所有的項(xiàng)目成員享受到階段勝利的喜悅,還可以激發(fā)大家更大的工作熱情,提高工作 效率。

誤區(qū)10:為了保證項(xiàng)目繼續(xù),為了留住核心程序員,加薪吧。分析:加薪可以說是很多企業(yè)在挽留程序員時(shí)所使用的常用方法。這一招可能暫時(shí)奏效,不過往往是人留下來了,但副作用也來了——加薪的 人未必見得多干活,沒有加薪的人卻開始消極怠工了。其實(shí),項(xiàng)目的進(jìn)行過多地依賴程序員的個(gè)人技術(shù)是“作坊”時(shí)代沿襲下來的“陋習(xí)”。 既然IT行業(yè)人員的流動(dòng)是無法控制的,現(xiàn)在項(xiàng)目的執(zhí)行應(yīng)該更加注重團(tuán)體的力量,應(yīng)該更多的考慮公司整體技術(shù)水平和核心技術(shù)能力。例如形 成公司自己的專家知識(shí)庫,類/函數(shù)庫,第三方控件庫,擁有自主版權(quán)的開發(fā)平臺(tái)等。另外,實(shí)際上程序員萌生去意的原因很大程度上不是薪水 ,而是缺少激勵(lì)和尊重。這需要項(xiàng)目經(jīng)理使用“老土”一點(diǎn)的辦法,找適當(dāng)?shù)臅r(shí)機(jī)對(duì)程序員做一做思想工作,向其描述項(xiàng)目的美好未來,讓其 感受關(guān)心和尊重?傊,要從多方面著手保證項(xiàng)目的順利開展,而不是簡單地加薪。

軟件測(cè)試工具 | 聯(lián)系我們 | 投訴建議 | 誠聘英才 | 申請(qǐng)使用列表 | 網(wǎng)站地圖
滬ICP備07036474 2003-2017 版權(quán)所有 上海澤眾軟件科技有限公司 Shanghai ZeZhong Software Co.,Ltd