軟件項目管理的論文
軟件項目開發(fā)是一項系統(tǒng)而復(fù)雜的工作 它需要一個團(tuán)隊互相配合、分工協(xié)作。軟件項目管理系統(tǒng)可以規(guī)范一個軟件開發(fā)團(tuán)隊的日常工作,下面是關(guān)于軟件項目管理論文,歡迎借鑒!
隨著信息技術(shù)的飛速發(fā)展,軟件產(chǎn)品的規(guī)模也越來越龐大,各軟件企業(yè)都在積極將軟件項目管理引入開發(fā)活動中,對開發(fā)實行有效的管理。但國內(nèi)軟件企業(yè)對于軟件項目的認(rèn)知,在一定程度上盲目多于理性、理論多于實踐。鑒于上述問題,本文分析了基于項目管理的軟件開發(fā)過程需要注意的幾個問題。
1需求開發(fā)要注意的問題
需求開發(fā)作為軟件項目啟動的初始工作有兩個目標(biāo):發(fā)現(xiàn)真正的需求并以適合于用戶和開發(fā)人員的方式加以表述。
發(fā)現(xiàn)需求即需求獲取,“真正的需求”是指在實現(xiàn)時可以給用戶帶來預(yù)期價值的需求“;以適合于用戶和開發(fā)人員的方式”即需求定義,主要是指對需求的最后描述必須讓用戶和開發(fā)人員無歧義的理解。在需求開發(fā)過程,軟件開發(fā)人員要注意如下的兩個問題:
1.1 不要忽視非功能需求
通常,需求分析人員更多的關(guān)注功能需求,而忽視非功能需求,從而導(dǎo)致 NV[2]( 即“下一版本”) 陷阱。陷入 NV 陷阱后,產(chǎn)品的質(zhì)量會大打折扣,甚至“拿不出手”。另外,不完整的需求也容易導(dǎo)致架構(gòu)的錯誤設(shè)計,如:1.1.1 XX 查詢的響應(yīng)時間必須小于 1 秒;1.1.2 并發(fā)用戶的數(shù)量每小時超過 10000個用戶對于此類性能方面的非功能需求,直接影響到架構(gòu)中持久層設(shè)計所采用的技術(shù),而且這種架構(gòu)上的缺陷實際上很難在“下一版本”輕易的改變。為了防止陷入 NV 陷阱,非功能性需求從一開始就要被提出來,和功能性需求一樣受到應(yīng)有的重視。如果這些非功能性需求是確實需要的,就應(yīng)該被寫入需求規(guī)格書,并在產(chǎn)品開發(fā)過程中接受實現(xiàn)狀況的檢查。
1.2 正確面對需求變更
在大多數(shù)軟件項目中最不穩(wěn)定的部分就是需求。在項目需求分析階段,必需全面的、應(yīng)盡可能細(xì)致地討論項目的應(yīng)用背景、功能要求、性能要求、操作界面要求、與其它軟件的接口要求,以及對項目進(jìn)行評估的各種評價標(biāo)準(zhǔn)。但由于各方面的原因用戶需求始終處在一個持續(xù)變化的狀態(tài)中,這是項目開發(fā)人員必須的接收的事實。那么對于這樣的現(xiàn)狀,軟件開發(fā)者該怎么辦呢? 其一是把需求變化控制在最小的范疇,在需求變化發(fā)生之前盡量減少需求變化; 其二是在設(shè)計軟件體系結(jié)構(gòu)時,不僅應(yīng)該想到如何滿足現(xiàn)在已經(jīng)提出的用戶需求,同時也應(yīng)適當(dāng)?shù)乜紤]到需求的變更,想辦法應(yīng)對需求變化,例如:采用面向?qū)ο蟮乃枷搿J澜缍际怯蓪ο蠼M成的,而對象都是持久的。面向?qū)ο蟮拈_發(fā)方法的精髓就是從企業(yè)的不穩(wěn)定需求中分析出企業(yè)的穩(wěn)定對象,以企業(yè)對象為基礎(chǔ)來組織需求、構(gòu)架系統(tǒng)。這樣得出的系統(tǒng)就會比傳統(tǒng)的系統(tǒng)要穩(wěn)定得多,因為企業(yè)的模式一旦變化,只需要將穩(wěn)定的企業(yè)對象重新組織就行了。這種開發(fā)的方法就被稱為 OOAD(Ob-ject Orient Analysis & Design 面向?qū)ο蟮?分析和設(shè)計)。
2項目管理人員需要克服的障礙
項目管理是一項控制性的工作,項目管理者的工作重點就是控制和協(xié)調(diào)。項目管理者首先要確保每個成員完全理解任務(wù),要把任務(wù)的目標(biāo)解釋清楚,并強(qiáng)調(diào)他對最終期限及評估成果的期望。
在軟件的整個開發(fā)過程中項目管理者需要有效的監(jiān)控工作進(jìn)展,并提供給每個成員必要的協(xié)助,以確保整個開發(fā)團(tuán)隊朝著目標(biāo)前進(jìn),并且在項目迭代開發(fā)過程中的設(shè)定可觀測的里程碑。作為團(tuán)隊開發(fā)的項目管理者,要讓整個開發(fā)團(tuán)隊有效地運轉(zhuǎn),發(fā)揮團(tuán)隊每位成員的最大能量,必須要克服下列障礙:
2.1障礙一:不信任員工
最簡單的例子是,在重量級(Heavyweight)方法[3](制定了大量的規(guī)則的 RUP 方法)中,基本假設(shè)是對人的不信任,但不信任就會產(chǎn)生很多的問題,比如士氣不高,計劃趕不上變化,創(chuàng)新能力低下,跳槽率升高等等。輕量級( Lightweight) (像XP 這樣只制定少量的規(guī)則來規(guī)范行為的方法)方法的出發(fā)點是相互信任,做到這一點是很難的,但是一旦做到了,那么這個團(tuán)隊就能高效運作。
2.2 障礙二:對任務(wù)的控制走向極端
很多項目管理者害怕失去對任務(wù)的控制。如果能夠保持溝通與協(xié)調(diào)的順暢,采用類似“關(guān)鍵會議制度”等手段,強(qiáng)化信息流通的效率與效果,任務(wù)在完成的過程中,失控的可能性其實是很小的。同時,在安排任務(wù)的時候,項目管理者應(yīng)該盡可能地把問題、目標(biāo)、資源等,向各成員交代清楚,也有助于避免任務(wù)失控。
2.3 障礙三: 管理意識薄弱
在軟件企業(yè)中,項目經(jīng)理大多是技術(shù)骨干。因此有些項目管理者憑著自己的技術(shù)實力寧可自己做得很辛苦,也不愿意把工作內(nèi)容交給團(tuán)隊成員。為什么呢? 他們認(rèn)為,教會部下怎么做,得花上好幾個小時; 自己做的話,不到半小時就做好了,花那么多時間教他們,還不如自己做更快些。問題是: 難道項目管理者就這樣一直把所有的事情都自己做嗎? 由于團(tuán)隊成員的經(jīng)驗、技能等方面的差異,盡管項目管理者自己親自動手可能做得比其他成員好,但是如果項目管理者能夠教會團(tuán)隊成員,就會發(fā)現(xiàn): 其他成員也可以做得一樣好,甚至更好。也許今天項目管理者要耽誤幾個小時來教其他成員干活,但以后他們會為項目管理者節(jié)省幾十、幾百個小時,讓項目管理者有時間對關(guān)鍵業(yè)務(wù)作更多的更深入的思考,以保證軟件開發(fā)的成功。
3 軟件模塊的再認(rèn)識
每一個軟件模塊都具有三項職責(zé): 第一個職責(zé)是它運行起來所完成的功能,這也是該模塊存在的原因; 第二個職責(zé)是它要應(yīng)對變化,幾乎所有的模塊在它的生命周期內(nèi)都要變化,開發(fā)者應(yīng)保證這種改變盡可能的簡單。一個難以改變的模塊是拙劣的,即使能夠工作,也需要對它進(jìn)行修正; 第三個職責(zé)是能和閱讀它的人很好的溝通,對該模塊不熟悉的開發(fā)人員也能比較容易的閱讀并理解它。一個無法進(jìn)行溝通的模塊也是拙劣的,同樣也需要對它進(jìn)行修正。
當(dāng)開發(fā)人員最初編寫一個模塊時,代碼對于他們來說看起來也許是清晰的。這是由于他們專注于代碼的編寫,對代碼非常熟悉。
經(jīng)過一段時間后,開發(fā)者回過頭來在去看那個模塊,就知道自己怎么會編寫如此糟糕的代碼。為了防止這種情況的發(fā)生,開發(fā)人員必須站在閱讀者的位置,對代碼進(jìn)行必要的重構(gòu),這樣其他的閱讀者就能夠理解代碼,同時所有的代碼也需要團(tuán)隊中其他成員的評審。
4 重視經(jīng)驗的總結(jié)
在軟件開發(fā)的過程中,對每一問題的解決不可能一開始就有一個好的方法,在解決一系列類似的問題后,開發(fā)人員再回過頭來重新審視和評價自己解決問題的方法,在大多數(shù)情況下,開發(fā)人員都可以對這些解決方法加以提煉,對具有共性的解決方法進(jìn)一步抽象,尋求更通用的解決方式,并將該設(shè)計經(jīng)驗提交到團(tuán)隊資源庫組織成項目事件庫。項目盡管有其獨特性,但借鑒從同類型的項目之間的經(jīng)驗教訓(xùn)提煉出來的知識是很十分有價值的。
在項目的收尾階段,不僅是給項目的利益相關(guān)者一個正式交代,還有一個任務(wù)就是項目整個過程的經(jīng)驗教訓(xùn)予以提煉形成企業(yè)的知識財富[4]。企業(yè)的知識往往是隱含、散落在員工群體中,因此需要將員工的隱性知識轉(zhuǎn)化成公司的顯性知識。
結(jié)束語
項目管理雖然沒有非常高深的理論,但要真正實施起來,也絕非易事。對于軟件開發(fā)企業(yè)而言,這不是一個小的改變,而是一種變革,企業(yè)需要為此付出艱苦的努力,從而在實踐中鍛煉提高,解決各種各樣的問題,使項目管理工作越做越好。
參考文獻(xiàn):
[1]鄭人杰等.實用軟件工程[M].北京:清華大學(xué)出版社,1997.4.
[2]新產(chǎn)品開發(fā)項目中的需求問題[EB/OL].
[3]Roger S.Pressman;黃柏素,梅宏譯.軟件工程-實踐者的研究方法 [M]. 北京: 機(jī)械工業(yè)出版社,1999,10.
[4]丁榮貴等.軟件企業(yè)項目管的有效性研究[J].經(jīng)濟(jì)與管理研究,2005,4.
【軟件項目管理的論文】相關(guān)文章:
軟件項目合作開發(fā)合同09-21
關(guān)于軟件項目的策劃書03-01
軟件工程論文的開題報告07-31
供電企業(yè)生產(chǎn)信息管理系統(tǒng)軟件的開發(fā)相關(guān)問題論文02-17
軟件工程論文開題報告01-25
公司項目管理細(xì)則11-20
軟件項目可行性研究報告12-01
游戲軟件項目可行性分析報告04-29
項目管理公司管理制度05-07
管理軟件系統(tǒng)買賣合同04-24