- 相關(guān)推薦
軟件項目管理探析
軟件項目管理是門科學(xué),也是一門藝術(shù);它是一個復(fù)雜的系統(tǒng),決定了軟件項目成敗的關(guān)鍵。軟件項目管理雖然沒有非常高深的理論,但要真正實施起來,也絕非易事。
1.引言
隨著信息技術(shù)的飛速發(fā)展,軟件產(chǎn)品的規(guī)模和復(fù)雜度隨之增加,傳統(tǒng)作坊式的開發(fā)方式逐步被以項目組為單位的協(xié)作式開發(fā)方式所取代,這就必然涉及到對軟件項目的管理。實踐表明,一個軟件項目的成敗,不在于其項目組的技術(shù)人員的技術(shù)水平,而在于是否采用了合適的管理。好的管理方式不一定能使項目完全成功,但是一個不合適的管理模式往往會導(dǎo)致軟件項目的失敗。軟件項目管理目前還沒有引起人們的足夠重視,究其原因:首先是人的傳統(tǒng)觀念,軟件項目管理不為人們所重視,從項目主師到軟件設(shè)計開發(fā)人員都認為軟件項目管理可有可無;另一方面軟件工程是一個新興的學(xué)科領(lǐng)域,軟件項目管理的問題也是剛被提出的,還沒有多少經(jīng)驗可以借鑒或引用。同時,由于軟件產(chǎn)品的特殊性,使軟件項目管理涉及到很多學(xué)科。因此,對軟件工程管理,人們還缺乏經(jīng)驗和技術(shù)。但事實證明,由管理失誤造成的后果要比程序錯誤造成的后果更為嚴重。根據(jù)多年來型號產(chǎn)品的研制過程可以發(fā)現(xiàn),很少有軟件項目的實施進程能準確地符合預(yù)定目標(biāo)、進度和預(yù)算的,這也就足以說明軟件項目管理的重要性。
2.軟件項目管理的概念
軟件項目管理是指在軟件項目活動中運用專門的知識、技能、工具和方法,使項目能夠按照預(yù)定的成本、進度、質(zhì)量順利完成,通過計劃、組織、控制等一系列活動,合理地配置和使用各種資源,對成本、人員、進度、質(zhì)量、風(fēng)險等進行分析和管理,以達到既定目標(biāo)的過程。這一定義不僅僅是強調(diào)使用專門的知識和技能,還強調(diào)項目管理中各參與人的重要性。軟件項目管理的根本目的是對軟件開發(fā)的各個階段進行管理,增強對軟件開發(fā)的控制能力,提高軟件開發(fā)質(zhì)量。項目管理可以讓一個項目獲得高額的盈利也可以讓一個項目損失慘重,而編碼的影響力則相對小一些。軟件項目管理的意義不僅僅如此,進行軟件項目管理有利于將開發(fā)人員的個人開發(fā)能力轉(zhuǎn)化成企業(yè)的開發(fā)能力,企業(yè)的軟件開發(fā)能力越高,表明這個企業(yè)的軟件生產(chǎn)越趨向于成熟,企業(yè)越能夠穩(wěn)定發(fā)展(即減小開發(fā)風(fēng)險)。
3.軟件項目管理的內(nèi)容
軟件項目管理是一種科學(xué)的管理手段,它是為了使軟件項目能夠按照預(yù)定的成本、進度、質(zhì)量順利完成,而對成本、人員、進度、質(zhì)量、風(fēng)險等進行分析和管理的活動。管理的范圍涉及人員的組織與管理、軟件度量、項目計劃、風(fēng)險管理、質(zhì)量保證、過程能力配置管理等幾個方面,這幾個方面都是貫穿、交織于整個軟件開發(fā)過程中的。從軟件工程的角度講,軟件開發(fā)主要分為六個階段:需求分析階段、概要設(shè)計階段、詳細設(shè)計階段、編碼階段、測試階段、安裝及維護階段。不論是作坊式開發(fā),還是團隊協(xié)作式開發(fā),這六個階段都是不可缺少的。根據(jù)項目管理知識體系中的定義,軟件項目管理可以分為以下幾個方面:
(1)集成管理:項目計劃制定、項目計劃實施等。
(2)范圍管理:范圍計劃編制、范圍定義核實、任務(wù)協(xié)調(diào)等。
(3)時間管理:項目任務(wù)分解、進度計劃編制、任務(wù)持續(xù)時間估算、進度計劃控制等。
(4)成本管理:資源計劃編制、成本估算、成本預(yù)算和控制等。
(5)質(zhì)量管理:項目質(zhì)量計劃編制、軟件質(zhì)量保證、軟件質(zhì)量控制、軟件過程改進等。
(6)人力資源管理:組織的計劃編制、人員職責(zé)的分配、團隊合作發(fā)展等。
(7)溝通管理:建立溝通渠道、信息交換管理等。
(8)風(fēng)險管理:項目風(fēng)險識別、項目風(fēng)險分析、項目風(fēng)險優(yōu)先分析、項目風(fēng)險控制等。
(9)采購管理:采購計劃編制、合同管理、合同收尾等。
在軟件項目管理中,有幾個關(guān)鍵因素,它影響著軟件項目的成敗,下面就這幾個關(guān)鍵因素進行探討。
4.軟件項目管理的關(guān)鍵因素
(1)合理配置人力資源
眾所周知,人是決定組織和項目成敗的關(guān)鍵,也是影響軟件開發(fā)質(zhì)量的最關(guān)鍵的因素,因此軟件項目管理應(yīng)該以人為本,有效管理人力資源,合理配置人力資源。應(yīng)該根據(jù)項目組成員的組成結(jié)構(gòu)情況,合理搭配,充分發(fā)揮每位成員的技術(shù)專長,做到人盡其能;組織組建好項目團隊,培養(yǎng)團結(jié)一致的團隊精神,規(guī)范良好的職業(yè)道德;建立健全完備的獎懲制度,落實權(quán)利責(zé)任制度,做到權(quán)責(zé)明確,并在項目進程中能及時化解各種人事沖突,營造良好的團隊協(xié)作環(huán)境。
(2)順暢有效的溝通管理
軟件項目管理是一項知識性極強的工作,對人的依賴性比其它行業(yè)更為突出,因此加強人員之間的有效溝通,實現(xiàn)順暢有效的溝通管理是軟件項目成功的另一個關(guān)鍵因素。溝通管理是一個收集、存儲、配置和發(fā)布項目生命周期內(nèi)所形成的各種信息的過程,它把成功所必須的因素——人、想法和信息之間提供了一個關(guān)鍵連接。對于項目來說,要科學(xué)地組織、指揮、協(xié)調(diào)和控制項目的實施過程,就必須進行信息溝通。這里的溝通包括兩個方面,一個方面是軟件項目組開發(fā)人員與用戶的溝通,另一方面則是軟件項目組內(nèi)人員的溝通。前者是做好軟件需求分析所必須的;而后者則有助于組內(nèi)成員的彼此交流,減少理解錯位,實現(xiàn)信息暢通,改善人際關(guān)系,化解可能的沖突,加快項目的進度。溝通的方式是多樣的,可以采用常用的項目組例會方式,可以通過面談彼此交換意見;也可以利用方便快捷的通訊工具如電話、EMAIL、傳真等方式加強信息的溝通;總之,順暢有效的信息溝通,可以取得彼此的理解,剔除項目進度中的“BUG”,有利于項目按計劃順利開展。
(3)正確可靠的軟件需求
軟件需求是軟件項目的根本所在,需求不明確,軟件項目開發(fā)范圍不確定,項目開發(fā)就會失去方向,容易造成開發(fā)的產(chǎn)品和用戶實際的需求“南轅北轍”,最終導(dǎo)致項目的失敗。一個可靠的需求,也是項目管理的關(guān)鍵因素之一。軟件需求應(yīng)當(dāng)是項目有關(guān)的人員一致同意的、清楚的、完整的、詳細的、可實現(xiàn)的和可測試的需求,開發(fā)人員應(yīng)該反復(fù)和用戶進行溝通,認真聽取用戶的意見,及時歸檔記錄,并適時發(fā)掘用戶的潛在需求,最大限度地滿足用戶的目標(biāo),開發(fā)出用戶最理想的產(chǎn)品。最后應(yīng)拿出開發(fā)人員和用戶一致認可的軟件需求說明書,并加以確認。在項目開始以后,應(yīng)該盡最大可能不更改需求,要與用戶進行很好地溝通,以確保開發(fā)過程能按照需求進行,減少需求變更帶來的風(fēng)險!因此,正確可靠的軟件需求也是項目成功的重要保障。 (4)周密可行的項目計劃
“凡事預(yù)則立,不預(yù)則廢。”軟件項目實施過程中,還必須有一個周密可行的項目計劃。軟件項目計劃的目的是為完成軟件工程和管理軟件項目而制定的合理的計劃,它包括以下步驟:估計軟件產(chǎn)品規(guī)模及所需的資源,制定軟件開發(fā)計劃、軟件測試計劃和軟件質(zhì)量保證計劃,評估軟件風(fēng)險和協(xié)商約定風(fēng)險解決辦法,而且要標(biāo)志出幾個階段性的里程碑,這些都是極為關(guān)鍵的。因此,要想成功進行項目管理,就要對計劃高度重視、周密制定、嚴格執(zhí)行,只有嚴格執(zhí)行計劃才能使項目管理得以成功實施。
(5)健全完備的文檔資料
軟件項目的文檔作為軟件產(chǎn)品的主要形式之一,集中體現(xiàn)了軟件人員的勞動成果,軟件研制是腦力勞動,具有不可見性,為了實現(xiàn)對軟件研制過程的管理,在軟件研制過程的每個階段,都應(yīng)按規(guī)定的格式編寫出完整準確的文檔,文檔是軟件中不可缺少的組成部分,在整個軟件生存周期中均占據(jù)重要位置。軟件研制過程中文檔可以作為開發(fā)人員在一定階段內(nèi)的工作成果和結(jié)束標(biāo)志;還可以向管理人員提供軟件開發(fā)過程中的進展和情況,把軟件開發(fā)過程中的一些“不可見的”事物轉(zhuǎn)換成“可見的”文字資料。此外,健全完備的文檔資料在項目接近尾聲時也便于軟件的測試與后期的維護工作,在項目結(jié)尾時,健全完備的文檔資料也為人員的培訓(xùn)和項目的再開發(fā)發(fā)揮重要作用。因此健全完備的文檔資料是軟件項目成功的重要因素,在項目管理過程中應(yīng)該高度重視。
(6)嚴格的風(fēng)險管理
軟件項目的管理是存在風(fēng)險的,我們應(yīng)該提前重視風(fēng)險,并有所防范,最大限度減少風(fēng)險的發(fā)生,實行嚴格的風(fēng)險管理是有效的手段,建立風(fēng)險項目檢查表是進行風(fēng)險識別的有效方法。主要涉及到產(chǎn)品規(guī)模風(fēng)險檢查、過程風(fēng)險檢查、技術(shù)風(fēng)險檢查、開發(fā)環(huán)境風(fēng)險檢查等。
5.結(jié)論
軟件項目管理是門科學(xué),也是一門藝術(shù);它是一個復(fù)雜的系統(tǒng),決定了軟件項目成敗的關(guān)鍵。軟件項目管理雖然沒有非常高深的理論,但要真正實施起來,也絕非易事。因此在軟件開發(fā)過程中,我們應(yīng)該理論聯(lián)系實踐,積極從實踐中積累經(jīng)驗,注意項目管理中的關(guān)鍵因素,實施有效的管理,使軟件項目獲得成功。
【軟件項目管理探析】相關(guān)文章:
企業(yè)項目成本管理探析09-15
軟件測試與項目管理09-17
關(guān)于軟件項目管理的建議08-18
軟件項目設(shè)計過程的管理10-09
軟件項目的溝通管理08-11
論軟件項目質(zhì)量管理09-24
軟件項目的質(zhì)量管理05-23
怎樣控制軟件項目管理的成本07-13
軟件項目風(fēng)險管理的過程09-23
軟件項目溝通管理的重要性07-12