軟件工程:理論、技術(shù)及實踐 課件 第8、9章 軟件維護與演化、軟件項目管理_第1頁
軟件工程:理論、技術(shù)及實踐 課件 第8、9章 軟件維護與演化、軟件項目管理_第2頁
軟件工程:理論、技術(shù)及實踐 課件 第8、9章 軟件維護與演化、軟件項目管理_第3頁
軟件工程:理論、技術(shù)及實踐 課件 第8、9章 軟件維護與演化、軟件項目管理_第4頁
軟件工程:理論、技術(shù)及實踐 課件 第8、9章 軟件維護與演化、軟件項目管理_第5頁
已閱讀5頁,還剩62頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

第8章

軟件維護與演化學(xué)習(xí)目標?了解軟件維護的類型?掌握軟件維護的基本流程?熟悉軟件部署的基本方法?掌握軟件部署工具的使用方法?了解軟件配置管理的基本概念?熟悉常用軟件配置管理工具的使用方法

軟件演化是指對軟件進行維護和更新的一種行為,它是軟件生命周期中始終存在的變化活動。軟件演化可分為開發(fā)演化和運行演化。開發(fā)演化是創(chuàng)造一個新軟件的過程,在一定的約束條件下從頭開始實施。運行演化又稱軟件維護,是軟件系統(tǒng)交付使用以后,為了改正錯誤或滿足新的需要而修改軟件的過程,一般是在現(xiàn)有系統(tǒng)的限定和約束條件下進行。軟件演化過程包括了軟件維護與更新、軟件部署、軟件配置管理等內(nèi)容。軟件維護與更新1軟件部署2軟件配置管理38.1軟件維護與更新軟件維護是軟件生命周期中的最后一個階段,也是歷時最長的一個階段,從系統(tǒng)投入生產(chǎn)運行以后一直持續(xù)到軟件生命周期結(jié)束。

軟件維護是指軟件系統(tǒng)交付使用以后,為了改正軟件運行錯誤,或者為了滿足新的需求而加入新功能的修改軟件的過程,以保證軟件的日常良好運行。軟件維護與更新軟件的可維護性是指軟件能夠被理解,并能糾正軟件系統(tǒng)出現(xiàn)的錯誤和缺陷,以及為滿足新的要求進行修改、擴充或壓縮的容易程度。(1)可理解性(2)可測試性(3)可修改性(4)可靠性(5)可移植性(6)可使用性(7)效率8.1.1軟件的可維護性8.1軟件維護與更新(1)改正性維護軟件在交付使用后,難免存在軟件自身隱含的錯誤及軟件缺陷。改正性維護就是為了改正潛藏及遺留下來的錯誤而進行的活動。(2)適應(yīng)性維護適應(yīng)性維護是指使軟件適應(yīng)技術(shù)變化和管理需求變化而進行的修改。(3)完善性維護完善性維護是為擴充功能和改善性能而進行的修改,主要是指對已有的軟件系統(tǒng)增加一些在系統(tǒng)分析和設(shè)計階段中沒有規(guī)定的功能與性能特征。這些功能對完善系統(tǒng)功能是非常必要的。另外,還包括對處理效率和編寫程序的改進。8.1.2軟件維護類型8.1軟件維護與更新(4)預(yù)防性維護預(yù)防性維護是指為了改進應(yīng)用軟件的可靠性和可維護性,為了適應(yīng)未來的軟、硬件環(huán)境的變化,主動增加預(yù)防性的新的功能,使應(yīng)用系統(tǒng)適應(yīng)各類變化而不被淘汰。圖8-1四種維護類型的占比8.1軟件維護與更新可維護性特性改正性維護適應(yīng)性維護完善性維護可理解性√可測試性√可修改性√√可靠性√可移植性√可使用性√√效率√表8-1七種特性在各類維護中的側(cè)重點8.1軟件維護與更新8.1.3軟件維護流程圖8-2軟件維護基本流程8.1軟件維護與更新通常軟件維護執(zhí)行以下步驟:(1)提交維護申請。(2)選擇符合申請的維護類型。(3)分析修改的內(nèi)容及必要性,確認修改后對原有系統(tǒng)的影響程度。(4)審核同意或否決維護申請。(5)為每個提交的維護申請排優(yōu)先級,并且安排工作進度及人員。(6)修改代碼,記錄所修改的內(nèi)容并評審,保證程序運行正常。8.1軟件維護與更新(7)評審編碼情況,詳細填寫維護工作記錄表。(8)不僅測試所修改的部分,還要對其他部分進行全面測試,確認是否對其他部分有影響。(9)必須保持程序與文檔的一致性,應(yīng)實時更新相關(guān)文檔。(10)軟件版本發(fā)布,確保發(fā)布后的程序可在系統(tǒng)程序中安全運行。(11)每日查看數(shù)據(jù)庫備份情況,并定期完成數(shù)據(jù)清理。8.1軟件維護與更新(1)軟件維護的困難

