




已閱讀5頁,還剩6頁未讀, 繼續(xù)免費閱讀
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
軟件項目管理的思考項目管理論文 隨著計算機硬件水平的不斷提高,計算機軟件的規(guī)模和復(fù)雜度也隨之增加。軟件項目中一些問題也應(yīng)運而生:項目無法按期完成、項目合作方的工作難以協(xié)調(diào)、用戶需求經(jīng)常變動、工作質(zhì)量難以保證。為了避免愈來愈多的“項目黑洞”給企業(yè)帶來的損失,各個軟件企業(yè)都將軟件項目管理引入到開發(fā)活動中來,對開發(fā)實行有效的管理。 一、軟件項目引入項目管理的必要性 軟件項目即軟件開發(fā)項目,是一個用計算機程序和相關(guān)技術(shù)文檔把思想表達出來的過程。軟件項目所涉及到的內(nèi)容大多是無形的東西,既看不到質(zhì),也看不到量,從而使軟件項目的管理難度加大。 隨著信息技術(shù)的飛速發(fā)展,軟件產(chǎn)品的規(guī)模也越來越大,完全由個人完成一個軟件項目幾乎是不可能的,軟件項目的開發(fā)都是以項目組為單位完成的,這必然涉及到對軟件項目的管理。一個軟件項目的成敗,不在于其項目組的技術(shù)人員的技術(shù)水平,而在于是否采用合適的管理方式。好的管理方式不一定能使項目完全成功,但是一個不合適的管理模式肯定會導(dǎo)致軟件項目的失敗。 項目管理是指在一定資源如時間、資金、人力和設(shè)備等約束條件下,對一個有既定目標(biāo)(質(zhì)量、投資、進度)要求的任務(wù)進行計劃和控制的過程。項目管理以系統(tǒng)的觀點來對一個項目進行全程的控制,同樣也可以用此來完成對軟件項目的管理,而且由于軟件項目的特殊性,項目管理在應(yīng)用于軟件項目的管理時,也會有其獨特的一面。在項目管理應(yīng)用于軟件項目的管理方面,已經(jīng)有了不少成功的案例。 二、影響軟件項目管理的關(guān)鍵要素 (一)可靠的軟件需求 軟件需求是軟件項目的根本所在,需求不明確,工作就沒有方向,因此影響軟件項目的第一個因素就是項目要有一個可靠的需求。軟件需求應(yīng)當(dāng)是項目有關(guān)的人員一致同意的、清楚的、完整的、詳細的、可實現(xiàn)的和可測試的。 需求的確定,開發(fā)者應(yīng)該認真聽取用戶的意見,并進行記錄,反復(fù)和用戶溝通,不能想當(dāng)然地把自己的想象當(dāng)作用戶的需求。在確定用戶需求的時候,應(yīng)該盡可能從專業(yè)的角度發(fā)掘用戶的潛在需求,以達到最大限度地滿足用戶的目標(biāo),只有這樣才能可能開發(fā)有價值的軟件項目。一定要強調(diào)的是,在項目開始以后,應(yīng)該盡最大可能不更改需求,要與用戶進行很好地溝通,以確保開發(fā)工作能按照需求進行,也就是說,只有有了可靠的需求,項目開發(fā)才有基本保證。 (二)可行的項目計劃 凡事預(yù)則立,不預(yù)則廢。這里的預(yù)就是指計劃。明確了項目目標(biāo),還必須有一個切實可行的計劃。軟件項目計劃的目的是為完成軟件工程和管理軟件項目。制定合理的計劃,它包括以下步驟:估計軟件 產(chǎn)品規(guī)模及所需的資源,制定時間表,鑒別和評估軟件風(fēng)險和協(xié)商約定,而且要標(biāo)志出幾個階段性的里程碑,這是極為關(guān)鍵的一點。對于軟件企業(yè)來說,一個可行的計劃的重要性是不言而喻的。但是在一些單位,很多人都聽過這樣的一句話一“計劃趕不上變化”。這種變化對某些行業(yè)來說也許并不會產(chǎn)生太大的影響,但是對于軟件企業(yè)來說,卻會對軟件產(chǎn)品的保證帶來嚴重的負面影響。造成這種現(xiàn)象的原因很多,主要是因為對計劃的重視程度不夠,計劃過于籠統(tǒng)、粗糙,導(dǎo)致可執(zhí)行性差,再加上一些人為因素的影響,必然會產(chǎn)生一些不良的影響。因此,要想成功進行項目管理,就要對計劃高度重視,周密制定,嚴格執(zhí)行。只有嚴格進行計劃,才能使項目管理得以成功實施。 (三)規(guī)范的操作流程 軟件開發(fā)流程非常規(guī)范和系統(tǒng)化,其流程的可執(zhí)行性很高,并且能在實踐過程中不斷改進。流程是保證項目成功的一個關(guān)鍵因素。由優(yōu)秀的項目成員按照規(guī)范的操作流程進行項目開發(fā),才能最大限度地保證項目的成功。一個規(guī)范的流程可以保證不是很出色的人開發(fā)出來的,產(chǎn)品不至于太差,但不能保證做出精品,而一個不規(guī)范的流程很難做出好的產(chǎn)品。 通過流程可以實現(xiàn)一種規(guī)范化、流水線、工業(yè)化的軟件,從而最終實現(xiàn)成功的項目管理。對于軟件項目的每一個階段均要做出工作計劃并交有關(guān)部門監(jiān)督執(zhí)行,在階段結(jié)束之后,要對該階段的工作活動進行評價,并對后續(xù)階段的時間、人員、資金方面的需求做出估計。每個階段的工作成果需經(jīng)項目的技術(shù)管理部門審查合格后,方能開始下一階段的工作。 (四)有效的人員溝通 軟件項目的實施對人的依賴性比其他行業(yè)更為突出,它是一項知識性極強的工作,因此對人的管理相當(dāng)復(fù)雜,如何加強人員之間的有效溝通,是軟件項目成功的一個非常關(guān)鍵的因素。這里的溝通包括兩個方面:一個是軟件項目組開發(fā)人員與用戶的溝通;另一個是軟件項目組內(nèi)人員的溝通。只有對用戶的需求非常明確,軟件項目的實施才有一個堅實的基礎(chǔ)。對用戶的需求不明確,開發(fā)出的軟件根本沒法用,所以這樣的項目在一開始就是失敗的。組內(nèi)人員的溝通有助于在明確了用戶需求后,使得項目能按計劃進展,最后才有可能完成該軟件項目。 沒有最好的溝通方式,只有最有效的溝通。因此溝通因人因事而采用不同的溝通方式,才可以達到良好的效果。有時項目組需要和用戶溝通,面談是一種較為花時間的方式,而用戶方常常以忙來說明自己沒有時間,這時候可以采用電話溝通的方式,這樣馬上就可以得到答復(fù)。有時可以將項目進展情況用郵件的方式發(fā)給對方,使得軟件開發(fā)的工作也成為用戶的一種工作,只有這樣才能正確把握用戶的真正需求,才能使得開發(fā)出的軟件真正是滿足用戶需求的軟件。而在內(nèi)部的溝通形式就可以多樣,如定期的項目溝通會議、項目進展文檔等。 總之,只有加強溝通,才能使得軟件項目順利實施,溝通是成功軟件項目管理的很重要的因素。 (五)健全的項目文檔 軟件項目的文檔在整個生命周期中的地位和作用尤為重要,無論怎樣強調(diào)都不過分。文檔作為軟件產(chǎn)品的主要形式,集中體現(xiàn)了軟件人員的勞動成果,沒有文檔就稱不上軟件。但是實際情況是許多軟件開發(fā)人員從一開始就不注重文檔的寫作,尤其是當(dāng)軟件項目的工期又很緊張時,在沒有任何文檔或只有少量文檔的情況下就開始了具體的開發(fā)工作。有的寫了文檔,但是在開發(fā)過程中需求發(fā)生了變更,也沒有及時在文檔中體現(xiàn)出來,使得過一段時間后開發(fā)者對所開發(fā)的內(nèi)容也記得不清了,當(dāng)項目出現(xiàn)問題時,沒有有效的文檔可查,致使軟件項目延期或失敗。 軟件開發(fā)過程中各階段的文檔不健全,往往在項目接近尾聲時為了驗收才補寫文檔。最常見的是有系統(tǒng)分析與概要設(shè)計文檔,但是沒有詳細設(shè)計文檔,在程序開發(fā)過程中,開發(fā)人員往往最大限度地發(fā)揮著自己高超的編程技巧,以至于在后期維護時,因為沒有詳細的設(shè)計文檔,給項目的后期維護帶來困難。 編寫文檔的工作量是很大的。有時會占整個項目的40%,所以文檔的編寫會花費大量的時間和精力,但是有了好的文檔,會對后期的開發(fā)工作帶來很多的便利。健全的文檔管理是軟件項目成功實施的一個重要因素。 三、軟件項目管理的方法 軟件項目管理有階段化管理,量化管理和優(yōu)化管理三個層面。 ()階段化管理 階段化管理指的是從立項之初直到系統(tǒng)運行維護的全過程,將項目分成小的階段。比如,通常分為問題定義、可行性研究、需求分析、總體設(shè)計、詳細設(shè)計、編碼、狽彳試和維護等幾個階段。每個階段都有明確的目標(biāo)和成果驗收,以及必要的監(jiān)督回饋,這樣就能夠很好地減少項目負責(zé)人和客戶的分歧,增加項目風(fēng)險的可控性。在項目負責(zé)人提交給客戶的需求分析和初始報告里,就已經(jīng)把每個階段要完成的工作,可出的成果,甚至具體到有多少個界面,都能清晰的描述出來。這樣,在每個階段完成后,客戶和項目負責(zé)人都能夠比較清楚地了解項目的進展、完成情況,以及客戶對項目完成部分的滿意程度。同時,也方便進行項目組成員的績效評估。 (二)量化管理 把項目的方方面面盡可能地進行數(shù)量化,做到責(zé)任清楚。給客戶做軟件,時常碰到這種問題:某階段成果A(比如說,包括A1、A2、A3等不同部分)出來了,客戶看了以后,可能認為A1完全符合要求,A2根本就不對,A3雖然有毛病但改改還可用,等等。那么,這其中的問題出在哪里?責(zé)任該由誰負?責(zé)任又有多大呢?為此,必須把各種目標(biāo)、投入、成果等分類量化。比如,用明確的模塊或子系統(tǒng)表達客戶需求,精確計算A1、A2、A3每部分花費人工、物力、財力等等。把各種量化指標(biāo)存入數(shù)據(jù)庫,就能夠輕而易舉地解決上述的問題了。而且,每個階段都有清晰的量化管理,也非常有利于整個項目進程的推進。 (三)優(yōu)化管理 優(yōu)化管理就是分析項目每部分所蘊涵的知識、經(jīng)驗和教訓(xùn),更好地發(fā)揚項目進程中的經(jīng)驗,吸取教訓(xùn),在全公司傳播有益的知識。再如前面例子,通過分析發(fā)現(xiàn)A1部分的領(lǐng)頭人能力強,就可以讓他以后多帶幾個人,使他的知識和經(jīng)驗更好地發(fā)揮成效。A2、A3部分為什么不成功?是客戶的需求沒提清楚,是理解的錯誤,還是有設(shè)計的問題?通過這些分析后,有利于進一步優(yōu)化項目管理。 四、軟件項目管理過程中的幾個誤區(qū) (一)對需求的修改是必然的,具體細節(jié)可在以后的開發(fā)過程中填充 在軟件項目的需求分析階段,軟件開發(fā)人員和項目負責(zé)人通常認為開發(fā)方與客戶方在各種問題的基本輪廓上達成一致即可,具體細節(jié)可以在以后填充。理由是無論開始時多么細致,以后對需求的修改幾乎是必然的。但在實際操作中,由于需求階段對問題的描述不夠細致,導(dǎo)致后來預(yù)算超支或者時間進度達不到要求的情況并不少見。正確的做法應(yīng)該是:在項目需求分析階段,雙方必須全面地、盡可能細致地討論項目的應(yīng)用背景、功能要求、性能要求、操作界面要求、與其他軟件的接口要求,以及對項目進行評估的各種評價標(biāo)準。在需求分析結(jié)束以后,雙方還要建立可以直接聯(lián)系的渠道,以便盡早地對需求變動進行溝通。 (二)軟件項目的需求可以持續(xù)不斷地改變,并且可以很容易地得以實現(xiàn) 在需求分析階段,還有一個經(jīng)常出現(xiàn)的問題,就是認為軟件項目的需求可以持續(xù)不斷地改變,而且這些改變可以很容易地實現(xiàn)。在具體實際中由于種種原因,客戶方很難在需求分析階段就能全面而準確地描述所有問題。隨著開發(fā)進度的推進,往往會有一些需求的改變?,F(xiàn)代軟件工程理論也利用軟件的靈活性特點通過各種方式來適應(yīng)這種情況。實踐表明:隨著開發(fā)進度的推進,實現(xiàn)軟件需求更改所需要的代價呈指數(shù)形式增長。假定在需求分析階段實現(xiàn)需求更改要花費1倍的代價,那么,在系統(tǒng)設(shè)計和編碼階段,則需要花費1.56倍的代價;在系統(tǒng)測試階段需要花費1020倍的代價,在軟件版本發(fā)布以后,甚至要花費60100倍的代價。由此可見,在項目開展過程中,軟件需求的改變應(yīng)當(dāng)盡早提出。這樣才能做到既節(jié)省開銷,又較容易實現(xiàn)。 (三)在系統(tǒng)詳細設(shè)計階段,必須寫出所有程序的偽碼 在詳細設(shè)計階段,起初為了便于代碼的維護修改,要求文檔工作應(yīng)該做到寫出所有程序的偽碼。偽碼的最大作用是對程序的算法流程進行描述,便于人們深入了解程序的功能和實現(xiàn)過程。因此,偽碼在一定程度上的確有利于對程序代碼的維護和修改。但在實際工作中,這種做法卻很難實施。為了保證項目文檔和程序代碼的一一對應(yīng)關(guān)系,維護程序代碼的同時也需要對項目文檔進行維護。偽碼和程序代碼非常接近,對偽碼進行維護,就相當(dāng)于進行了加倍的程序代碼維護。為了趕進度,這種方法在實踐中往往會流于形式。所以,切合實際的方式應(yīng)該是對一般的程序文檔做到程序流程圖即可,對涉及了較復(fù)雜算法的程序才需要偽碼。 (四)編碼階段是整個軟件項目中最重要的階段 在軟件開發(fā)階段,項目負責(zé)人往往認為軟件程序主要由代碼組成,因此編碼階段是整個軟件項目中最重要的階段,應(yīng)該給予大量時間,集中主要資源。與編碼階段相比,需求分析、詳細設(shè)計以及測試時間較少,容易造成測試不完全及軟件上線后的先天不足,給今后的工作造成被動。如今,由于軟件的規(guī)模和復(fù)雜度都較以前有較大的增加,再加上半自動化軟件代碼開發(fā)平臺的出現(xiàn),現(xiàn)代軟件項目管理的中心已經(jīng)發(fā)生了轉(zhuǎn)移一不是著重編碼階段,而是著重系統(tǒng)總體/詳細設(shè)計階段。一般,系統(tǒng)總體/詳細設(shè)計階段應(yīng)占整個軟件開發(fā)時間的一半。這樣才能充分考慮系統(tǒng)將會出現(xiàn)的各種問題及其解決辦法,為以后的編碼、測試工作爭取主動。 (五)軟件所有的內(nèi)部測試工作應(yīng)由測試人員完成 在軟件測試階段,由于在項目人員配置中設(shè)置了專門的測試人員,人們通常認為軟件所有的內(nèi)部測試工作應(yīng)該由測試人員完成。但這種做法往往會造成測試不全面,軟件交付后經(jīng)常出現(xiàn)問題的情況。在實際工作中,由于使用“白盒法”對測試人員各方面素質(zhì)有著較高的要求,進行程序測試時,測試人員總是優(yōu)先使用“黑盒法狽j試沒有通過才會考慮對程序代碼進行“白盒法”測試。顯然,這種對“白盒法,有意無意的“逃避”,對軟件的可靠性和穩(wěn)定性構(gòu)成了威脅。要解決這個問題,一方面需要提高對測試人員的要求;另一方面也需要讓程序員完成部分的“白盒法”測試。 (六)軟件項目管理只是相關(guān)技術(shù)部門的事,與公司其他部門無關(guān) 在競爭日益激烈的今天,軟件項目規(guī)模大、復(fù)雜度高,而且時間要求緊迫。要想提高公司的軟件項目管理水平,就需要提高公司的整體參與意識,需要公司各個部門協(xié)同作戰(zhàn)。例如,需要會計部門協(xié)助進行項目預(yù)算、財務(wù)管理和費用控制;需要研究部門(技術(shù)委員會)指派專家協(xié)助進行各種風(fēng)險評估,提供技術(shù)指導(dǎo);需要后勤部門提供各種保障。 (七)開發(fā)進度滯后時,可以聘請更多的程序員加入到開發(fā)團隊中,通過增加人力資源追趕開發(fā)進度 如今,在注重團隊開發(fā)的時代,開發(fā)方應(yīng)該根據(jù)目前的軟件項目管理水平慎重考慮這個做法。如果新加入的程序員對目前軟件項目的應(yīng)用行業(yè)有一定了角解并且可以很快地適應(yīng)開發(fā)方的項目管理方式、軟件開發(fā)風(fēng)格
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 促進跨文化溝通的工作方案計劃
- 2025屆江蘇省南京市鼓樓實驗中學(xué)七下數(shù)學(xué)期末監(jiān)測模擬試題含解析
- 材料力學(xué)性能測試應(yīng)變影響重點基礎(chǔ)知識點
- 確保軟件質(zhì)量的測試題目試題及答案
- VB語言常用數(shù)據(jù)結(jié)構(gòu)試題及答案
- 公法與行政法的交匯試題及答案
- 云數(shù)控題庫及答案
- 數(shù)據(jù)安全和隱私試題及答案
- 一年級數(shù)學(xué)計算題專項練習(xí)1000題集錦
- 2025年自動化技術(shù)的應(yīng)用趨勢試題及答案
- 倉庫溫濕度記錄表
- 初中 初二 物理 流體壓強與流速的關(guān)系 教學(xué)設(shè)計
- 霍蘭德職業(yè)興趣測試題(卷)完整版
- 醫(yī)院檢驗科實驗室生物安全管理委員會及工作職責(zé)
- 福建省市政基礎(chǔ)設(shè)施工程竣工驗收報告(附件2)
- 市政工程監(jiān)理規(guī)劃范本(完整版)
- 艾里遜自動變速箱針腳圖PPT通用課件
- 交管12123駕照學(xué)法減分題庫及答案共155題(完整版)
- 5Why分析法經(jīng)典培訓(xùn)(43頁)
- 食品物性學(xué)-第二章 食品力學(xué)性質(zhì)和流變學(xué)基礎(chǔ)
- 斜屋面瓦安裝施工及方案
評論
0/150
提交評論