軟件項(xiàng)目管理和計(jì)劃_第1頁(yè)
軟件項(xiàng)目管理和計(jì)劃_第2頁(yè)
軟件項(xiàng)目管理和計(jì)劃_第3頁(yè)
軟件項(xiàng)目管理和計(jì)劃_第4頁(yè)
軟件項(xiàng)目管理和計(jì)劃_第5頁(yè)
已閱讀5頁(yè),還剩53頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第19章軟件項(xiàng)目管理與計(jì)劃軟件工程中程序出錯(cuò)、成本超支和沒(méi)完成要求等都可以歸結(jié)到軟件項(xiàng)目管理太弱。因此,工程中要進(jìn)行管理與計(jì)劃本章內(nèi)容:

19.1軟件項(xiàng)目管理概述19.2項(xiàng)目管理過(guò)程19.3軟件開(kāi)發(fā)成本估算19.4風(fēng)險(xiǎn)分析19.5進(jìn)度安排19.6軟件項(xiàng)目的組織2024/11/10119.1軟件項(xiàng)目管理概述19.1.1軟件管理的對(duì)象在軟件項(xiàng)目管理中,重要的是人、問(wèn)題和過(guò)程三者。其中人是最重要的管理對(duì)象。組成一個(gè)軟件工程的開(kāi)發(fā)項(xiàng)目的人員有以下幾類:(1)高級(jí)管理者:負(fù)責(zé)確定軟件的問(wèn)題。(2)項(xiàng)目技術(shù)管理者:管理軟件開(kāi)發(fā)人員。(3)開(kāi)發(fā)人員:軟件開(kāi)發(fā)的專門的技術(shù)人員。(4)客戶:負(fù)責(zé)說(shuō)明軟件需求的人員。(5)最終用戶:最終使用軟件的人員。2024/11/10219.1.2軟件開(kāi)發(fā)中的資源軟件項(xiàng)目計(jì)劃的第二個(gè)任務(wù)是對(duì)完成該軟件項(xiàng)目所需的資源進(jìn)行估算。圖19-1軟件開(kāi)發(fā)所需的資源2024/11/1031.人力資源是最重要的資源在安排開(kāi)發(fā)活動(dòng)時(shí)必須考慮人員的技術(shù)水平、專業(yè)、人數(shù)以及在開(kāi)發(fā)過(guò)程各階段中對(duì)各種人員的需要。對(duì)一些規(guī)模較大的項(xiàng)目,在整個(gè)軟件生存期中,各種人員的參與情況是不一樣的。如圖19-2所示2024/11/104圖19-2管理人員與技術(shù)人員的參與情況2024/11/1052.硬件/軟件資源硬件是作為軟件開(kāi)發(fā)項(xiàng)目的一種工具而投入的。在軟件項(xiàng)目計(jì)劃期間,考慮三種硬件資源:(1)宿主機(jī)(Hostmachine)——軟件開(kāi)發(fā)時(shí)使用的計(jì)算機(jī)及外圍設(shè)備。(2)目標(biāo)機(jī)(Targetmachine)——運(yùn)行已開(kāi)發(fā)成功軟件的計(jì)算機(jī)及外圍設(shè)備。(3)其他硬件設(shè)備——專用軟件開(kāi)發(fā)時(shí)需要的特殊硬件資源。2024/11/106宿主機(jī)連同必要的軟件工具構(gòu)成軟件開(kāi)發(fā)系統(tǒng)。軟件資源包括用于開(kāi)發(fā)的運(yùn)行平臺(tái)、各種CASE工具可以幫助分析和設(shè)計(jì)軟件、開(kāi)發(fā)程序所有的編程語(yǔ)言等。2024/11/1073.可復(fù)用構(gòu)件資源為了促成軟件的復(fù)用,以提高軟件的生產(chǎn)率和軟件產(chǎn)品的質(zhì)量,可建立可復(fù)用的軟件部件庫(kù)。根據(jù)需要,對(duì)軟件部件稍做加工,就可以構(gòu)成一些大的軟件包。這要求這些軟件部件應(yīng)加以編目,以利于引用,并進(jìn)行標(biāo)準(zhǔn)化和確認(rèn),以利于應(yīng)用和集成。遺憾的是,在計(jì)劃階段,人們往往忽視軟件資源。直到軟件工程過(guò)程的開(kāi)發(fā)階段,軟件資源成為一個(gè)重大問(wèn)題時(shí)才引起人們的重視。最好是盡早確定軟件資源的需求,這樣可以對(duì)各種候選方案進(jìn)行技術(shù)評(píng)價(jià),并及時(shí)地獲取這些軟件。2024/11/10819.1.3分解技術(shù)當(dāng)一個(gè)待解決的問(wèn)題過(guò)于復(fù)雜時(shí),可以把它進(jìn)一步分解,直到分解后的子問(wèn)題變得容易解決為止。然后,分別解決每一個(gè)子問(wèn)題,并將這些子問(wèn)題的解答綜合起來(lái),從而得到原問(wèn)題的解答。2024/11/10919.2項(xiàng)目管理過(guò)程軟件項(xiàng)目管理的對(duì)象是軟件工程項(xiàng)目。它所涉及的范圍覆蓋了整個(gè)軟件工程過(guò)程。1.啟動(dòng)一個(gè)軟件項(xiàng)目2.成本估算3.風(fēng)險(xiǎn)分析4.進(jìn)度安排5.追蹤和控制2024/11/101019.3軟件開(kāi)發(fā)成本估算

