隨著計(jì)算機(jī)硬件水平的不斷提高,計(jì)算機(jī)軟件的規(guī)模和復(fù)雜度也隨之增加。計(jì)算機(jī)軟件開(kāi)發(fā)從“個(gè)人英雄”時(shí)代向團(tuán)隊(duì)時(shí)代邁進(jìn),計(jì)算機(jī)軟件項(xiàng)目的管理也從“作坊式”管理向“軟件工廠式”管理邁進(jìn)。這就要求軟件開(kāi)發(fā)人員特別是軟件項(xiàng)目管理人員更深一步地理解和掌握現(xiàn)代軟件工程的理論方法,完成思想觀念上的轉(zhuǎn)變。筆者在此分析了10個(gè)在現(xiàn)代項(xiàng)目管理中思想觀念上容易陷入的誤區(qū),希望能夠拋磚引玉,引發(fā)大家更多的思索和討論。
誤區(qū)1:在項(xiàng)目的需求分析階段,開(kāi)發(fā)方與客戶方在各種的問(wèn)題的基本輪廓上達(dá)成一致即可,具體細(xì)節(jié)可以在以后填充。因?yàn)闊o(wú)論開(kāi)始時(shí)有多么細(xì)致, 以后對(duì)需求的修改幾乎是必然的。分析:這是一種非常危險(xiǎn)的思想。實(shí)際上許多軟件項(xiàng)目失敗的最主要的原因就是需求階段對(duì)問(wèn)題的描述不夠細(xì)致,導(dǎo)致后來(lái)預(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)問(wèn)題進(jìn)行溝通。
誤區(qū)2:軟件項(xiàng)目的需求可以持續(xù)不斷的改變,而且這些改變可很容易地被實(shí)現(xiàn)。分析:的確,在具體實(shí)際中由于種種原因客戶方很難在需求分析階段全面而準(zhǔn)確地描述所有問(wèn)題。隨著開(kāi)發(fā)進(jìn)度的推進(jìn),往往會(huì)有一些需求的 改變。而現(xiàn)代軟件工程理論也利用軟件的靈活性特點(diǎn)通過(guò)各種方式來(lái)適應(yīng)這種情況。不過(guò),這并不表明“軟件項(xiàng)目的需求可以持續(xù)不斷的改變 ,而且這些改變可很容易地被實(shí)現(xiàn)”。實(shí)踐表明:隨著開(kāi)發(fā)進(jìn)度的推進(jìn),實(shí)現(xiàn)軟件需求更改所需要的代價(jià)呈指數(shù)形式增長(zhǎng)。假定在需求分析階 段實(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à)。由此可見(jiàn),在項(xiàng)目開(kāi)展過(guò)程中,軟件需求的改變應(yīng)當(dāng)盡量早地提出。這樣才可能花費(fèi)少, 容易被實(shí)現(xiàn)。
誤區(qū)3:軟件程序主要由代碼組成,因此編碼階段是整個(gè)軟件項(xiàng)目的最重要的階段,應(yīng)該給與大量的時(shí)間,并且集中主要的資源。分析:與以前相比,由于軟件的規(guī)模和復(fù)雜度的增加,以及半自動(dòng)化軟件代碼開(kāi)發(fā)平臺(tái)的出現(xiàn),現(xiàn)代軟件項(xiàng)目管理的中心發(fā)生了轉(zhuǎn)移——不是 著重編碼階段,而是著重系統(tǒng)總體/詳細(xì)設(shè)計(jì)階段。一般說(shuō)來(lái),在現(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)過(guò)程??梢?jià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è)試;如果
項(xiàng)目經(jīng)理勝任力免費(fèi)測(cè)評(píng)PMQ上線啦!快來(lái)測(cè)測(cè)你排多少名吧~
http://m.opto-elec.com.cn/pmqhd/index.html