①文檔缺失、不充分或過期②軟件升級頻繁③軟件維護人員變動④未嚴格遵守軟件開發(fā)標準8.1.4軟件維護的困難及對應(yīng)策略8.1軟件維護與更新(2)提高軟件可維護性的途徑①可理解的系統(tǒng)結(jié)構(gòu)設(shè)計②標準化的程序設(shè)計語言③結(jié)構(gòu)化的文檔④有效的軟件維護管理⑤明確軟件質(zhì)量目標及優(yōu)先級⑥明確的質(zhì)量保證審查8.1.4軟件維護的困難及對應(yīng)策略8.18.2軟件部署軟件部署是一個復(fù)雜過程,包括從開發(fā)者發(fā)放產(chǎn)品,到用戶在他們的計算機上實際安裝并維護應(yīng)用的所有活動。這些活動包括開發(fā)者的軟件打包,企業(yè)及用戶對軟件的安裝、配置、測試、集成和更新等。軟件部署工具可以幫助軟件開發(fā)團隊更好地編寫代碼、進行測試、讓軟件在其環(huán)境中運行并定期更新。比較常用的工具包括:Docker、Terraform、Ansible、Packer、Kubernetes等。8.2.1軟件部署的概念軟件部署Docker是近年來較為流行的軟件部署工具之一,它是一個開源的應(yīng)用容器引擎,基于Go語言并遵從Apache2.0協(xié)議開源。Docker可以讓開發(fā)者打包他們的應(yīng)用以及依賴包到一個輕量級、可移植的容器中,然后發(fā)布到任何流行的Linux機器上,也可以實現(xiàn)虛擬化。其中容器完全使用沙箱機制,相互之間不會有任何接口,且容器性能開銷極低。8.2.2軟件部署工具Docker8.2軟件部署(1)Docker架構(gòu)圖8-3Docker架構(gòu)8.2軟件部署部件作用Docker鏡像(Images)Docker鏡像是用于創(chuàng)建Docker容器的模板Docker容器(Container)容器是獨立運行的一個或一組應(yīng)用Docker客戶端(Client)Docker客戶端通過命令行或者其他工具使用DockerAPI與Docker的守護進程通信。Docker主機(Host)一個物理或者虛擬的機器,用于執(zhí)行Docker守護進程和容器Docker倉庫(Registry)Docker倉庫用來保存鏡像,可以理解為代碼控制中的代碼倉庫DockerMachineDockerMachine是一個簡化Docker安裝的命令行工具,通過一個簡單的命令行即可在相應(yīng)的平臺上安裝DockerDocker守護進程(Daemon)Daemon作為服務(wù)器端接受來自客戶的請求,并處理這些請求表8-2Docker各部件作用8.2軟件部署Docker優(yōu)點:①持續(xù)集成②可移植性③版本控制④隔離性