19.3.1軟件開(kāi)發(fā)成本估算方法1.自頂向下的估算方法這種方法的想法是從項(xiàng)目的整體出發(fā),進(jìn)行類推。表19-1軟件開(kāi)發(fā)各階段工作量的分配

軟件庫(kù)存情況更新開(kāi)發(fā)者W.Ward日期2/8/82階段項(xiàng)目任務(wù)工作量分布(1/53)小計(jì)(1/53)計(jì)劃和需求劃內(nèi)軟件需求定義56開(kāi)發(fā)計(jì)劃1產(chǎn)品設(shè)計(jì)產(chǎn)品設(shè)計(jì)610初步的用戶手冊(cè)3測(cè)試計(jì)劃1詳細(xì)設(shè)計(jì)詳細(xì)PDL描述412數(shù)據(jù)定義4測(cè)試數(shù)據(jù)及過(guò)程設(shè)計(jì)2正式的用戶手冊(cè)2編碼與單元測(cè)試編碼616單元測(cè)試結(jié)果10組裝與聯(lián)合測(cè)試按實(shí)際情況編寫(xiě)文檔49組裝與測(cè)試5總計(jì)532024/11/10112.自底向上的估算法這種方法的想法是把待開(kāi)發(fā)的軟件細(xì)分,直到每一個(gè)子任務(wù)都已經(jīng)明確所需要的開(kāi)發(fā)工作量,然后把它們加起來(lái),得到軟件開(kāi)發(fā)的總工作量。這是一種常見(jiàn)的估算方法。它的優(yōu)點(diǎn)是估算各個(gè)部分的準(zhǔn)確性高。缺點(diǎn)是缺少各項(xiàng)子任務(wù)之間相互聯(lián)系所需要的工作量,還缺少許多與軟件開(kāi)發(fā)有關(guān)的系統(tǒng)級(jí)工作量(配置管理、質(zhì)量管理、項(xiàng)目管理)。所以往往估算值偏低,必須用其他方法進(jìn)行檢驗(yàn)和校正。2024/11/10123.差別估算法這種方法綜合了上述兩種方法的優(yōu)點(diǎn),其想法是把待開(kāi)發(fā)的軟件項(xiàng)目與過(guò)去已完成的軟件項(xiàng)目進(jìn)行類比,從其開(kāi)發(fā)的各個(gè)子任務(wù)中區(qū)分出類似的部分和不同的部分。類似的部分按實(shí)際量進(jìn)行計(jì)算,不同的部分則采用相應(yīng)的方法進(jìn)行估算。這種方法的優(yōu)點(diǎn)是可以提高估算的準(zhǔn)確度,缺點(diǎn)是不容易明確“類似”的界限。2024/11/101319.3.2軟件開(kāi)發(fā)成本估算的經(jīng)驗(yàn)?zāi)P?.IBM模型1977年,Walston(沃爾斯頓)和Felix(菲力克斯)總結(jié)了IBM聯(lián)合系統(tǒng)分部(FSD)負(fù)責(zé)的60個(gè)項(xiàng)目的數(shù)據(jù)。其中各項(xiàng)目的源代碼行數(shù)從400行到467000行,開(kāi)發(fā)工作量從12PM到11758PM,共使用29種不同語(yǔ)言和66種計(jì)算機(jī)。利用最小二乘法擬合,得到如下估算公式:E=5.2×L0.19D=4.1×L0.36=17.47×E0.35S=0.54×E0.6DOC=49×L1.012024/11/1014其中,L是源代碼行數(shù)(以KLOC計(jì)),E是工作量(以PM計(jì)),D是項(xiàng)目持續(xù)時(shí)間(以月計(jì)),S是人員需要量(以人計(jì)),DOC是文檔數(shù)量(以頁(yè)計(jì))。因此估算出了源代碼的數(shù)量,就可以對(duì)工作量、文檔數(shù)量等進(jìn)行估算了。IBM模型是一個(gè)靜態(tài)單變量模型,它利用已估算的特性,例如源代碼行數(shù),來(lái)估算各種資源的需要量。IBM模型是一個(gè)靜態(tài)單變量模型,但不是一個(gè)通用公式。在應(yīng)用中有時(shí)要根據(jù)具體實(shí)際情況,對(duì)公式中的參數(shù)進(jìn)行修改。2024/11/10152.Putnam(普特萊姆)模型這是1978年P(guān)utnam提出的模型,是一種動(dòng)態(tài)多變量模型。該模型的基礎(chǔ)是假定在軟件開(kāi)發(fā)的整個(gè)生存期中工作量有特定的分布。它把項(xiàng)目的資源需求當(dāng)做時(shí)間的函數(shù)。根據(jù)對(duì)一些大型項(xiàng)目的統(tǒng)計(jì)分析,軟件開(kāi)發(fā)工作量分布可用如圖19-3所示的曲線表示。2024/11/1016圖19-3大型項(xiàng)目的工作量分布情況2024/11/1017如圖19-3所示中的曲線被稱為Rayleigh-Norden(雷利-諾登)曲線。利用該曲線得到如下的經(jīng)驗(yàn)公式:L=Ck·K1/3·td4/3其中,td是開(kāi)發(fā)持續(xù)時(shí)間(以年計(jì)),K是軟件開(kāi)發(fā)與維護(hù)在內(nèi)的整個(gè)生存期所花費(fèi)的工作量(以人年計(jì)),L是源代碼行數(shù)(以LOC計(jì)),Ck是技術(shù)狀態(tài)常數(shù),它反映出“妨礙程序員進(jìn)展的限制”,并因開(kāi)發(fā)環(huán)境而異。2024/11/10183.COCOMO模型(ConstructiveCostModel)BarryBoehm(巴里.貝姆)提出的一種軟件估算模型的層次體系,稱為結(jié)構(gòu)型成本估算模型。是一種比較精確、易于使用的綜合成本估算方法。該模型分為三個(gè)層次:基本的COCOMO模型:只是將工作量(成本)作為程序規(guī)模的函數(shù)進(jìn)行計(jì)算。中級(jí)的COCOMO模型:除了工作量以外,還將對(duì)產(chǎn)品、硬件、人員及項(xiàng)目屬性的主觀評(píng)價(jià)作為“成本驅(qū)動(dòng)因子”加入估算模型中。高級(jí)的COCOMO模型:除了中級(jí)模型的因素外,還加入了成本驅(qū)動(dòng)因子對(duì)軟件開(kāi)發(fā)的每一個(gè)過(guò)程的影響的評(píng)估。2024/11/1019COCOMO規(guī)定了三種項(xiàng)目屬性:(1)組織型(Organic):較小、較簡(jiǎn)單的軟件項(xiàng)目。項(xiàng)目組人員經(jīng)驗(yàn)豐富,對(duì)軟件的使用環(huán)境很熟悉,受硬件的約束較少,程序的規(guī)模不是很大(<5萬(wàn)行)。(2)嵌入型(Embadded):此種軟件要求在緊密聯(lián)系的硬件、軟件和操作的限制條件下運(yùn)行的軟件。比如航天用控制系統(tǒng)屬此種類型。(3)半獨(dú)立型(Semidetached):對(duì)此種軟件的要求介于上述兩種軟件之間,但軟件規(guī)模和復(fù)雜性都屬于中等以上,最大可達(dá)30萬(wàn)行。例如,大多數(shù)事務(wù)處理系統(tǒng)屬此種類型。2024/11/1020基本的COCOMO模型的估計(jì)方式E=a*KLOCbD=c*EdE是以人月為單位的工作量,D是以月表示的開(kāi)發(fā)時(shí)間,KLOC是項(xiàng)目的代碼行(以千行為單位),a、b、c、d是系數(shù),如表19-2所示。軟件項(xiàng)目abcd組織型2.41.052.50.38半獨(dú)立型3.01.122.50.35嵌入型3.61.202.50.322024/11/102119.4風(fēng)險(xiǎn)分析風(fēng)險(xiǎn)含義在軟件工程的環(huán)境中考慮時(shí),風(fēng)險(xiǎn)的含義一是關(guān)心未來(lái),風(fēng)險(xiǎn)是否會(huì)導(dǎo)致軟件項(xiàng)目失??;二是關(guān)心變化,在用戶需求、開(kāi)發(fā)技術(shù)、目標(biāo)機(jī)器,以及所有其他與項(xiàng)目有關(guān)的實(shí)體中會(huì)發(fā)生的變化?三是必須解決選擇問(wèn)題:應(yīng)當(dāng)采用什么方法和工具,應(yīng)當(dāng)配備多少人力,在質(zhì)量上強(qiáng)調(diào)到什么程度才滿足要求?風(fēng)險(xiǎn)分析實(shí)際上是4個(gè)不同的活動(dòng):風(fēng)險(xiǎn)識(shí)別、風(fēng)險(xiǎn)估算、風(fēng)險(xiǎn)評(píng)價(jià)和風(fēng)險(xiǎn)駕馭。2024/11/102219.4.1風(fēng)險(xiǎn)識(shí)別可用不同的方法對(duì)風(fēng)險(xiǎn)進(jìn)行分類。從宏觀上來(lái)看,可將風(fēng)險(xiǎn)分為項(xiàng)目風(fēng)險(xiǎn)、技術(shù)風(fēng)險(xiǎn)和商業(yè)風(fēng)險(xiǎn)。項(xiàng)目風(fēng)險(xiǎn)包括潛在的預(yù)算、進(jìn)度、個(gè)人(包括人員和組織)、資源用戶和需求方面的問(wèn)題,以及它們對(duì)軟件項(xiàng)目的影響。技術(shù)風(fēng)險(xiǎn)包括潛在的設(shè)計(jì)、實(shí)現(xiàn)、接口、檢驗(yàn)和維護(hù)方面的問(wèn)題。此外,規(guī)格說(shuō)明的多義性、技術(shù)上的不確定性、技術(shù)陳舊、最新技術(shù)(不成熟)也是風(fēng)險(xiǎn)因素。2024/11/1023商業(yè)風(fēng)險(xiǎn)主要有以下幾種:(1)建立的軟件雖然很優(yōu)秀但不是真正所想要的(市場(chǎng)風(fēng)險(xiǎn))。(2)建立的軟件不適用整個(gè)軟件產(chǎn)品戰(zhàn)略。(3)銷售部門不清楚如何推銷這種軟件。(4)失去上級(jí)管理部門的支持。(5)失去預(yù)算或人員的承諾(預(yù)算風(fēng)險(xiǎn))。(6)最終用戶的水平。風(fēng)險(xiǎn)識(shí)別就是要識(shí)別屬于上述類型中某些特定項(xiàng)目的風(fēng)險(xiǎn)。2024/11/1024Boehm建議的方法是使用一個(gè)“風(fēng)險(xiǎn)項(xiàng)目檢查表”,列出所有可能的與每一個(gè)風(fēng)險(xiǎn)因素有關(guān)的提問(wèn)。對(duì)于這些提問(wèn),通過(guò)判定分析或假設(shè)分析,給出確定的回答,就可以幫助管理計(jì)劃人員估算風(fēng)險(xiǎn)的影響。2024/11/102519.4.2風(fēng)險(xiǎn)估算風(fēng)險(xiǎn)估算,又叫風(fēng)險(xiǎn)預(yù)測(cè)。通常進(jìn)行4種風(fēng)險(xiǎn)估算活動(dòng):(1)建立一個(gè)尺度或標(biāo)準(zhǔn)來(lái)表示一個(gè)風(fēng)險(xiǎn)的可能性。(2)描述風(fēng)險(xiǎn)的結(jié)果。(3)估計(jì)風(fēng)險(xiǎn)對(duì)項(xiàng)目和產(chǎn)品的影響。(4)確定風(fēng)險(xiǎn)估計(jì)的正確性。可以通過(guò)檢查風(fēng)險(xiǎn)表來(lái)度量各種風(fēng)險(xiǎn)。尺度可以用布爾值、定性的、或定量的方式定義。最后,根據(jù)已掌握的風(fēng)險(xiǎn)對(duì)項(xiàng)目的影響,可以給風(fēng)險(xiǎn)加權(quán),并把它們安排到一個(gè)優(yōu)先隊(duì)列中。2024/11/1026如圖19-4所示,風(fēng)險(xiǎn)影響和出現(xiàn)概率對(duì)駕馭參與有不同的影響。圖19-4風(fēng)險(xiǎn)與駕馭參與2024/11/102719.4.3風(fēng)險(xiǎn)評(píng)價(jià)在風(fēng)險(xiǎn)分析過(guò)程中進(jìn)行風(fēng)險(xiǎn)評(píng)價(jià)的時(shí)候,應(yīng)當(dāng)建立一個(gè)三元組:[ri,li,xi]其中,ri是風(fēng)險(xiǎn),li是風(fēng)險(xiǎn)出現(xiàn)的可能性(概率),而xi是風(fēng)險(xiǎn)的影響。在做風(fēng)險(xiǎn)評(píng)價(jià)時(shí),應(yīng)當(dāng)進(jìn)一步檢驗(yàn)在風(fēng)險(xiǎn)估計(jì)時(shí)所得到的估計(jì)的準(zhǔn)確性,嘗試對(duì)已暴露的風(fēng)險(xiǎn)進(jìn)行優(yōu)先排隊(duì),并著手考慮控制和(或)消除可能出現(xiàn)風(fēng)險(xiǎn)的方法。2024/11/1028風(fēng)險(xiǎn)參照水準(zhǔn)一個(gè)對(duì)風(fēng)險(xiǎn)評(píng)價(jià)很有用的技術(shù)就是定義風(fēng)險(xiǎn)參照水準(zhǔn)。如果因?yàn)轱L(fēng)險(xiǎn)的一個(gè)組合引出造成項(xiàng)目成本和進(jìn)度超出的問(wèn)題,將有一個(gè)水準(zhǔn)(在圖中用曲線表示),當(dāng)超出時(shí),將導(dǎo)致項(xiàng)目終止(圖中封閉區(qū)域)。圖19-5風(fēng)險(xiǎn)參照水準(zhǔn)2024/11/1029風(fēng)險(xiǎn)評(píng)價(jià)的步驟多數(shù)情況中,參照點(diǎn)不是一條平滑的曲線,而是一個(gè)區(qū)域,這個(gè)區(qū)域可能是易變動(dòng)的區(qū)域,在這些區(qū)域內(nèi)想要作出基于參照值組合的管理判斷往往是不準(zhǔn)確的。因此,在做風(fēng)險(xiǎn)評(píng)價(jià)時(shí),按以下步驟執(zhí)行:(1)為項(xiàng)目定義風(fēng)險(xiǎn)參照水準(zhǔn)。(2)嘗試找出在每個(gè)[ri,li,xi]和每個(gè)參照水準(zhǔn)之間的關(guān)系。(3)預(yù)測(cè)參照點(diǎn),定義一個(gè)終止區(qū)域,用一條曲線或一些易變動(dòng)區(qū)域來(lái)界定。(4)努力預(yù)測(cè)復(fù)合的風(fēng)險(xiǎn)組合將如何形成一個(gè)參照水準(zhǔn)。2024/11/103019.4.4風(fēng)險(xiǎn)駕馭和監(jiān)控風(fēng)險(xiǎn)駕馭步驟:(1)與現(xiàn)在在職的人員協(xié)商,確定人員流動(dòng)的原因(如工作條件差、收入低、人才市場(chǎng)競(jìng)爭(zhēng)等)。(2)在項(xiàng)目開(kāi)始之前,把緩解這些原因(避開(kāi)風(fēng)險(xiǎn))的工作列入已擬定的駕馭計(jì)劃中。(3)當(dāng)項(xiàng)目啟動(dòng)時(shí),做好人員流動(dòng)會(huì)出現(xiàn)的準(zhǔn)備。采取一些辦法以確保人員一旦離開(kāi)時(shí)項(xiàng)目仍能繼續(xù)(削弱風(fēng)險(xiǎn))。(4)建立項(xiàng)目組,以使大家都了解有關(guān)開(kāi)發(fā)活動(dòng)的信息。2024/11/1031(5)制定文檔標(biāo)準(zhǔn),并建立一種機(jī)制以保證文檔能夠及時(shí)產(chǎn)生。(6)對(duì)所有工作組織細(xì)致的評(píng)審(以使更多的人能夠按計(jì)劃進(jìn)度來(lái)完成自己的工作)。(7)對(duì)每一個(gè)關(guān)鍵性的技術(shù)人員,要培養(yǎng)后備人員。2024/11/1032圖19-6表示風(fēng)險(xiǎn)駕馭步驟要寫(xiě)進(jìn)風(fēng)險(xiǎn)駕馭與監(jiān)控計(jì)劃RMMP(RiskManagementandMonitoringPlan)。RMMP記敘了風(fēng)險(xiǎn)分析的全部工作。

