版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
會(huì)計(jì)學(xué)1第2章軟件項(xiàng)目管理22.1軟件項(xiàng)目管理的概念
?
項(xiàng)目:以一套獨(dú)特而相互聯(lián)系的任務(wù)為前提,有效的利用資源,為實(shí)現(xiàn)一個(gè)特定目標(biāo)所作的工作。項(xiàng)目的成功受以下幾個(gè)因素的制約:技術(shù)范圍、成本、進(jìn)度、用戶滿意度、人員等。
?
項(xiàng)目管理的職責(zé):確保項(xiàng)目目標(biāo)的實(shí)現(xiàn),即在預(yù)算內(nèi)按時(shí)完成質(zhì)量合格的產(chǎn)品。
?
軟件項(xiàng)目管理:是對(duì)傳統(tǒng)項(xiàng)目管理進(jìn)行軟件工程化的一種擴(kuò)展與拓延,是它在軟件工程的任何技術(shù)活動(dòng)之前開(kāi)始,并持續(xù)貫穿于整個(gè)軟件定義、開(kāi)發(fā)和支持階段的庇護(hù)性活動(dòng),是決定一個(gè)產(chǎn)品或項(xiàng)目能否成功最重要的指標(biāo)之一。
第1頁(yè)/共78頁(yè)34個(gè)P(People、Product、Process、Project)對(duì)軟件項(xiàng)目管理有實(shí)質(zhì)性的影響:
人員必須被組織成有效的開(kāi)發(fā)團(tuán)隊(duì)。
產(chǎn)品需求被劃分成較小的組成部分,便于分配給軟件開(kāi)發(fā)小組。開(kāi)發(fā)過(guò)程應(yīng)根據(jù)人員和產(chǎn)品選擇合適的開(kāi)發(fā)模型。
項(xiàng)目必須被組織成便于控制和管理的方式,使有計(jì)劃的進(jìn)行。第2頁(yè)/共78頁(yè)4◆
人員:人員是一個(gè)成功軟件項(xiàng)目中最重要的因素??煞譃?類:⑴高級(jí)管理者:負(fù)責(zé)定義業(yè)務(wù)問(wèn)題,影響著項(xiàng)目。⑵技術(shù)管理者:組織、激勵(lì)和控制開(kāi)發(fā)人員。⑶開(kāi)發(fā)人員:負(fù)責(zé)開(kāi)發(fā)一個(gè)產(chǎn)品或應(yīng)用所需的技術(shù)。⑷客戶(customer):負(fù)責(zé)說(shuō)明待開(kāi)發(fā)的軟件需求。⑸最終用戶(user):直接使用發(fā)布的軟件。第3頁(yè)/共78頁(yè)5
每一個(gè)軟件項(xiàng)目都有上述的人員參與。必須被組織成有效的小組,最大限度的發(fā)輝每個(gè)人的技術(shù)和能力,激勵(lì)他們進(jìn)行高質(zhì)量的工作,并協(xié)調(diào)他們實(shí)現(xiàn)有效的通信。Constantine提出4個(gè)“組織范型”:(1)封閉式范型:傳統(tǒng)的控制層次,垂直通信,難以創(chuàng)新。(2)隨機(jī)式范型:小組管理較松散,依賴于成員個(gè)人的主動(dòng)性。不適合“有次序地完成”。(3)開(kāi)放式范型:具有封閉式范型的控制性,又包含隨機(jī)式范型的創(chuàng)新性。適合于解決復(fù)雜問(wèn)題??赡懿幌衿渌愋托〗M那么有效率。(4)同步式范型:依賴于問(wèn)題的自然劃分,小組成員各自解決問(wèn)題的獨(dú)立部分。主動(dòng)通信差。建立一個(gè)有凝聚力的小組,要有團(tuán)隊(duì)精神。第4頁(yè)/共78頁(yè)6
◆
產(chǎn)品:進(jìn)行項(xiàng)目計(jì)劃之前,應(yīng)該首先定義產(chǎn)品的目的和范圍,考慮可選的解決方案,標(biāo)識(shí)技術(shù)和管理的約束。無(wú)這些信息,就不可能進(jìn)行合理的、準(zhǔn)確的成本估算、有效的風(fēng)險(xiǎn)評(píng)估、適當(dāng)?shù)捻?xiàng)目任務(wù)劃分、可管理的項(xiàng)目進(jìn)度安排。
“目的”指從用戶的角度標(biāo)識(shí)出該產(chǎn)品的總體目標(biāo)而不考慮這些目標(biāo)如何實(shí)現(xiàn)。
“范圍”指標(biāo)識(shí)出與產(chǎn)品相關(guān)的主要數(shù)據(jù)、功能和行為。確定了目的和范圍,就可以根據(jù)產(chǎn)品交付的期限、預(yù)算的限制、可用的人員、技術(shù)接口及各種其他因素,選擇最好的解決方案途徑。
第5頁(yè)/共78頁(yè)7◆過(guò)程
根據(jù)以下條件選擇一個(gè)合適的軟件過(guò)程模型:⑴開(kāi)發(fā)人員及需要該產(chǎn)品的用戶⑵產(chǎn)品本身的特征⑶項(xiàng)目組的工作環(huán)境采用如下的框架活動(dòng)集合:客戶交流、計(jì)劃、風(fēng)險(xiǎn)分析、工程實(shí)施、構(gòu)造及發(fā)布、用戶評(píng)估。這些活動(dòng)可被修改以適應(yīng)不同軟件項(xiàng)目的特征和項(xiàng)目組的需求。每個(gè)活動(dòng)可被分解為更詳細(xì)的工作任務(wù)。如客戶交流活動(dòng)可能需要下列任務(wù):第6頁(yè)/共78頁(yè)8
⑴列出需要澄清問(wèn)題的清單⑵安排與用戶進(jìn)行討論的會(huì)議⑶評(píng)審用戶要求及范圍的陳述⑷研究推薦的解決方案⑸為正式的會(huì)議準(zhǔn)備工作文檔⑹共同制訂能反映軟件的數(shù)據(jù)、功能和行為特征的規(guī)約,形成軟件范圍的文檔⑺評(píng)審文檔⑻根據(jù)需求修改文檔
……庇護(hù)性活動(dòng)貫穿于整個(gè)過(guò)程。第7頁(yè)/共78頁(yè)9
◆項(xiàng)目有計(jì)劃的控制軟件項(xiàng)目,Boehm提出了一種方法,強(qiáng)調(diào)項(xiàng)目目標(biāo)、里程碑、進(jìn)度、責(zé)任、管理和技術(shù)方法以及需要的資源,稱之為W5H2原則。通過(guò)下面一系列的提問(wèn)和回答,可以導(dǎo)出項(xiàng)目的關(guān)鍵特征并產(chǎn)生項(xiàng)目計(jì)劃的大綱:⑴為什么(Why)該系統(tǒng)被開(kāi)發(fā)?值得嗎?⑵將做什么(What)?什么時(shí)候(When)做?建立項(xiàng)目進(jìn)度,標(biāo)識(shí)關(guān)鍵的項(xiàng)目任務(wù)和里程碑。⑶某功能由誰(shuí)(Who)負(fù)責(zé)?開(kāi)發(fā)人員的角色和責(zé)任。⑷哪里需要(Where)?客戶、用戶和其他投資者也有責(zé)任。⑸工作將如何(How)進(jìn)行?定義項(xiàng)目的管理和技術(shù)策略。⑹資源需要多少(Howmuch)?
第8頁(yè)/共78頁(yè)10
軟件項(xiàng)目管理中的主要元素及之間的關(guān)系
開(kāi)發(fā)人員、小組、角色、任務(wù)、工作產(chǎn)品、進(jìn)度表(UML類圖)之間的關(guān)系第9頁(yè)/共78頁(yè)11
軟件項(xiàng)目管理的主要內(nèi)容:
?定義問(wèn)題(確定新系統(tǒng)的作用域-目標(biāo))
?確認(rèn)項(xiàng)目的可行性
?建立項(xiàng)目的進(jìn)度計(jì)劃
?建立項(xiàng)目的質(zhì)量保證體系
?建立項(xiàng)目配置管理體系和準(zhǔn)則
?項(xiàng)目版本變更管理
?
跟蹤、監(jiān)控項(xiàng)目的進(jìn)展
?風(fēng)險(xiǎn)管理
?團(tuán)隊(duì)建設(shè)(人員管理,包括績(jī)效評(píng)估等)
第10頁(yè)/共78頁(yè)122.2可行性研究
1、可行性研究的任務(wù)和目的GB8566-88《計(jì)算機(jī)軟件開(kāi)發(fā)規(guī)范》中指出:
可行性研究的主要任務(wù)是了解客戶的要求及現(xiàn)實(shí)環(huán)境,從技術(shù)、經(jīng)濟(jì)和社會(huì)因素等方面研究并論證本軟件項(xiàng)目的可行性,編寫(xiě)可行性研究報(bào)告供項(xiàng)目管理人員評(píng)審,以便作出是否開(kāi)發(fā)軟件項(xiàng)目的決策。第11頁(yè)/共78頁(yè)13◆技術(shù)可行性
度量一個(gè)系統(tǒng)解決方案的實(shí)用性及技術(shù)資源的可用性??紤]的問(wèn)題:(1)開(kāi)發(fā)風(fēng)險(xiǎn)分析(2)資源分析(3)相關(guān)技術(shù)的發(fā)展(現(xiàn)有技術(shù)能否實(shí)現(xiàn)新系統(tǒng)、技術(shù)難點(diǎn)、建議采用技術(shù)的先進(jìn)性)第12頁(yè)/共78頁(yè)14◆經(jīng)濟(jì)可行性
主要內(nèi)容:成本/效益分析不可能得到精確的分析結(jié)果?系統(tǒng)成本:①軟件開(kāi)發(fā)費(fèi)用②購(gòu)置并安裝軟硬件機(jī)有關(guān)設(shè)備的費(fèi)用估算③系統(tǒng)安裝、運(yùn)行和維護(hù)費(fèi)用④人員培訓(xùn)費(fèi)用?系統(tǒng)效益包括經(jīng)濟(jì)效益和社會(huì)效益經(jīng)濟(jì)效益:可通過(guò)直接的或統(tǒng)計(jì)的方法估算社會(huì)效益:定性的方法估算第13頁(yè)/共78頁(yè)15◆社會(huì)因素可行性
政策、法律、使用、環(huán)境等2、可行性研究的步驟(1)復(fù)查確認(rèn)系統(tǒng)目標(biāo)、規(guī)模(2)研究現(xiàn)行系統(tǒng)的工作流程(3)導(dǎo)出目標(biāo)系統(tǒng)高層邏輯模型(4)導(dǎo)出和評(píng)價(jià)供選擇的方案(5)推薦可行的方案(6)編寫(xiě)可行性研究報(bào)告,送審第14頁(yè)/共78頁(yè)163、可行性研究報(bào)告的編寫(xiě)提示(1)引言:編寫(xiě)目的、背景、定義、參考資料;(2)可行性研究的前提:要求、目標(biāo)、條件、假定和限制、進(jìn)行可行性研究的方法、評(píng)價(jià)尺度;(3)對(duì)現(xiàn)有系統(tǒng)的分析:工作流程、工作負(fù)荷、費(fèi)用開(kāi)支、人員、設(shè)備、局限性;(4)所建議的系統(tǒng):說(shuō)明、數(shù)據(jù)流程和處理流程、改進(jìn)之處、影響、局限性、技術(shù)條件的可行性;(5)可選擇的其它系統(tǒng)方案;(6)投資及收益分析:支出、收益、收益/投資比、投資回收期等;(7)社會(huì)條件方面的可行性(法律、使用)。
第15頁(yè)/共78頁(yè)17例:一個(gè)軟件系統(tǒng)的開(kāi)發(fā)費(fèi)用(一次):人員:2名系統(tǒng)分析員(450小時(shí)/名,45美元/小時(shí))$40,500
5名系統(tǒng)開(kāi)發(fā)人員(275小時(shí)/名,36美元/小時(shí))$49,5001名數(shù)據(jù)通訊專家(60小時(shí)/名,42美元/小時(shí))$2,520
1名數(shù)據(jù)庫(kù)管理員(30小時(shí)/名,42美元/小時(shí))$1,2602名技術(shù)寫(xiě)作者(120小時(shí)/名,25美元/小時(shí))$6,0001名秘書(shū)(160小時(shí)/名,15美元/小時(shí))$2,4002名在轉(zhuǎn)換期間數(shù)據(jù)輸入人員$960(40小時(shí)/名,12美元/小時(shí))
第16頁(yè)/共78頁(yè)18培訓(xùn):三天的開(kāi)發(fā)人員內(nèi)部培訓(xùn)課程$7,00030個(gè)用戶,三天的內(nèi)部培訓(xùn)課程$10,000復(fù)印$500磁盤(pán)、紙張等消耗品$650購(gòu)買(mǎi)硬件、軟件:20臺(tái)工作站W(wǎng)indows軟件$1,00020臺(tái)工作站內(nèi)存升級(jí)$8,000網(wǎng)絡(luò)軟件$17,50020臺(tái)工作站辦公軟件產(chǎn)品$20,000系統(tǒng)開(kāi)發(fā)總費(fèi)用$167,790(成本)第17頁(yè)/共78頁(yè)19
一個(gè)系統(tǒng)的年運(yùn)行費(fèi)用(每年):人員:維護(hù)程序員/分析員(250小時(shí)/年,42美元/小時(shí))$10,500網(wǎng)絡(luò)管理員(300小時(shí)/年,50美元/小時(shí))$15,000購(gòu)買(mǎi)硬件、軟件升級(jí):硬件$5,000軟件$6,000物資和雜項(xiàng)$3,500每年總運(yùn)行費(fèi)用$40,000第18頁(yè)/共78頁(yè)202.3軟件度量
軟件度量(metrics)域分為過(guò)程度量、項(xiàng)目度量和產(chǎn)品度量。對(duì)過(guò)程、項(xiàng)目及產(chǎn)品的特定屬性進(jìn)行度量產(chǎn)生指導(dǎo)管理及技術(shù)動(dòng)作的指標(biāo),使得管理者和開(kāi)發(fā)者能夠:
?
改善軟件過(guò)程
?
輔助軟件項(xiàng)目計(jì)劃
?
跟蹤及控制軟件項(xiàng)目的進(jìn)展
?
評(píng)價(jià)軟件產(chǎn)品的質(zhì)量第19頁(yè)/共78頁(yè)21
軟件度量的方式:直接度量間接度量
?軟件工程過(guò)程的直接度量包括所投入的成本和工作量。
?軟件產(chǎn)品的直接度量包括產(chǎn)生的代碼行數(shù)(LOC)、執(zhí)行速度、存儲(chǔ)量大小、在某種時(shí)間周期中所報(bào)告的錯(cuò)誤數(shù)。
?軟件產(chǎn)品的間接度量包括功能性、復(fù)雜性、效率、可靠性、可維護(hù)性和許多其它的質(zhì)量特性。第20頁(yè)/共78頁(yè)221.過(guò)程和項(xiàng)目的度量
◆過(guò)程度量:
使一個(gè)組織從戰(zhàn)略上考察已有過(guò)程的功效,如開(kāi)發(fā)范型、工程任務(wù)的劃分、工作產(chǎn)品、里程碑等,使管理者評(píng)估那些部分起了作用。度量數(shù)據(jù)的收集跨越所有的項(xiàng)目,經(jīng)歷較長(zhǎng)的時(shí)間,目的是改善軟件過(guò)程。間接的度量一個(gè)軟件過(guò)程的功效:
?軟件發(fā)布之前發(fā)現(xiàn)的錯(cuò)誤數(shù)
?交付給用戶后報(bào)告的缺陷數(shù)
?花費(fèi)的工作量、時(shí)間、成本
?與進(jìn)度計(jì)劃是否一致
第21頁(yè)/共78頁(yè)23
個(gè)體軟件過(guò)程(如PSP)提供了表格、腳本、標(biāo)準(zhǔn)以幫助開(kāi)發(fā)人員估算、計(jì)劃以及度量、跟蹤自己工作的方法。過(guò)程度量對(duì)于一個(gè)組織(如企業(yè))提高其總體的過(guò)程成熟度能提供很大的幫助。如一個(gè)產(chǎn)品中,需求規(guī)約缺陷占了25.5%,原因如圖所示。通過(guò)分析一個(gè)完整的魚(yú)骨圖可以導(dǎo)出能改進(jìn)軟件過(guò)程以降低錯(cuò)誤和缺陷率的頻率。
第22頁(yè)/共78頁(yè)24
◆項(xiàng)目度量:
是戰(zhàn)術(shù)的,使項(xiàng)目管理者能夠以實(shí)時(shí)的方式改進(jìn)項(xiàng)目的工作流程及技術(shù)方法,如軟件項(xiàng)目的工作量及時(shí)間的估算。
項(xiàng)目度量的基礎(chǔ)是歷史項(xiàng)目中收集的數(shù)據(jù)。隨著項(xiàng)目的進(jìn)展,所花費(fèi)的工作量及時(shí)間和預(yù)算的值進(jìn)行比較,從而控制項(xiàng)目的進(jìn)展。另外,可根據(jù)文檔的頁(yè)數(shù)、評(píng)審的時(shí)間、功能點(diǎn)及源代碼行數(shù)來(lái)度量軟件的生產(chǎn)率。
第23頁(yè)/共78頁(yè)25
項(xiàng)目度量可在項(xiàng)目進(jìn)行的基礎(chǔ)上評(píng)估產(chǎn)品的質(zhì)量,以指導(dǎo)在必要時(shí)修改技術(shù)方法以改進(jìn)質(zhì)量。軟件項(xiàng)目度量建議每個(gè)項(xiàng)目都應(yīng)該測(cè)量:
?輸入:完成工作所需要的資源(如人員、環(huán)境);
?輸出:軟件工程過(guò)程中產(chǎn)生的工作產(chǎn)品;
?結(jié)果:最終產(chǎn)品的有效性。項(xiàng)目度量集成起來(lái)產(chǎn)生對(duì)整個(gè)軟件組織公用的過(guò)程度量。
第24頁(yè)/共78頁(yè)262.軟件度量的方法
(1)面向規(guī)模的度量
是對(duì)軟件和軟件開(kāi)發(fā)過(guò)程的直接度量。可以建立一個(gè)面向規(guī)模的數(shù)據(jù)表格來(lái)記錄項(xiàng)目的某些信息。該表格列出了在過(guò)去幾年完成的每一個(gè)軟件開(kāi)發(fā)項(xiàng)目和關(guān)于這些項(xiàng)目的相應(yīng)面向規(guī)模的數(shù)據(jù)。
第25頁(yè)/共78頁(yè)27
基于所生產(chǎn)軟件的“規(guī)?!?,使用代碼行作為其他計(jì)算的規(guī)范化因子。計(jì)算:
?每千行代碼(KLOC)的錯(cuò)誤數(shù)。
?每KLOC
的缺陷數(shù)。
?每個(gè)LOC的花費(fèi)成本。
?每KLOC的文檔頁(yè)數(shù)
?每人月的錯(cuò)誤數(shù)。
?每人月的代碼行。
?每頁(yè)文檔的成本。
第26頁(yè)/共78頁(yè)28
可制作一個(gè)如下的表:
對(duì)該方法的有效性有爭(zhēng)議:
支持:易計(jì)算,很多軟件估算模型以它為關(guān)鍵的輸入。
反對(duì):LOC依賴于語(yǔ)言,不適用于非過(guò)程化語(yǔ)言,在分析與設(shè)計(jì)完成之前難以估算。項(xiàng)目名KLOC工作量(人月)成本(萬(wàn)元)文檔頁(yè)數(shù)錯(cuò)誤缺陷人員BETA1236101556085第27頁(yè)/共78頁(yè)29
(2)面向功能的度量
“功能”不能直接測(cè)量,利用其他的測(cè)量數(shù)據(jù)間接地導(dǎo)出。Albrecht提出來(lái)的一種稱為功能點(diǎn)的度量。用下表計(jì)算5個(gè)信息域的值:
第28頁(yè)/共78頁(yè)30其中:
?用戶輸入數(shù):每個(gè)用戶向系統(tǒng)提供的不同應(yīng)用的輸入數(shù)據(jù)。
?用戶輸出數(shù):系統(tǒng)向每個(gè)用戶提供的信息,如報(bào)表、屏幕信息、出錯(cuò)信息等。
?用戶查詢數(shù):每個(gè)不同的詢問(wèn)/響應(yīng)的交互操作。
?文件數(shù):可以是數(shù)據(jù)庫(kù)的一部分或是一個(gè)獨(dú)立的文件。
?外部接口數(shù):與系統(tǒng)中其他設(shè)備通過(guò)外部接口讀寫(xiě)信息的次數(shù)。
“簡(jiǎn)單、平均、復(fù)雜”中的常量值是加權(quán)因子,根據(jù)經(jīng)驗(yàn)確定。
第29頁(yè)/共78頁(yè)31
利用以下公式計(jì)算功能點(diǎn)(FP):FP=總計(jì)數(shù)值×(0.65+0.01×
Fi)
其中Fi(i=1~14)是回答14個(gè)方面問(wèn)題而得到的復(fù)雜度調(diào)整值(值域?yàn)?~5),如輸入、輸出、查詢及內(nèi)部處理復(fù)雜嗎?代碼復(fù)用嗎?有分布處理嗎等等(詳見(jiàn)p64)。計(jì)算出功能點(diǎn)。就可進(jìn)行以下度量:
?每個(gè)功能點(diǎn)的錯(cuò)誤數(shù)。
?每個(gè)功能點(diǎn)的缺陷數(shù)。
?每個(gè)功能點(diǎn)的成本。
?每個(gè)功能點(diǎn)的文檔頁(yè)數(shù)。
?每人月完成的功能點(diǎn)數(shù)。第30頁(yè)/共78頁(yè)32代碼行和功能點(diǎn)度量之間的關(guān)系依賴于實(shí)現(xiàn)軟件所采用的程序設(shè)計(jì)語(yǔ)言及設(shè)計(jì)的質(zhì)量。下面給出了在不同的程序設(shè)計(jì)語(yǔ)言中建造一個(gè)功能點(diǎn)所需的平均代碼行數(shù)的統(tǒng)計(jì):程序設(shè)計(jì)語(yǔ)言LOC/FP
匯編語(yǔ)言320
C128FORTRAN106Pascal90C++64Java46VisualBASIC32PowerBuilder16SQL12
第31頁(yè)/共78頁(yè)33
3、軟件質(zhì)量度量
軟件工程的目標(biāo)是產(chǎn)生高質(zhì)量的系統(tǒng)或產(chǎn)品。質(zhì)量依賴于描述問(wèn)題的需求、建模、設(shè)計(jì)、編碼、測(cè)試。質(zhì)量度量貫穿于軟件工程的全過(guò)程中以及軟件交付用戶使用之后。應(yīng)評(píng)估分析與設(shè)計(jì)模型、源代碼、測(cè)試案例的質(zhì)量。
第32頁(yè)/共78頁(yè)34
在軟件交付之前得到的度量數(shù)據(jù)可作為判斷設(shè)計(jì)和測(cè)試質(zhì)量好壞的依據(jù)。這一類度量包括程序復(fù)雜性、有效的模塊性和總的程序規(guī)模。
在軟件交付之后的度量數(shù)據(jù)則把注意力集中于還未發(fā)現(xiàn)的缺陷數(shù)和系統(tǒng)的可維護(hù)性方面。
McCall提出了影響軟件質(zhì)量的11個(gè)因素(詳見(jiàn)P367),其中重要的有以下幾點(diǎn):
?正確性:軟件完成所需功能的程度,最常用
“缺陷數(shù)/kLoc”來(lái)測(cè)量。第33頁(yè)/共78頁(yè)35
?可維護(hù)性:遇到錯(cuò)誤時(shí)程序能被修改的容易程度、環(huán)境變化時(shí)程序能被適應(yīng)的容易程度、用戶希望改變需求時(shí)程序能被增強(qiáng)的容易程度,一種最簡(jiǎn)單的測(cè)量方法是計(jì)算平均修改時(shí)間(MTTC)。
?完整性:測(cè)量系統(tǒng)在安全方面的抗攻擊性。
完整性=Σ[(1-威脅)×(1-安全性)]
其中威脅是某個(gè)特定類型的攻擊在給定時(shí)間內(nèi)發(fā)生的可能性。安全性是某個(gè)特定類型的攻擊將被擊退的可能性。
?可用性:用戶友好性。另外還有可靠性、效率、可測(cè)試性、可移植性、可復(fù)用性等等。
第34頁(yè)/共78頁(yè)362.4軟件項(xiàng)目計(jì)劃
項(xiàng)目計(jì)劃既指出了項(xiàng)目組織未來(lái)努力的方向和奮斗目標(biāo),又是當(dāng)前行動(dòng)的準(zhǔn)則。針對(duì)不同工作目標(biāo),軟件項(xiàng)目計(jì)劃有:
?項(xiàng)目實(shí)施計(jì)劃(軟件開(kāi)發(fā)計(jì)劃)這是軟件開(kāi)發(fā)的綜合性計(jì)劃,通常應(yīng)包括任務(wù)、進(jìn)度、人力、環(huán)境、資源、組織等多個(gè)方面。
?質(zhì)量保證計(jì)劃把軟件開(kāi)發(fā)的質(zhì)量要求具體規(guī)定為每個(gè)開(kāi)發(fā)階段可以檢查的質(zhì)量保證活動(dòng)。
?軟件測(cè)試計(jì)劃規(guī)定測(cè)試活動(dòng)的任務(wù)、測(cè)試方法、進(jìn)度、資源、人員職責(zé)等。
第35頁(yè)/共78頁(yè)37
?文檔編制計(jì)劃規(guī)定所開(kāi)發(fā)項(xiàng)目應(yīng)編制的文檔種類、內(nèi)容、進(jìn)度、人員職責(zé)等。
?用戶培訓(xùn)計(jì)劃規(guī)定對(duì)用戶進(jìn)行培訓(xùn)的目標(biāo)、要求、進(jìn)度、人員職責(zé)等。
?綜合支持計(jì)劃規(guī)定軟件開(kāi)發(fā)過(guò)程中所需要的支持,以及如何獲取和利用這些支持。
?軟件發(fā)布計(jì)劃軟件開(kāi)發(fā)項(xiàng)目完成后,如何提交給用戶。這里,主要針對(duì)綜合計(jì)劃來(lái)介紹。第36頁(yè)/共78頁(yè)38項(xiàng)目管理是一個(gè)創(chuàng)造的過(guò)程,項(xiàng)目早期的不確定性因素,使計(jì)劃不可能在啟動(dòng)階段就全部一次完成,需逐步展開(kāi)和不斷修正,這又取決于計(jì)劃執(zhí)行情況的反饋與及時(shí)的信息交流。制訂項(xiàng)目基準(zhǔn)計(jì)劃(BaselinePlan)的步驟:①定義項(xiàng)目目標(biāo),確定軟件范圍②把項(xiàng)目按項(xiàng)目范圍分解為多個(gè)任務(wù)③確定對(duì)應(yīng)每個(gè)任務(wù)必須執(zhí)行的活動(dòng)④將每個(gè)任務(wù)分配給一個(gè)小組,并為每個(gè)開(kāi)發(fā)者分配角色和職責(zé)⑤用Gantt圖或PERT圖表示出項(xiàng)目的進(jìn)度
第37頁(yè)/共78頁(yè)391、軟件項(xiàng)目估算項(xiàng)目計(jì)劃的一個(gè)重要的前提是項(xiàng)目估算(有時(shí)在可行性研究階段完成),一般以團(tuán)隊(duì)的歷史經(jīng)驗(yàn)為基礎(chǔ),讓團(tuán)隊(duì)中的一線人員參與估算,才能保證項(xiàng)目計(jì)劃的可行性。成本及工作量的估算不是一門(mén)精確的科學(xué),有幾種選擇:
?
基于已完成的類似項(xiàng)目進(jìn)行估算;
?使用分解技術(shù)以生成項(xiàng)目成本及工作量的估算;
?使用一個(gè)或多個(gè)經(jīng)驗(yàn)?zāi)P停?/p>
(1)分解技術(shù)分解技術(shù)采用“分而治之”的策略進(jìn)行軟件項(xiàng)目估算。將項(xiàng)目分解成若干主要功能及相關(guān)的軟件過(guò)程活動(dòng),通過(guò)逐步求精的方式進(jìn)行成本及工作量估算。具體方法為:
第38頁(yè)/共78頁(yè)40
劃分主要的軟件功能,接著估算:①Loc的數(shù)量②對(duì)于FP,估算每個(gè)信息域特征(輸入、輸出、數(shù)據(jù)文件、查詢、外部接口)及14個(gè)復(fù)雜度調(diào)整值③實(shí)現(xiàn)每個(gè)功能所需的人月數(shù)④每個(gè)軟件過(guò)程活動(dòng)所需人月數(shù)基本的估算方法:
?自頂向下估算:總成本按階段、步驟、工作單元?自底向上估算:先劃分,分別估算每個(gè)子任務(wù)所需的工作量,然后∑。
第39頁(yè)/共78頁(yè)41?差別估算法:與類似項(xiàng)目比較,估算每個(gè)不同之處對(duì)成本的影響。還有專家估算法等等。(2)經(jīng)驗(yàn)估算模型經(jīng)驗(yàn)估算模型可用于補(bǔ)充分解技術(shù),并提供一種潛在有價(jià)值的估算方法。該模型是基于經(jīng)驗(yàn)(歷史數(shù)據(jù))的,可以用下面的形式表示:
=?()其中
是要估算的值(如工作量、成本、項(xiàng)目持續(xù)時(shí)間)之一,是選擇出來(lái)的獨(dú)立參數(shù)(如被估算的Loc或FP)。第40頁(yè)/共78頁(yè)42
由經(jīng)驗(yàn)導(dǎo)出的公式,最著名的是COCOMO模型,構(gòu)造型成本模型(COnstructiveCOstMOdel)。初期的模型廣泛的使用于軟件成本估算,發(fā)展到反映不同階段的成本。
初始模型的分類:?基本COCOMO模型是靜態(tài)單變量模型,用源代碼行數(shù)(LOC)為自變量的經(jīng)驗(yàn)函數(shù)計(jì)算軟件開(kāi)發(fā)工作量。?中間COCOMO模型該模型在用LOC為自變量的函數(shù)計(jì)算軟件開(kāi)發(fā)工作量的基礎(chǔ)上,用涉及產(chǎn)品、硬件、人員、項(xiàng)目等方面的影響因素調(diào)整工作量估算。?詳細(xì)COCOMO模型該模型包括中間COCOMO模型的所有特性,但用上述各種影響因素調(diào)整工作量估算時(shí),還要考慮對(duì)軟件工程過(guò)程中每一步驟(分析、設(shè)計(jì)等)的影響。
第41頁(yè)/共78頁(yè)43
模型的擴(kuò)展:COCOCOMⅡ使用對(duì)象點(diǎn)、功能點(diǎn)、源代碼行作為不同層次模型的參數(shù)。
對(duì)象點(diǎn)只是一種間接軟件測(cè)量數(shù),使用以下計(jì)數(shù):①用戶界面上的屏幕數(shù)②報(bào)表數(shù)③建立應(yīng)用軟件需要的構(gòu)件數(shù)。每個(gè)對(duì)象實(shí)例(如一個(gè)屏幕或一個(gè)報(bào)表)給出三個(gè)復(fù)雜度權(quán)數(shù)(簡(jiǎn)單、中等、復(fù)雜),如一個(gè)屏幕的權(quán)簡(jiǎn)單為1,中等為2,復(fù)雜為3。通過(guò)以下公式計(jì)算總對(duì)象點(diǎn)數(shù):第42頁(yè)/共78頁(yè)44Σ(初始的對(duì)象實(shí)例數(shù)×加權(quán)因子)=總的對(duì)象點(diǎn)(NOP)當(dāng)應(yīng)用基于構(gòu)件的開(kāi)發(fā)時(shí),對(duì)象點(diǎn)計(jì)數(shù)調(diào)整為:NOP=NOP×[(100-%復(fù)用)/100]進(jìn)而計(jì)算:生產(chǎn)率=NOP/人月針對(duì)不同級(jí)別的開(kāi)發(fā)者經(jīng)驗(yàn)和開(kāi)發(fā)環(huán)境成熟度,給出對(duì)象點(diǎn)的生產(chǎn)率:非常低低額定高非常高47132550項(xiàng)目工作量=NOP/生產(chǎn)率第43頁(yè)/共78頁(yè)45
2、項(xiàng)目進(jìn)度安排項(xiàng)目計(jì)劃中的一個(gè)重要內(nèi)容是建立進(jìn)度表,該表對(duì)項(xiàng)目進(jìn)度進(jìn)行科學(xué)度量、調(diào)整項(xiàng)目計(jì)劃起很重要的作用。在眾多軟件項(xiàng)目中,缺乏合理的進(jìn)度安排是造成項(xiàng)目泄后的最主要原因。進(jìn)度安排為項(xiàng)目管理者和開(kāi)發(fā)者建立了一張行路圖。
(1)進(jìn)度安排的指導(dǎo)原則:
?劃分:項(xiàng)目分解成若干易于管理的任務(wù)。如何進(jìn)行任務(wù)的分解呢?可從兩個(gè)方面獲得幫助:①軟件開(kāi)發(fā)模型:模型幫助將整個(gè)項(xiàng)目進(jìn)行階段性的劃分,這些階段可以做計(jì)劃中很重要的里程碑。
②
軟件開(kāi)發(fā)需求:開(kāi)發(fā)模型只給項(xiàng)目計(jì)劃提供了個(gè)框架,需求的整理與規(guī)格化,是細(xì)化項(xiàng)目計(jì)劃的基礎(chǔ)。
第44頁(yè)/共78頁(yè)46
?
相互依賴性:各個(gè)被劃分的活動(dòng)或任務(wù)之間的相互關(guān)系必須是確定的。有些任務(wù)必須順序進(jìn)行,有些可以并發(fā)進(jìn)行。
?
時(shí)間分配:必須為每個(gè)被調(diào)度的任務(wù)分配一定數(shù)量的工作單位(如,人天、人月),并指定開(kāi)始和結(jié)束日期。
?
工作量確認(rèn):每個(gè)項(xiàng)目都有預(yù)定數(shù)量的人員參與。在進(jìn)行時(shí)間分配時(shí),必須確保在任意時(shí)段中分配給任務(wù)的人員數(shù)量不會(huì)超過(guò)項(xiàng)目組中的人員總量。
?
定義的責(zé)任:每個(gè)被調(diào)度的任務(wù)都應(yīng)該指定某個(gè)特定的小組成員來(lái)負(fù)責(zé)。
?
定義的結(jié)果:每個(gè)被調(diào)度的任務(wù)都應(yīng)該有一個(gè)定義好的輸出結(jié)果,輸出結(jié)果通常是一個(gè)工作產(chǎn)品或某個(gè)工作產(chǎn)品的一部分。
?
定義的里程碑:每個(gè)任務(wù)或任務(wù)組都應(yīng)該與一個(gè)項(xiàng)目里程碑相關(guān)聯(lián)。當(dāng)一個(gè)或多個(gè)工作產(chǎn)品經(jīng)過(guò)質(zhì)量評(píng)審并且得到認(rèn)可時(shí),標(biāo)志著一個(gè)里程碑的完成。
第45頁(yè)/共78頁(yè)47(2)工作量分配(指導(dǎo)原則)計(jì)劃需求分析設(shè)計(jì)編碼測(cè)試
2%~3%10%~25%20%~25%15%~20%30%~40%(3)進(jìn)度表(圖)
?
甘特圖(GanttChart)
也稱時(shí)間表,所有的項(xiàng)目任務(wù)都在左邊的欄目中列出。水平條表示每個(gè)任務(wù)的持續(xù)時(shí)間,當(dāng)同一時(shí)間段中存在多個(gè)水平條時(shí),表示任務(wù)之間存在并發(fā)。
?
PERT(ProgramEvaluationReviewTechnique)圖也稱任務(wù)網(wǎng)絡(luò)圖,表示一個(gè)項(xiàng)目的任務(wù)流程,刻畫(huà)了各項(xiàng)任務(wù)、任務(wù)之間的依賴關(guān)系及任務(wù)的持續(xù)時(shí)間。它的最簡(jiǎn)單形式可當(dāng)作宏觀進(jìn)度表使用。第46頁(yè)/共78頁(yè)48
Gantt圖Gantt圖可清晰的表達(dá)每個(gè)任務(wù)活動(dòng)的進(jìn)展以及并發(fā)活動(dòng)。水平條的顏色既可以表示概要任務(wù)和詳細(xì)任務(wù)的分解,也可以表示任務(wù)完成的情況。用一個(gè)特定的符號(hào)(如黑菱形)表示一個(gè)活動(dòng)的結(jié)束(里程碑),以便檢查階段成果和最后成果。
第47頁(yè)/共78頁(yè)49
PERT圖PERT圖另一個(gè)重要的用途是用來(lái)判斷關(guān)鍵路徑,關(guān)鍵路徑表明了完成該項(xiàng)目可能需要的最小時(shí)間,并能識(shí)別最有可能成為瓶頸的活動(dòng),該路徑上的活動(dòng)是項(xiàng)目負(fù)責(zé)人或小組長(zhǎng)抓的主要工作。非關(guān)鍵路徑上的活動(dòng)延遲,不會(huì)導(dǎo)致項(xiàng)目總體進(jìn)度偏離。下圖是一個(gè)項(xiàng)目的總的PERT圖。
第48頁(yè)/共78頁(yè)50第49頁(yè)/共78頁(yè)51說(shuō)明:①考慮進(jìn)度表中的變化:建立進(jìn)度表時(shí),項(xiàng)目分解為哪些任務(wù)以及任務(wù)持續(xù)的時(shí)間往往根據(jù)歷史數(shù)據(jù)估算而來(lái),項(xiàng)目進(jìn)展過(guò)程中未預(yù)料到的事件,如需求的變化或較晚發(fā)現(xiàn)的設(shè)計(jì)缺陷,都會(huì)打亂進(jìn)度表,因此在進(jìn)度表中為將來(lái)可能的變化留有余地。②進(jìn)度表可有不同的抽象層次:高層進(jìn)度表反映整個(gè)項(xiàng)目的進(jìn)度,應(yīng)包括所有可交付產(chǎn)品的期限,底層進(jìn)度表是任務(wù)和時(shí)間的分解??芍谱鞫唐趦?nèi)的進(jìn)度表,其余部分在項(xiàng)目進(jìn)行過(guò)程中完成。底層進(jìn)度表可用于指導(dǎo)每個(gè)小組的進(jìn)度。③每個(gè)里程碑可以附帶一個(gè)標(biāo)識(shí)進(jìn)度值的百分比,用來(lái)說(shuō)明項(xiàng)目完成了多少,如:30%。
第50頁(yè)/共78頁(yè)52
項(xiàng)目開(kāi)展階段管理活動(dòng)圖(UML活動(dòng)圖)
2.5項(xiàng)目進(jìn)度的跟蹤
第51頁(yè)/共78頁(yè)53
1、項(xiàng)目啟動(dòng)
進(jìn)行項(xiàng)目計(jì)劃
2、項(xiàng)目開(kāi)展
項(xiàng)目的監(jiān)督與跟蹤
(1)收集狀況信息的方式
?
定期報(bào)告:非正式的會(huì)議和交流,報(bào)告工作產(chǎn)品、進(jìn)度誤差等需要及早溝通的信息。
?
里程碑的監(jiān)督與驗(yàn)證:里程碑可以是事件,也可以是工作產(chǎn)品,驗(yàn)證是否在預(yù)定時(shí)間內(nèi)完成。
?
項(xiàng)目檢查:正式會(huì)議,所有開(kāi)發(fā)人員交換活動(dòng)進(jìn)展?fàn)顩r,比較各項(xiàng)任務(wù)實(shí)際開(kāi)始日期與計(jì)劃開(kāi)始日期。
?
代碼檢查:同事之間的正式代碼檢查。
?
原型示范:原型是為了驗(yàn)證需求或?yàn)榱嗽u(píng)估技術(shù)和功能而部分實(shí)現(xiàn)的系統(tǒng),可用來(lái)估算初始進(jìn)度。
第52頁(yè)/共78頁(yè)54
?
度量:主要是修正錯(cuò)誤數(shù)目的度量,即還需要付出多少努力的估量。
(2)項(xiàng)目再計(jì)劃根據(jù)項(xiàng)目的變化動(dòng)態(tài)更新項(xiàng)目計(jì)劃,應(yīng)對(duì)一些新的需求、新的變化、突發(fā)因素做出響應(yīng),或解決問(wèn)題以適應(yīng)計(jì)劃,或調(diào)整計(jì)劃以保證最后按時(shí)交付產(chǎn)品。
(3)風(fēng)險(xiǎn)管理風(fēng)險(xiǎn)是一些不利因素實(shí)際發(fā)生的可能性。如:人員跳槽,管理層變更,硬件缺乏,需求變化,描述延遲,低估了系統(tǒng)的規(guī)模,工具性能差,技術(shù)變更,產(chǎn)品竟?fàn)幍鹊取?/p>
第53頁(yè)/共78頁(yè)55風(fēng)險(xiǎn)管理的活動(dòng)有:
?風(fēng)險(xiǎn)識(shí)別:確定風(fēng)險(xiǎn)的類型(管理、技術(shù))。
?風(fēng)險(xiǎn)分析:評(píng)估風(fēng)險(xiǎn)出現(xiàn)的可能性及其后果。
?風(fēng)險(xiǎn)規(guī)劃:制定避免或降低風(fēng)險(xiǎn)的策略。
?風(fēng)險(xiǎn)控制:定期進(jìn)行風(fēng)險(xiǎn)評(píng)估,及時(shí)修正緩解風(fēng)險(xiǎn)的計(jì)劃。3、項(xiàng)目總結(jié)
?用戶驗(yàn)收:根據(jù)項(xiàng)目協(xié)議中規(guī)定的驗(yàn)收標(biāo)準(zhǔn)對(duì)系統(tǒng)進(jìn)行評(píng)價(jià),并通過(guò)場(chǎng)景演示,測(cè)試系統(tǒng)功能性和非功能性需求。
?安裝:在目標(biāo)環(huán)境下安裝、運(yùn)行系統(tǒng)并提交文檔。
?總結(jié):總結(jié)經(jīng)驗(yàn)教訓(xùn),建立團(tuán)隊(duì)工作效率的歷史檔案,以便提高個(gè)人和團(tuán)隊(duì)整體的軟件工程能力。第54頁(yè)/共78頁(yè)562.6軟件質(zhì)量保證
1、概述軟件質(zhì)量是軟件產(chǎn)品、體系或過(guò)程的一組固有特性滿足(顧客和其他相關(guān)方)要求的程度。軟件質(zhì)量保證(SoftwareQualityAssurance,SQA)是一種應(yīng)用于整個(gè)軟件過(guò)程的庇護(hù)性活動(dòng),包含:
?質(zhì)量管理方法
?有效的軟件工程方法和工具
?過(guò)程中采用的正式技術(shù)評(píng)審
?多層次的測(cè)試策略
?對(duì)軟件文檔及其修改的控制
?保證與開(kāi)發(fā)標(biāo)準(zhǔn)符合的規(guī)程
?軟件度量及報(bào)告機(jī)制等等方面的內(nèi)容第55頁(yè)/共78頁(yè)57
軟件質(zhì)量保證的對(duì)象一般有三方面:產(chǎn)品、過(guò)程和質(zhì)量體系實(shí)施軟件質(zhì)量保證需運(yùn)用幾種支持過(guò)程作為質(zhì)量保證的手段。
?驗(yàn)證或確認(rèn):通過(guò)提供客觀證據(jù)對(duì)規(guī)定要求已得到滿足的認(rèn)定。
?評(píng)審或?qū)徍耍捍_定主題事項(xiàng)達(dá)到規(guī)定目標(biāo)的適應(yīng)性、充分性和有效性所進(jìn)行的活動(dòng)。聯(lián)合評(píng)審是由任何兩方(評(píng)價(jià)方和被評(píng)價(jià)方)用來(lái)在適當(dāng)時(shí)機(jī)對(duì)項(xiàng)目的某個(gè)活動(dòng)的狀態(tài)和產(chǎn)品進(jìn)行評(píng)價(jià)并可能形成文件的過(guò)程。
第56頁(yè)/共78頁(yè)58
2、軟件質(zhì)量保證過(guò)程中的數(shù)據(jù)
SQA過(guò)程中必然產(chǎn)生有關(guān)產(chǎn)品、過(guò)程和體系質(zhì)量的多種數(shù)據(jù),是進(jìn)行下一步工作的決策依據(jù),對(duì)于提高質(zhì)量管理效果和改進(jìn)質(zhì)量管理過(guò)程至關(guān)重要。要收集、存儲(chǔ)、及時(shí)分析和使用這些數(shù)據(jù),才能做好質(zhì)量保證工作。質(zhì)量數(shù)據(jù)有多種:
?項(xiàng)目規(guī)模:FP表示軟件大小,以功能點(diǎn)計(jì)數(shù);
?工作量E:表示項(xiàng)目的人力總投入,以人月計(jì)數(shù);
?生產(chǎn)率:
P=FP/E;
?缺陷數(shù):D1表示軟件交付前發(fā)現(xiàn)的錯(cuò)誤數(shù),D2表示交付后發(fā)現(xiàn)的缺陷數(shù);
?質(zhì)量:Q=D2/FP,表示每個(gè)功能點(diǎn)包含多少交付的缺陷,
?缺陷引入率:DI=(D1+D2)/FP,整個(gè)項(xiàng)目生存期中每個(gè)功能點(diǎn)發(fā)現(xiàn)的缺陷數(shù);?缺陷排除率:
DR=D1/DI第57頁(yè)/共78頁(yè)59
3、SQA的實(shí)施(1)SQA小組的職責(zé)
SQA活動(dòng)與兩種不同的參與者相關(guān):做開(kāi)發(fā)工作的軟件工程師和獨(dú)立的SQA小組。軟件開(kāi)發(fā)人員對(duì)質(zhì)量的考慮:采用可靠的技術(shù)方法,進(jìn)行正式的技術(shù)評(píng)審,嚴(yán)格的、按計(jì)劃的測(cè)試軟件。
SQA小組的職責(zé)是輔助開(kāi)發(fā)人員得到高質(zhì)量的產(chǎn)品,負(fù)責(zé)質(zhì)量保證的計(jì)劃、監(jiān)督、記錄、分析及報(bào)告工作。
(2)SQA過(guò)程的進(jìn)入與退出
?進(jìn)入準(zhǔn)則:①方針明確②能力具備
③項(xiàng)目已定義
④已有SQAP制定規(guī)程和偏差處理規(guī)程
第58頁(yè)/共78頁(yè)60
?退出準(zhǔn)則:
①產(chǎn)品符合需求
②數(shù)據(jù)記錄完整、受控
?具體活動(dòng)的輸入(需要的數(shù)據(jù))與輸出(產(chǎn)生的結(jié)果):輸入包括合同中的有關(guān)說(shuō)明或協(xié)議,軟件開(kāi)發(fā)標(biāo)準(zhǔn)和規(guī)范,軟件設(shè)計(jì)準(zhǔn)則,軟件測(cè)試標(biāo)準(zhǔn)或規(guī)范,軟件配置管理規(guī)范,軟件質(zhì)量保證規(guī)范,軟件質(zhì)量數(shù)據(jù)采集規(guī)程等。輸出包括SQAP,項(xiàng)目采用的標(biāo)準(zhǔn)和規(guī)程,各種評(píng)審和審核活動(dòng)的記錄和報(bào)告、問(wèn)題報(bào)告、問(wèn)題解決報(bào)告和軟件質(zhì)量有關(guān)的數(shù)據(jù)。
(3)SQA活動(dòng)流程(見(jiàn)下圖)
第59頁(yè)/共78頁(yè)61
SQA活動(dòng)流程第60頁(yè)/共78頁(yè)62需要指出的是,軟件測(cè)試與軟件質(zhì)量保證是由不同人員實(shí)施的兩種不同過(guò)程,軟件測(cè)試是軟件開(kāi)發(fā)過(guò)程的一個(gè)階段,而軟件質(zhì)量保證貫穿于整個(gè)軟件開(kāi)發(fā)過(guò)程。軟件開(kāi)發(fā)過(guò)程需要多人合作,不按照一定的標(biāo)準(zhǔn)、規(guī)程、準(zhǔn)則去做,很難將眾多的工作產(chǎn)品集成起來(lái)。不把開(kāi)發(fā)過(guò)程分解為可控制的階段并對(duì)每個(gè)階段的工作和結(jié)果加以控制,很難保證產(chǎn)品的質(zhì)量。正式技術(shù)評(píng)審是軟件質(zhì)量保證的主要手段之一,也是使用最多的監(jiān)督方法。為了使評(píng)審取得應(yīng)有的效果,注意三點(diǎn):①有計(jì)劃,②有規(guī)程,③認(rèn)真執(zhí)行計(jì)劃和規(guī)程。第61頁(yè)/共78頁(yè)632.7軟件配置管理
1、概念
軟件配置管理(SoftwareConfigurationManagement,SCM)是應(yīng)用于整個(gè)軟件過(guò)程中的庇護(hù)性活動(dòng)。軟件配置是一個(gè)軟件產(chǎn)品在生存期各個(gè)階段的不同形式和不同版本的程序、文檔及相關(guān)數(shù)據(jù)的集合。軟件開(kāi)發(fā)過(guò)程中,會(huì)得到許多工作產(chǎn)品或階段產(chǎn)品,還會(huì)用到許多工具軟件,所有這些信息都需要管理,以便在提出某些特定的要求時(shí)能將其進(jìn)行約定的組合來(lái)滿足使用的目的(見(jiàn)下圖)。
第62頁(yè)/共78頁(yè)64
兩個(gè)產(chǎn)品具有不同的配置
第63頁(yè)/共78頁(yè)65軟件開(kāi)發(fā)屬于變化驅(qū)動(dòng)的過(guò)程。軟件時(shí)時(shí)處于演化變更狀態(tài)。技術(shù)的快速發(fā)展、業(yè)務(wù)環(huán)境的不斷改變、不同用戶的不同需求、需求在開(kāi)發(fā)中的頻繁變更、開(kāi)發(fā)人員對(duì)階段產(chǎn)品的改變等等,都會(huì)對(duì)產(chǎn)品的最后質(zhì)量造成影響。
SCM是對(duì)軟件生存期過(guò)程中的各階段產(chǎn)品和最終產(chǎn)品演化和變更的管理,是CMM第二級(jí)中的關(guān)鍵過(guò)程域。它的主要目的是對(duì)變更加以控制,將變更對(duì)成本、進(jìn)度和質(zhì)量影響降到最小。SCM的任務(wù):
?制定SCM計(jì)劃
?配置標(biāo)識(shí)
?變更控制
?配置審核
?版本管理和發(fā)行管理
第64頁(yè)/共78頁(yè)662、軟件配置標(biāo)識(shí)
(1)確定配置項(xiàng)(SCI)大中型軟件項(xiàng)目在開(kāi)發(fā)中產(chǎn)生幾十個(gè)、上百個(gè)文檔,每個(gè)階段都在演化,后期版本是對(duì)前期的修改及擴(kuò)展(兩者有繼承關(guān)系),確定配置項(xiàng)就是確定哪些文檔需要被保存、被管理。
(2)配置項(xiàng)標(biāo)識(shí)
?
唯一性:在一個(gè)項(xiàng)目?jī)?nèi)不能出現(xiàn)重名,
?可追溯性:名字能體現(xiàn)相鄰配置項(xiàng)之間的關(guān)系,如采用層次式命令規(guī)則反映樹(shù)狀結(jié)構(gòu)。第65頁(yè)/共78頁(yè)673、變更管理
(1)軟件變更
?軟件變更的不可避免性:變更來(lái)源于用戶或開(kāi)發(fā)人員;
?變更的復(fù)雜性:涉及一些相關(guān)部件和文檔,需要將某些變更通知相關(guān)人員。
(2)變更管理的任務(wù)
?分析變更:研究變更的必要性、經(jīng)濟(jì)可行性(成本-效益比,是否合理)和技術(shù)可行性(能否實(shí)現(xiàn))。?記錄和追蹤變更。
?采取措施保證變更在受控狀態(tài)下進(jìn)行。第66頁(yè)/共78頁(yè)68
(3)建立配置項(xiàng)庫(kù)
◆配置項(xiàng)庫(kù)的作用
①記錄與配置相關(guān)的所有信息,其中很重要的內(nèi)容是存放受控的軟件配置項(xiàng)。
②利用庫(kù)中的信息評(píng)價(jià)變更的后果,對(duì)變更控制有重要的意義。③從庫(kù)中提取各種配置管理過(guò)程的管理信息,可利用庫(kù)中的信息查詢回答許多配置管理問(wèn)題,例如:
?哪些客戶已提取了某個(gè)特定的系統(tǒng)版本??運(yùn)行一個(gè)給定的系統(tǒng)版本需要什么硬件和系統(tǒng)軟件?
?一個(gè)系統(tǒng)到目前已生成了多少個(gè)版本,何時(shí)生成的??如果某一特定的構(gòu)件變更了,會(huì)影響到系統(tǒng)的哪些版本??一個(gè)特定的版本曾提出過(guò)哪幾個(gè)變更請(qǐng)求??一個(gè)特定的版本有多少已報(bào)告的錯(cuò)誤?第67頁(yè)/共78頁(yè)69
◆配置項(xiàng)庫(kù)的類別
?
開(kāi)發(fā)庫(kù)存放開(kāi)發(fā)過(guò)程中需要保留的各種信息,供開(kāi)發(fā)人員個(gè)人使用,庫(kù)中的信息無(wú)需對(duì)其做任何限制,可以有較為頻繁的修改。
?受控庫(kù)在軟件開(kāi)發(fā)的某個(gè)階段工作結(jié)束時(shí),將工作產(chǎn)品或有關(guān)信息存入,應(yīng)該對(duì)庫(kù)內(nèi)的信息的讀寫(xiě)和修改加以控制。
?產(chǎn)品庫(kù)所開(kāi)發(fā)的軟件產(chǎn)品完成系統(tǒng)測(cè)試后,作為最終產(chǎn)品存入庫(kù)內(nèi),庫(kù)內(nèi)的信息也應(yīng)加以控制。受控庫(kù)和產(chǎn)品庫(kù)的規(guī)范化運(yùn)行是實(shí)現(xiàn)軟件配置項(xiàng)管理的重要手段。第68頁(yè)/共78頁(yè)70
(4)建立配置基線(baseline)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年度企業(yè)年會(huì)表演視頻制作合同3篇
- 2024年度電力設(shè)施外包工程保險(xiǎn)合同范本3篇
- 2024年健身房會(huì)員訓(xùn)練合同3篇
- 2024年山林承包權(quán)及生態(tài)補(bǔ)償金支付合同3篇
- 2024年版投資合同具體條款
- 2024同安區(qū)二手房買(mǎi)賣(mài)合同稅務(wù)籌劃建議3篇
- 2024年度班組用工勞動(dòng)合同范本(智能制造)2篇
- 2024年度國(guó)際物流與貿(mào)易融資合同3篇
- 2024年度挖掘機(jī)租賃帶操作工合同6篇
- 2024版北京直播間租賃及互動(dòng)游戲服務(wù)合同3篇
- 2024年江蘇省蘇州市中考數(shù)學(xué)試卷含答案
- 軟件測(cè)試匯報(bào)
- 吉林省長(zhǎng)春市第一〇八學(xué)校2024-2025學(xué)年七年級(jí)上學(xué)期期中歷史試題
- 2024年世界職業(yè)院校技能大賽高職組“市政管線(道)數(shù)字化施工組”賽項(xiàng)考試題庫(kù)
- 初中《孫中山誕辰紀(jì)念日》主題班會(huì)
- 5.5 跨學(xué)科實(shí)踐:制作望遠(yuǎn)鏡教學(xué)設(shè)計(jì)八年級(jí)物理上冊(cè)(人教版2024)
- 屠呦呦課件教學(xué)課件
- 阿斯伯格綜合癥自測(cè)題匯博教育員工自測(cè)題含答案
- 護(hù)理肝癌的疑難病例討論
- 天津市2023-2024學(xué)年七年級(jí)上學(xué)期語(yǔ)文期末試卷(含答案)
- 2024年法律職業(yè)資格考試(試卷一)客觀題試卷及解答參考
評(píng)論
0/150
提交評(píng)論