⑤安全性8.28.3軟件配置管理軟件配置管理(SoftwareConfigurationManagement,簡稱SCM)應(yīng)用于整個軟件工程過程。在軟件建立時變更是不可避免的,而變更加劇了項目中軟件開發(fā)者之間的混亂。SCM活動的目標就是為了標識變更、控制變更、確保變更正確地實現(xiàn),并向其他有關(guān)人員報告變更。軟件配置管理包括六個子域,即軟件配置管理過程管理、軟件配置標志、軟件配置控制、軟件配置狀態(tài)統(tǒng)計、軟件配置審核、軟件發(fā)行管理和交付。軟件配置管理如何應(yīng)對軟件變更所帶來的文檔及程序代碼變化的情況,軟件配置管理起到了關(guān)鍵性的作用:(1)版本控制(2)并行開發(fā)(3)變更控制(4)配置管理8.3.1軟件配置管理的作用8.3軟件配置管理通過控制、記錄、追蹤對軟件的修改和每個修改生成的軟件組成部件來實現(xiàn)對軟件產(chǎn)品的管理功能。(1)制訂配置管理計劃(2)配置庫管理(3)版本控制(4)變更控制(5)配置審計8.3.2軟件配置管理過程8.3軟件配置管理目前,軟件工程領(lǐng)域常見的軟件配置管理工具有IBMRationalSoftware提供的ClearCase、Microsoft提供的VSS(VisualSourceSafe)、CollabNet提供的SVN(Subversion)以及Github等。(1)VisualSourceSafe(VSS)8.3.3常用的軟件配置管理工具圖8-4VSS6.0工作界面8.3軟件配置管理(2)Subversion(SVN)圖8-5SVN集中式管理工作流程8.3軟件配置管理(3)GitHubGitHub是一個面向開源及私有軟件項目的托管平臺,支持Git作為唯一的版本庫格式進行托管,并提供一個web界面。通過使用Git來操作GitHub實現(xiàn)代碼的共享。圖8-6本地倉庫組成8.3軟件配置管理圖8-7Git中文件流通圖8.3本章結(jié)束!第9章軟件項目管理本章學(xué)習(xí)目標1.了解軟件工程項目管理的相關(guān)知識。2.了解軟件團隊管理的基本方法。3.熟悉需求變更管理的基本方法。4.熟悉常用軟件工程中計劃與估算方法。5.熟悉軟件項目風(fēng)險管理的基本方法。6.掌握軟件項目管理計劃的制定方法

軟件項目管理

為使軟件項目開發(fā)獲得成功,關(guān)鍵問題是要掌握軟件項目的工作范圍、可能風(fēng)險、需要的資源(人、硬件、軟件)、要實現(xiàn)的任務(wù)、經(jīng)歷的里程碑、花費工作量(成本)、進度安排等。軟件項目管理在技術(shù)工作開始之前就應(yīng)當開始,在軟件從概念到實現(xiàn)的過程中繼續(xù)進行,當軟件工程過程最后結(jié)束時才終止。軟件項目管理是為了使軟件項目能夠按照預(yù)定的成本、進度、質(zhì)量順利完成,而對人員(People)、產(chǎn)品(Product)、過程(Process)和項目(Project)進行分析和管理的活動。軟件工程項目管理1計劃與估算2軟件項目團隊管理39.1軟件工程項目管理軟件工程項目管理的介紹軟件工程項目管理是指在軟件開發(fā)過程中對項目的規(guī)劃、組織、指導(dǎo)和控制,以確保項目按時、按質(zhì)高效完成的管理活動。大型軟件項目需要龐大的開發(fā)團隊來進行協(xié)作和開發(fā),包括開發(fā)人員、測試人員、項目經(jīng)理、業(yè)務(wù)分析師等。同時,大型軟件項目涉及多個團隊和多個利益相關(guān)者,需要跨團隊和跨部門的溝通和協(xié)作,管理工作量較大。對于這樣龐大的項目如果沒有管理,其質(zhì)量保障是難以想象的。在軟件工程項目管理方面比較權(quán)威的體系是項目管理知識體系(ProjectManagementBodyofKnowledge,簡稱PMBOK),它是由美國項目管理協(xié)會(ProjectManagementInstitute,簡稱PMI)發(fā)起的。9.1.1項目啟動管理項目啟動時一般需要明確以下幾個問題:(1)項目范圍、項目周期、關(guān)鍵里程碑點。(2)識別相關(guān)人員,明確溝通、匯報渠道及各個角色的職責(zé)。(3)項目規(guī)則約定、表單模板、流程。(4)項目資源、費用預(yù)算。(5)產(chǎn)品業(yè)務(wù)需求、技術(shù)需求,以及用戶群體。(6)識別可能存在的項目風(fēng)險。(7)需要什么樣的技術(shù)支持,是否需要前期學(xué)習(xí)和調(diào)查。9.1.2項目計劃管理