圖19-6風(fēng)險(xiǎn)駕馭與監(jiān)控2024/11/1033RMMP的主要內(nèi)容圖19-7風(fēng)險(xiǎn)駕馭與監(jiān)控計(jì)劃概要2024/11/1034風(fēng)險(xiǎn)監(jiān)控的三個(gè)主要目標(biāo)(1)判斷一個(gè)預(yù)測(cè)的風(fēng)險(xiǎn)事實(shí)上是否發(fā)生了。(2)確保針對(duì)某個(gè)風(fēng)險(xiǎn)而制定的風(fēng)險(xiǎn)消除步驟正在合理地實(shí)施。(3)收集可用于將來(lái)的風(fēng)險(xiǎn)分析的信息。實(shí)際上,項(xiàng)目中發(fā)生的問(wèn)題總能追蹤到許多風(fēng)險(xiǎn)。風(fēng)險(xiǎn)監(jiān)控的另一項(xiàng)工作就是要把“責(zé)任”(什么風(fēng)險(xiǎn)導(dǎo)致問(wèn)題發(fā)生)分配到項(xiàng)目中去。雖然風(fēng)險(xiǎn)分析會(huì)增大成本,但是相對(duì)于因?yàn)閲?yán)重的風(fēng)險(xiǎn)發(fā)生而沒(méi)有采取有效的措施造成的項(xiàng)目損失來(lái)說(shuō),這些工作量花得值得。2024/11/103519.5進(jìn)度安排軟件開(kāi)發(fā)項(xiàng)目的進(jìn)度安排有兩種考慮方式:(1)系統(tǒng)最終交付日期已經(jīng)確定,軟件開(kāi)發(fā)部門必須在規(guī)定期限內(nèi)完成。(2)系統(tǒng)最終交付日期只確定了大致的年限,最后交付日期由軟件開(kāi)發(fā)部門確定。2024/11/103619.5.1軟件開(kāi)發(fā)小組人數(shù)與軟件生產(chǎn)率在軟件開(kāi)發(fā)中,生產(chǎn)率和人數(shù)往往是成反比的。在通常情況下,一個(gè)人的開(kāi)發(fā)小組效率是最高的。主要的原因是減少了人員之間的通信和理解工作量。但是,不可能讓一個(gè)人工作10年,而是讓10個(gè)人工作1年去進(jìn)行軟件開(kāi)發(fā)。因此,需要多人組成開(kāi)發(fā)小組共同參加一個(gè)項(xiàng)目的開(kāi)發(fā)。多個(gè)人開(kāi)發(fā)同一個(gè)項(xiàng)目會(huì)產(chǎn)生通信問(wèn)題,對(duì)接口、設(shè)計(jì)的理解。通信需花費(fèi)時(shí)間和代價(jià),降低軟件生產(chǎn)率。但是小組這種軟件開(kāi)發(fā)形式便于開(kāi)展質(zhì)量保證活動(dòng),可以獲得更完善的軟件分析與設(shè)計(jì),從而減少因?yàn)檐浖治鲆鸬腻e(cuò)誤數(shù),從而降低測(cè)試工作量。2024/11/103719.5.2任務(wù)的確定與并行性當(dāng)參加同一個(gè)軟件工程項(xiàng)目的人數(shù)不止一人的時(shí)候,開(kāi)發(fā)工作就會(huì)出現(xiàn)并行情形。圖19-8軟件項(xiàng)目的并行性2024/11/103819.5.3制定開(kāi)發(fā)進(jìn)度計(jì)劃表19-3進(jìn)度分配百分比表表19-4更精確的進(jìn)度分配表階段需求分析設(shè)計(jì)編碼與單元測(cè)試組裝與測(cè)試占開(kāi)發(fā)時(shí)間的百分比10~3017~2725~6016~28總體類型階段分配規(guī)模(KDSI)

微型<2小型8中型32大型128特大型512組織型計(jì)劃與需求設(shè)計(jì)編碼與單元測(cè)試組裝與測(cè)試10111217

19191919

63595551

18222630

半獨(dú)立型計(jì)劃與需求設(shè)計(jì)編碼與單元測(cè)試組裝與測(cè)試1618202224

2425262728

5652484440

2023262932

嵌入型計(jì)劃與需求設(shè)計(jì)編碼與單元測(cè)試組裝與測(cè)試2428323640

3032343638

4844403632

2224262830

2024/11/103919.5.4進(jìn)度安排的圖形方法甘特圖(GanttChart)是常用的多任務(wù)安排工具。用水平線段表示任務(wù)的工作階段,用垂直線表示當(dāng)前的執(zhí)行情況;線段的起點(diǎn)和終點(diǎn)分別對(duì)應(yīng)著任務(wù)的開(kāi)工時(shí)間和完成時(shí)間;線段的長(zhǎng)度表示完成任務(wù)所需的時(shí)間。在甘特圖中,任務(wù)完成的標(biāo)準(zhǔn)是以應(yīng)交付的文檔與通過(guò)評(píng)審為標(biāo)準(zhǔn)。因此在甘特圖中,文檔編制與評(píng)審是軟件開(kāi)發(fā)進(jìn)度的里程碑。甘特圖的優(yōu)點(diǎn)是標(biāo)明了各任務(wù)的計(jì)劃進(jìn)度和當(dāng)前進(jìn)度,能動(dòng)態(tài)地反映軟件開(kāi)發(fā)進(jìn)展情況。缺點(diǎn)是難以反映多個(gè)任務(wù)之間存在的復(fù)雜的邏輯關(guān)系。2024/11/1040如圖19-9所示給出一個(gè)具有5個(gè)任務(wù)的甘特圖(任務(wù)名分別為A、B、C、D、E)。從甘特圖上可以很清楚地看出各子任務(wù)在時(shí)間上的對(duì)比關(guān)系。圖19-9甘特圖2024/11/104119.5.5項(xiàng)目的追蹤和控制一件事情,無(wú)論計(jì)劃做得多完美,如果沒(méi)有嚴(yán)格的過(guò)程管理,執(zhí)行不力,失敗的可能性非常大。軟件項(xiàng)目管理的一項(xiàng)重要工作就是在項(xiàng)目實(shí)施過(guò)程中進(jìn)行追蹤,對(duì)過(guò)程進(jìn)行嚴(yán)格的控制??梢杂靡韵虏煌姆绞竭M(jìn)行追蹤:(1)定期舉行項(xiàng)目狀態(tài)會(huì)議。在會(huì)上,每一位項(xiàng)目成員報(bào)告他的進(jìn)展和遇到的問(wèn)題。(2)評(píng)價(jià)在軟件工程中所產(chǎn)生的所有評(píng)審的結(jié)果。(3)確定由項(xiàng)目的計(jì)劃進(jìn)度所安排的可能選擇的正式的里程碑。(4)比較在項(xiàng)目資源表中所列出的每一個(gè)項(xiàng)目任務(wù)的實(shí)際開(kāi)始時(shí)間和計(jì)劃開(kāi)始時(shí)間。(5)非正式地與開(kāi)發(fā)人員交談,以得到他們對(duì)開(kāi)發(fā)進(jìn)展和剛冒頭的問(wèn)題的客觀評(píng)價(jià)。2024/11/104219.6軟件項(xiàng)目的組織19.6.1軟件項(xiàng)目管理的特點(diǎn)1.軟件項(xiàng)目的特點(diǎn)1)智力密集,可見(jiàn)性差2)單件生產(chǎn)3)勞動(dòng)密集,自動(dòng)化程度低4)軟件工作滲透了人的因素2024/11/10432.軟件管理的主要職能軟件管理的主要職能包括:(1)制定計(jì)劃:規(guī)定待完成的任務(wù)、要求、資源、人力和進(jìn)度等。(2)建立組織:為實(shí)施計(jì)劃,保證任務(wù)的完成,需要建立分工明確的責(zé)任制機(jī)構(gòu)。(3)配備人員:任用各種層次的技術(shù)人員和管理人員。(4)指導(dǎo):鼓勵(lì)和動(dòng)員軟件人員完成所分配的工作。(5)檢驗(yàn):對(duì)照計(jì)劃或標(biāo)準(zhǔn),監(jiān)督和檢查實(shí)施的情況。2024/11/104419.6.2軟件項(xiàng)目組織的建立建立一個(gè)好的組織來(lái)進(jìn)行軟件開(kāi)發(fā),是一切軟件項(xiàng)目開(kāi)發(fā)能夠順利進(jìn)行的必要條件之一。在建立軟件開(kāi)發(fā)的組織時(shí),要注意:(1)盡早落實(shí)責(zé)任:在軟件項(xiàng)目工作的開(kāi)始,就要指定專人負(fù)責(zé)。使他有權(quán)進(jìn)行管理,并對(duì)任務(wù)的完成負(fù)全責(zé)。(2)減少接口:在開(kāi)發(fā)過(guò)程中,人與人之間的聯(lián)系是必不可少的,組織應(yīng)該有合理的分工、好的組織結(jié)構(gòu),以減少不必要通信。(3)責(zé)權(quán)均衡:軟件經(jīng)理人員所負(fù)的責(zé)任不應(yīng)比委任給他的權(quán)力還大。2024/11/1045軟件開(kāi)發(fā)組織建立的三種模式1.按課題劃分的模式(ProjectFormat)2.按職能劃分的模式(FunctionalFormat)3.矩陣形模式(MatrixFormat)圖19-10軟件開(kāi)發(fā)組織的矩陣形模式2024/11/1046程序設(shè)計(jì)小組的組織形式:在程序設(shè)計(jì)小組中典型的有三種組織形式。如圖19-11所示,上排的三種為結(jié)構(gòu)形式,下排的三種為通信路徑圖19-11三種不同的小組結(jié)構(gòu)