項目計劃管理是在項目計劃階段對項目實施的管理,包括范圍管理、進度管理和綜合管理。一個科學(xué)的計劃,不僅可以保證項目工期,減少資源浪費,還可以對項目的進程進行跟蹤控制管理,從而保證項目的按期完成。

項目計劃應(yīng)在項目開始初期制定出來,并隨著工程的進展?jié)u進明細。(1)開發(fā)進度計劃制訂識別活動識別活動依賴關(guān)系估算活動資源為活動分配人員創(chuàng)建進度圖表圖9-1項目進度安排9.1.2項目計劃管理圖9-2項目進度計劃甘特圖(2)計劃跟蹤與監(jiān)控

計劃做得再好,如果沒有有效執(zhí)行,也等于沒做。項目進度跟蹤與控制過程需要采用日志的方式或相應(yīng)的工具,讓項目組成員每天填寫工作完成情況。9.1.3人員組織與管理

人員是軟件工程項目中最重要、最為活躍的資源因素。如何組織得更加合理,管理得更加有效,從而最大限度地發(fā)揮這一重要的資源潛力,對于軟件項目的成功至關(guān)重要。高效的開發(fā)團隊一般具有以下特征:(1)具有明確和挑戰(zhàn)性的共同目標(2)團隊具有很強的凝聚力(3)具有融洽的交流環(huán)境(4)具有共同的工作規(guī)范和框架(5)采用合理的開發(fā)過程9.1.4變更管理

需求變更可能發(fā)生在任何階段,即使到項目后期也會存在。后期的變更往往會對項目產(chǎn)生一些負面的影響。需求變更是軟件開發(fā)過程中開發(fā)人員和管理者們最為頭疼的一件事情。9.1.4變更管理需求變更管理一般需要完成以下幾個任務(wù):(1)確定變更控制過程。確定一個選擇、分析和決策需求變更的過程;所有的需求變更都需遵循此流程。(2)建立一個由項目風(fēng)險承擔(dān)者組成的軟件變更控制委員會(SoftwareChangControlBoard,簡稱SCCB),由他們來評估和確定需求變更。(3)進行變更影響分析,評估需求變更對項目進度、資源、工作量和項目范圍以及其他需求的影響。(4)跟蹤變更影響的產(chǎn)品,當進行某項需求變更時,根據(jù)需求跟蹤矩陣找到相關(guān)的其他需求、設(shè)計文檔、源代碼和測試用例;這些相關(guān)部分可能也需要修改。9.1.4變更管理(5)建立基準和控制版本;需求文檔要確定一個基線,之后的需求變更遵循變更控制過程即可。(6)維護變更的歷史記錄;記錄變更需求文檔版本的日期、所做的變更及其原因,還包括由誰負責(zé)更新和更新后新版本號等情況。(7)跟蹤每項需求的狀態(tài);狀態(tài)包括“確定”“已實現(xiàn)”“暫緩”“新增”“變更”等,建立一個數(shù)據(jù)庫,其中每一條記錄一項需求。(8)衡量需求穩(wěn)定性;記錄基線需求的數(shù)量和每周或每月的變更(添加、修改、刪除)數(shù)量。9.1.4變更管理表9-1需求變更申請表模板9.1.5風(fēng)險管理軟件項目風(fēng)險是指在軟件開發(fā)過程中遇到的預(yù)算和進度等方面的問題,以及這些問題對軟件項目的影響。軟件項目風(fēng)險會影響項目計劃的實現(xiàn)。如果項目風(fēng)險變成現(xiàn)實,就有可能影響項目的進度,增加項目的成本,甚至使軟件項目不能實現(xiàn)。如果對項目進行風(fēng)險進行有效管理,就可以最大限度地減少風(fēng)險的發(fā)生。項目風(fēng)險管理可劃分為識別風(fēng)險、分析風(fēng)險、規(guī)劃風(fēng)險應(yīng)對和控制風(fēng)險等過程。9.2計劃與估算本節(jié)具體介紹兩種類型的計劃,一個是貫穿項目始終的計劃,另一個是完成規(guī)格說明之后必須產(chǎn)生的詳細計劃。9.2.1計劃項目計劃完整地記錄以下內(nèi)容:要完成的工作,誰將執(zhí)行此項工作,開發(fā)進度安排,以及項目的成果是什么。計劃驅(qū)動開發(fā)基于工程項目管理技術(shù),可以看作管理大型軟件開發(fā)項目的傳統(tǒng)方法。計劃驅(qū)動的開發(fā)的問題是,由于軟件開發(fā)和使用的環(huán)境的變化,必須修改許多早期的決策。項目計劃較好的做法是將計劃驅(qū)動方法和敏捷開發(fā)結(jié)合起來,其中的平衡取決于項目的類型和人員的技術(shù)水平。9.2.1計劃(1)項目計劃