2024/11/1047(1)主程序員制小組(ChiefProgrammerTeam)小組的核心由1位主程序員(高級(jí)工程師)、2至5位技術(shù)員、1位后援工程師組成,另外還可以有部分輔助人員(資料員)。圖19-12主程序員小組的組織主程序員制的開(kāi)發(fā)小組強(qiáng)調(diào)主程序員與其他技術(shù)人員的直接聯(lián)系,簡(jiǎn)化了技術(shù)人員之間的橫向通信,如圖19-11(a)所示。這種組織制度的工作效果的好壞很大程度上取決于主程序員的技術(shù)水平和管理才能。2024/11/1048(2)民主制小組(DemocraticTeam)

在民主制小組中也設(shè)置一位組長(zhǎng),但是每當(dāng)遇到問(wèn)題,組內(nèi)成員之間可以平等地交換意見(jiàn),如圖19-11(b)所示。工作目標(biāo)的制定及做出決定都由全體成員參加。這種組織形式強(qiáng)調(diào)發(fā)揮小組每個(gè)成員的積極性、主動(dòng)精神和協(xié)作精神。缺點(diǎn)是會(huì)削弱了個(gè)人責(zé)任心和必要的權(quán)威作用。這種組織形式適合于研制時(shí)間長(zhǎng)、開(kāi)發(fā)難度大的項(xiàng)目。2024/11/1049(3)層次式小組(HierarchicalTeam)

如圖19-11(c)所示,在層次式小組中,組內(nèi)人員分為三級(jí):組長(zhǎng)(項(xiàng)目負(fù)責(zé)人)1人負(fù)責(zé)全組工作。他直接領(lǐng)導(dǎo)2~3名高級(jí)程序員,每位高級(jí)程序員通過(guò)基層小組,管理若干位程序員。這種組織結(jié)構(gòu)特點(diǎn)比較適合的項(xiàng)目就是層次結(jié)構(gòu)狀的課題,可以按組織形式劃分課題,然后把子項(xiàng)目分配給基層小組,由基層小組完成。對(duì)于大型項(xiàng)目,可以通過(guò)層次式劃分將項(xiàng)目需要?jiǎng)澐殖扇舾蓪?,因此,大型軟件?xiàng)目的開(kāi)發(fā)比較適合于這種組織方式。2024/11/1050在實(shí)際應(yīng)用中,組織形式并不是一成不變的,可以根據(jù)問(wèn)題的特點(diǎn)調(diào)整。但是調(diào)整的幅度過(guò)大,會(huì)造成成員之間的交流不順??傊?,軟件開(kāi)發(fā)小組的主要目的是發(fā)揮集體的力量進(jìn)行軟件研制。因此,小組培養(yǎng)從“全局”的觀點(diǎn)出發(fā)進(jìn)行程序設(shè)計(jì),消除軟件的“個(gè)人”性質(zhì),并促進(jìn)更充分的復(fù)審,小組提倡在共同工作中互相學(xué)習(xí)從而改善軟件的質(zhì)量。2024/11/105119.6.3人員配備圖19-13軟件項(xiàng)目人力配備情況

2024/11/1052配備人員時(shí)應(yīng)該遵循如下的原則根據(jù)軟件開(kāi)發(fā)各階段對(duì)人力的需求情況,配備人員時(shí)應(yīng)該遵循如下的原則:(1)重質(zhì)量:軟件項(xiàng)目是技術(shù)性很強(qiáng)的工作,任用少量有實(shí)踐經(jīng)驗(yàn)、有能力的人員去完成關(guān)鍵性的任務(wù),常常要比使用較多的經(jīng)驗(yàn)不足的

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論