在計劃驅(qū)動的項目開發(fā)中,項目計劃包括項目可用資源的分配、工作分解以及完成工作的進度安排。

多數(shù)的計劃書應(yīng)該包括以下幾個部分:

①引言。

②項目組織。

③風(fēng)險分析。

④硬件和軟件資源需求。

⑤工作分解。

⑥項目進度安排。

⑦監(jiān)控和報告機制。9.2.1計劃(2)計劃過程項目計劃是一個迭代的過程,在項目的啟動階段,初始項目計劃的創(chuàng)建就開始了。計劃不可避免地會改變。由于在項目進行期間不斷產(chǎn)生新的關(guān)于系統(tǒng)和項目團隊的信息,所以必須經(jīng)常性地修正原有計劃,反映需求、進度安排以及風(fēng)險的變更。9.2.2軟件規(guī)模估算

9.2.2軟件規(guī)模估算

用代碼行技術(shù)度量軟件規(guī)模,當程序較小時常用的單位是代碼行數(shù)(linesofcode,簡稱LOC),當程序較大時常用的單位是千行代碼數(shù)(kilolinesofcode,簡稱KLOC)。①代碼行技術(shù)的優(yōu)點a.代碼行是所有軟件開發(fā)項目都有的“產(chǎn)品”,而且很容易計算。b.許多現(xiàn)有的軟件估算模型使用LOC或KLOC作為關(guān)鍵的輸入數(shù)據(jù)。c.已有大量基于代碼行的文獻和數(shù)據(jù)存在。②代碼行技術(shù)的缺點a.源程序僅是軟件配置的一個成分,用它的規(guī)模代表整個軟件的規(guī)模似乎不太合理。b.用不同語言實現(xiàn)同一個軟件產(chǎn)品所需要的代碼行數(shù)并不相同。c.這種方法不適用于非過程語言。9.2.2軟件規(guī)模估算(2)功能點技術(shù)

功能點技術(shù)依據(jù)對軟件信息域特性和軟件復(fù)雜性的評估結(jié)果,估算軟件規(guī)模。這種方法用功能點(functionpoints,簡稱FP)為單位,度量軟件的規(guī)模。①信息域特性功能點技術(shù)定義了信息域的5個特性,分別是輸入項數(shù)(Inp)、輸出項數(shù)(Out)、查詢數(shù)(Inq)、主文件數(shù)(Maf)和外部接口數(shù)(Inf)。a.輸入項數(shù):用戶向軟件輸入的項數(shù),這些輸入給軟件提供面向應(yīng)用的數(shù)據(jù)。b.輸出項數(shù):軟件向用戶輸出的項數(shù),它們向用戶提供面向應(yīng)用的信息,如報表、屏幕、出錯信息等。報表內(nèi)的數(shù)據(jù)項不單獨計數(shù)。c.查詢數(shù):所謂查詢是一次聯(lián)機輸入,它導(dǎo)致軟件以聯(lián)機輸出方式產(chǎn)生某種即時響應(yīng)。d.主文件數(shù):邏輯主文件(即數(shù)據(jù)的一個邏輯組合,它可能是某個大型數(shù)據(jù)庫的一部分或是一個獨立的文件)的數(shù)目。e.外部接口數(shù):機器可讀的全部接口(如磁帶或磁盤上的數(shù)據(jù)文件)的數(shù)量,用這些接口把信息傳送給另一個系統(tǒng)。9.2.2軟件規(guī)模估算②估算功能點的步驟用下述3個步驟,可以估算出一個軟件的功能點數(shù)(即軟件規(guī)模)。a.計算未調(diào)整的功能點數(shù)(UFP)。首先,把產(chǎn)品信息域的每個特性(即Inp、Out、Inq、Maf和Inf)都分類成簡單級、平均級或復(fù)雜級。根據(jù)其等級,為每個特性都分配一個功能點數(shù)。例如,一個平均級的輸入項分配4個功能點,一個簡單級的輸入項是3個功能點,而一個復(fù)雜級的輸入項分配6個功能點。9.2.2軟件規(guī)模估算表9-4信息域特性系數(shù)值復(fù)雜級別復(fù)雜級別/特性系數(shù)簡單平均復(fù)雜346457346710155710

9.2.2軟件規(guī)模估算

9.2.2軟件規(guī)模估算表9-5技術(shù)復(fù)雜性因子(TCF)序號Fi技術(shù)因素1F1數(shù)據(jù)通信2F2分布式數(shù)據(jù)處理3F3性能標準4F4高負荷的硬件5F5高處理率6F6聯(lián)機數(shù)據(jù)輸入7F7終端用戶效率8F8聯(lián)機更新9F9復(fù)雜的計算10F10可重用性11F11安裝方便12F12操作方便13F13可移植性14F14可維護性9.2.2軟件規(guī)模估算

計算機軟件估算模型使用由經(jīng)驗導(dǎo)出的公式來預(yù)測軟件開發(fā)的工作量。工作量是軟件規(guī)模(LOC或FP)的函數(shù),工作量的單位通常是人月(pm)。支持大多數(shù)估算模型的經(jīng)驗數(shù)據(jù),都是從有限個項目的樣本集中總結(jié)出來的。因此,沒有一個估算模型能夠適用于所有類型的軟件和開發(fā)環(huán)境。1981年Boehm在《軟件工程經(jīng)濟學(xué)》中首次提出了構(gòu)造性成本模型COCOMO(ConstructiveCostModel)。1997年Boehm等人提出的COCOMO2模型,是原始的COCOMO模型的修訂版,它反映了十多年來在成本估計方面所積累的經(jīng)驗。9.2.3工作量估算COCOMO2給出了3個層次的軟件開發(fā)工作量估算模型,這3個層次的模型在估算工作量時,對軟件細節(jié)考慮的詳盡程度逐級增加。這些模型既可以用于不同類型的項目,也可以用于同一個項目的不同開發(fā)階段。①應(yīng)用系統(tǒng)組成模型:這個模型主要用于估算構(gòu)建原型的工作量,模型名字暗示在構(gòu)建原型時大量使用已有的構(gòu)件。②早期設(shè)計模型:這個模型適用于體系結(jié)構(gòu)設(shè)計階段。③后體系結(jié)構(gòu)模型:這個模型適用于完成體系結(jié)構(gòu)設(shè)計之后的軟件開發(fā)階段。9.2.3工作量估算

9.2.3工作量估算9.2.3工作量估算表9-6成本因素及工作量系數(shù)成本因素級別甚低低正常高甚高特高產(chǎn)品因素要求的可靠性0.750.881.001.151.39

數(shù)據(jù)庫規(guī)模

0.931.001.091.19

產(chǎn)品復(fù)雜程度0.750.881.001.151.301.66要求的可重用性

0.911.001.141.291.49需要的文檔量0.890.951.001.061.13

平臺因素執(zhí)行時間約束

1.001.111.311.67主存約束

1.001.061.211.57平臺變動

0.101.001.151.30

人員因素分析員能力1.501.221.000.830.67

程序員能力1.371.161.000.870.74

應(yīng)用領(lǐng)域經(jīng)驗1.221.101.000.890.81

平臺經(jīng)驗1.241.101.000.920.84

語言和工作經(jīng)驗1.251.121.000.880.81

人員連續(xù)性1.241.101.000.920.84

項目因素使用軟件工具1.241.121.000.860.72

多地點開發(fā)1.251.101.000.920.840.78要求的開發(fā)進度1.291.101.001.001.00

9.2.3工作量估算9.2.3工作量估算COCOMO2使用的5個分級因素如下所述。①項目先例性:這個分級因素指出對于開發(fā)組織來說該項目的新奇程度。諸如開發(fā)類似系統(tǒng)的經(jīng)驗,需要創(chuàng)新體系結(jié)構(gòu)和算法,以及需要并行開發(fā)硬件、軟件等因素的影響,都體現(xiàn)在這個分級因素中。②開發(fā)靈活性:這個分級因素反映出為了實現(xiàn)預(yù)先確定的外部接口需求及為了及早開發(fā)出產(chǎn)品而需要增加的工作量。③風(fēng)險排除度:這個分級因素反映了重大風(fēng)險已被消除的比例。在多數(shù)情況下,這個比例和指定了重要模塊接口(即選定了體系結(jié)構(gòu))的比例密切相關(guān)。④項目組凝聚力:這個分級因素表明了開發(fā)人員相互協(xié)作時可能存在的困難。它反映了開發(fā)人員在目標和文化背景等方面相一致的程度,以及開發(fā)人員組成一個小組工作的經(jīng)驗。⑤過程成熟度:這個分級因素反映了按照能力成熟度模型度量出的項目組織的過程成熟度。9.2.4軟件項目管理計劃的組成1簡介1.1項目概述1.1.1意圖、范圍和目標1.1.2設(shè)想和限制1.1.3可交付項目1.1.4時間表和預(yù)算概述1.2項目管理計劃的演化2參考材料3定義和縮略語4項目組織4.1外部接口4.2內(nèi)部結(jié)構(gòu)4.3角色和責(zé)任5管理過程計劃5.1啟動計劃5.1.1估算計劃5.1.2人員安置計劃5.1.3資源獲取計劃5.1.4項目人員培訓(xùn)計劃5.2工作計劃5.2.1工作活動5.2.2時間表分配5.2.3資源分配5.2.4預(yù)算分配5.3控制計劃5.3.1需求控制計劃5.3.2時間表控制計劃5.3.3預(yù)算控制計劃5.3.4質(zhì)量控制計劃5.3.5報表計劃5.3.6度量收集計劃5.4風(fēng)險管理計劃5.5項目打結(jié)計劃6技術(shù)過程計劃6.1過程模型6.2方法、工具和技術(shù)6.3基礎(chǔ)結(jié)構(gòu)計劃6.4產(chǎn)品驗收計劃7支持過程計劃7.1配置管理計劃7.2測試計劃7.3歸檔計劃7.4質(zhì)量保證計劃7.5評審和審計計劃7.6問題解決計劃7.7轉(zhuǎn)包商管理計劃7.8過程提升計劃8附加計劃圖9-3IEEE項目管理計劃框架9.3軟件項目團隊管理軟件項目團隊是具有共同目標、緊密協(xié)作的一個集體,包括:項目發(fā)起人、資助者、項目組(開發(fā)團隊)、供應(yīng)商、客戶等。一般情況下,軟件項目團隊的特點是:臨時性、團隊成員的不穩(wěn)定性、年輕化程度較高、是高度集中的知識型團隊、成員的業(yè)績不易量化考核。軟件項目團隊管理就是采用科學(xué)的方法,對項目組織結(jié)構(gòu)和項目全體參與人員進行管理,在項目團隊中開展一系列科學(xué)規(guī)劃、開發(fā)培訓(xùn)、合理調(diào)配、適當激勵等方面的管理工作,使項目組織各方面的主觀能動性得到充分發(fā)揮,同時促進高效的團隊協(xié)作,以利于實現(xiàn)項目的目標。9.3.1軟件項目團隊管理概述(1)軟件項目的人力資源特征人既是最大的成本又是最重要的資源。人力成本:盡量使人力資源投

溫馨提示

  • 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)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論