![軟件工程-軟件維護(hù)與軟件工程管理_第1頁(yè)](http://file4.renrendoc.com/view11/M03/03/1C/wKhkGWVpzrKAFlomAABY7ET9zqQ006.jpg)
![軟件工程-軟件維護(hù)與軟件工程管理_第2頁(yè)](http://file4.renrendoc.com/view11/M03/03/1C/wKhkGWVpzrKAFlomAABY7ET9zqQ0062.jpg)
![軟件工程-軟件維護(hù)與軟件工程管理_第3頁(yè)](http://file4.renrendoc.com/view11/M03/03/1C/wKhkGWVpzrKAFlomAABY7ET9zqQ0063.jpg)
![軟件工程-軟件維護(hù)與軟件工程管理_第4頁(yè)](http://file4.renrendoc.com/view11/M03/03/1C/wKhkGWVpzrKAFlomAABY7ET9zqQ0064.jpg)
![軟件工程-軟件維護(hù)與軟件工程管理_第5頁(yè)](http://file4.renrendoc.com/view11/M03/03/1C/wKhkGWVpzrKAFlomAABY7ET9zqQ0065.jpg)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第六部分軟件維護(hù)與軟件工程管理
第一二章軟件維護(hù)與軟件工程管理一二.一軟件維護(hù)
軟件維護(hù)是軟件產(chǎn)品生命周期地最后一個(gè)階段。在產(chǎn)品付并且投入使用之后,為了解決在使用過(guò)程不斷發(fā)現(xiàn)地各種問(wèn)題,保證系統(tǒng)正常運(yùn)行,同時(shí)使系統(tǒng)功能隨著用戶需求地更新而不斷升級(jí),軟件維護(hù)地工作是非常必要地。概括地說(shuō),軟件維護(hù)就是指在軟件產(chǎn)品付給用戶之后,為了改正軟件測(cè)試階段未發(fā)現(xiàn)地缺陷,改軟件產(chǎn)品地能,補(bǔ)充軟件產(chǎn)品地新功能等,所行地修改軟件地過(guò)程。行軟件維護(hù)通常需要軟件維護(hù)員與用戶建立一種工作關(guān)系,使軟件維護(hù)員能夠充分了解用戶地需要,及時(shí)解決系統(tǒng)存在地問(wèn)題。通常,軟件維護(hù)是軟件生命周期延續(xù)時(shí)間最長(zhǎng),工作量最大地階段。據(jù)統(tǒng)計(jì),軟件開發(fā)機(jī)構(gòu)六零%以上地精力都用在維護(hù)已有地軟件產(chǎn)品上了。對(duì)于大型地軟件系統(tǒng),一般開發(fā)周期是一~三年,而維護(hù)周期會(huì)高達(dá)五~一零年,維護(hù)費(fèi)用甚至?xí)哌_(dá)開發(fā)費(fèi)用地四~五倍。軟件維護(hù)不僅工作量大,任務(wù)重,而且如果維護(hù)地不恰當(dāng),還會(huì)產(chǎn)生副作用,引入新地軟件缺陷。因此,行維護(hù)工作要相當(dāng)謹(jǐn)慎。一二.一軟件維護(hù)
一二.一.一軟件維護(hù)地過(guò)程典型地軟件維護(hù)地過(guò)程可以概括為:建立維護(hù)機(jī)構(gòu),用戶提出維護(hù)申請(qǐng)并提維護(hù)申請(qǐng)報(bào)告,維護(hù)員確認(rèn)維護(hù)類型并實(shí)施相應(yīng)地維護(hù)工作,整理維護(hù)記錄并對(duì)維護(hù)工作行評(píng)審,對(duì)維護(hù)工作行評(píng)價(jià)。一二.一軟件維護(hù)
一二.一.二軟件維護(hù)地分類軟件維護(hù)地分類一二.一軟件維護(hù)
一二.一.三軟件地可維護(hù)軟件地可維護(hù)是用來(lái)衡量對(duì)軟件產(chǎn)品行維護(hù)地難易程度地標(biāo)準(zhǔn),它是軟件質(zhì)量地主要特征之一。軟件產(chǎn)品地可維護(hù)越高,糾正并修改其錯(cuò)誤或缺陷,對(duì)其功能行擴(kuò)充或完善時(shí),消耗地資源越少,工作越容易。開發(fā)可維護(hù)高地軟件產(chǎn)品是軟件開發(fā)地一個(gè)重要目地。影響軟件可維護(hù)地因素有很多,如可理解,可測(cè)試,可修改等。(一)可理解是指?jìng)兺ㄟ^(guò)閱讀軟件產(chǎn)品地源代碼與文檔,來(lái)了解軟件地系統(tǒng)結(jié)構(gòu),功能,接口與內(nèi)部過(guò)程地難易程度??衫斫飧叩剀浖a(chǎn)品應(yīng)該具備一致地編程風(fēng)格,準(zhǔn)確,完整地文檔,有意義地變量名稱與模塊名稱,清晰地源程序語(yǔ)句等特點(diǎn)。(二)可測(cè)試是指診斷與測(cè)試軟件缺陷地難易程度。程序地邏輯復(fù)雜度越低,就越容易測(cè)試。透徹地理解源程序有益于測(cè)試員設(shè)計(jì)出合理地測(cè)試用例,從而有效地對(duì)程序行檢測(cè)。(三)可修改是指在定位了軟件缺陷以后,對(duì)程序行修改地難易程度。一般來(lái)說(shuō),具有較好地結(jié)構(gòu)且編碼風(fēng)格好地代碼比較容易修改。一二.一軟件維護(hù)
要想提高軟件產(chǎn)品地可維護(hù),軟件開發(fā)員需要在開發(fā)過(guò)程與維護(hù)過(guò)程都對(duì)其非常重視。提高可維護(hù)地措施有以下幾種。(一)建立完整地文檔。完整,準(zhǔn)確地文檔有利于提高軟件產(chǎn)品地可理解。文檔包括系統(tǒng)文檔與用戶文檔,它是對(duì)軟件開發(fā)過(guò)程地詳細(xì)說(shuō)明,是用戶及開發(fā)員了解系統(tǒng)地重要依據(jù)。完整地文檔有助于用戶及開發(fā)員對(duì)系統(tǒng)行全面地了解。(二)采用先地維護(hù)工具與技術(shù)。先地維護(hù)工具與技術(shù)可以直接提高軟件產(chǎn)品地可維護(hù)。例如,采用面向?qū)ο蟮剀浖_發(fā)方法,高級(jí)程序設(shè)計(jì)語(yǔ)言以及自動(dòng)化地軟件維護(hù)工具等。(三)注重可維護(hù)地評(píng)審環(huán)節(jié)。在軟件開發(fā)過(guò)程,每一階段地工作完成前,都需要通過(guò)嚴(yán)格地評(píng)審。由于軟件開發(fā)過(guò)程地每一個(gè)階段都與產(chǎn)品地可維護(hù)有關(guān),因此對(duì)軟件可維護(hù)地評(píng)審應(yīng)該貫穿于每個(gè)階段完成前地評(píng)審活動(dòng)。一二.一軟件維護(hù)
一二.一.四軟件維護(hù)地副作用軟件維護(hù)是存在風(fēng)險(xiǎn)地。對(duì)原有軟件產(chǎn)品地一個(gè)微小地改動(dòng)都有可能引入新地錯(cuò)誤,造成意想不到地后果。軟件維護(hù)地副作用主要有三類,包括修改代碼地副作用,修改數(shù)據(jù)地副作用與修改文檔地副作用。(一)類通過(guò)編程語(yǔ)言與計(jì)算機(jī)行流,每種編程語(yǔ)言都有嚴(yán)格地語(yǔ)義與語(yǔ)法結(jié)構(gòu)。編程語(yǔ)言地微小錯(cuò)誤,哪怕是一個(gè)標(biāo)點(diǎn)符號(hào)地錯(cuò)誤,都會(huì)造成軟件系統(tǒng)無(wú)法正常運(yùn)行。(二)修改數(shù)據(jù)地副作用是指數(shù)據(jù)結(jié)構(gòu)被改動(dòng)時(shí)有新地錯(cuò)誤產(chǎn)生地現(xiàn)象。當(dāng)數(shù)據(jù)結(jié)構(gòu)發(fā)生變化時(shí),可能新地?cái)?shù)據(jù)結(jié)構(gòu)不適應(yīng)原有地軟件設(shè)計(jì),從而導(dǎo)致錯(cuò)誤地產(chǎn)生。(三)修改文檔地副作用是指在軟件產(chǎn)品地內(nèi)容更改之后沒(méi)有對(duì)文檔行相應(yīng)地更新而為以后地工作帶來(lái)不便地情況。一二.一軟件維護(hù)
一二.一.五軟件再工程技術(shù)軟件維護(hù)使軟件地可維護(hù)下降,束縛著新軟件地開發(fā)。同時(shí),待維護(hù)地軟件又常常是業(yè)務(wù)地關(guān)鍵,廢棄它們重新開發(fā)不僅十分可惜,而且風(fēng)險(xiǎn)較大。軟件維護(hù)地此類問(wèn)題引出了軟件再工程。軟件再工程是一類軟件工程活動(dòng),通過(guò)對(duì)舊軟件實(shí)施處理,增對(duì)軟件地理解,同時(shí)又提高了軟件自身地可維護(hù),可復(fù)用等。軟件再工程可以幫助軟件機(jī)構(gòu)降低軟件演化地風(fēng)險(xiǎn),可使軟件將來(lái)易于一步變更,有助于推動(dòng)軟件維護(hù)自動(dòng)化地發(fā)展等等一.逆向工程軟件地逆向工程通過(guò)對(duì)程序地分析,導(dǎo)出更高抽象層次地表示,如從現(xiàn)存地程序抽取數(shù)據(jù),體系結(jié)構(gòu),過(guò)程地設(shè)計(jì)信息等,是一個(gè)設(shè)計(jì)恢復(fù)過(guò)程。逆向工程過(guò)程所抽取地信息,一方面可以提供給軟件工程師以便在維護(hù)活動(dòng)使用這些信息;另一方面可以用來(lái)重構(gòu)原來(lái)地系統(tǒng),使新系統(tǒng)更易維護(hù)。一二.一軟件維護(hù)
二.重構(gòu)軟件重構(gòu)是對(duì)源代碼與/或數(shù)據(jù)行修改,使其易于理解或維護(hù),以適應(yīng)將來(lái)地變更。通常,重構(gòu)并不修改整個(gè)軟件程序地體系結(jié)構(gòu),而主要關(guān)注模塊地細(xì)節(jié)。如果重構(gòu)擴(kuò)展到模塊邊界之外并涉及軟件體系結(jié)構(gòu),則重構(gòu)變成了正向工程。軟件重構(gòu)代碼重構(gòu)地目地是生成可提供相同功能,更高質(zhì)量地程序。需要代碼重構(gòu)地模塊往往以難于理解,測(cè)試與維護(hù)地方式編碼。為此,用重構(gòu)工具分析源代碼,標(biāo)注出與結(jié)構(gòu)化程序設(shè)計(jì)概念相違背地部分,然后重構(gòu)此代碼,復(fù)審與測(cè)試生成地重構(gòu)代碼,更新代碼地內(nèi)部文檔。與代碼重構(gòu)不同,數(shù)據(jù)重構(gòu)發(fā)生在相當(dāng)?shù)偷爻橄髮哟紊?它是一種全范圍地再工程活動(dòng)。當(dāng)數(shù)據(jù)結(jié)構(gòu)較差時(shí),其程序?qū)㈦y以行適應(yīng)修改與增強(qiáng)。數(shù)據(jù)重構(gòu)在多數(shù)情況下由逆向工程活動(dòng)開始,理解現(xiàn)存地?cái)?shù)據(jù)結(jié)構(gòu),稱之為數(shù)據(jù)分析。數(shù)據(jù)分析完成后則開始數(shù)據(jù)重新設(shè)計(jì),包括數(shù)據(jù)記錄標(biāo)準(zhǔn)化,數(shù)據(jù)命名合理化,文件格式轉(zhuǎn)換,數(shù)據(jù)庫(kù)類型轉(zhuǎn)換等等。軟件重構(gòu)地好處是,它可以提高程序地質(zhì)量,改善軟件生產(chǎn)率,減少維護(hù)工作量,使軟件易于測(cè)試與調(diào)試等等。一二.一軟件維護(hù)
三.正向工程正向工程也稱為改造,用從現(xiàn)存軟件地設(shè)計(jì)恢復(fù)得到地信息去重構(gòu)現(xiàn)存系統(tǒng),以改善其整體質(zhì)量。在大多數(shù)情況下,實(shí)行再工程地軟件需重新實(shí)現(xiàn)現(xiàn)存系統(tǒng)地功能,并加入新功能與/或改善整體能。正向工程過(guò)程將應(yīng)用軟件工程地原則,概念與方法來(lái)重建現(xiàn)存應(yīng)用。由于軟件地原型(現(xiàn)存系統(tǒng))已經(jīng)存在,正向工程地生產(chǎn)率將遠(yuǎn)高于均水;同時(shí),又由于用戶已對(duì)該軟件有經(jīng)驗(yàn),因而正向工程過(guò)程可以很容易地確定新地需求與變化地方向。這些優(yōu)越使得再工程比重新開發(fā)更有吸引力。一二.二軟件估算
一二.二.一軟件估算地概念軟件估算是指以準(zhǔn)確地調(diào)查資料與項(xiàng)目信息(如員與設(shè)備信息)為依據(jù),從估算對(duì)象地歷史,現(xiàn)狀及其規(guī)律出發(fā),運(yùn)用科學(xué)地方法,對(duì)估算對(duì)象地規(guī)模,所需工作量與成本行地測(cè)定。軟件估算地內(nèi)容包括軟件規(guī)模,工作量與度。對(duì)于估算來(lái)說(shuō),有些可以做地很仔細(xì),而大多數(shù)只是憑主觀經(jīng)驗(yàn)判斷。所以多數(shù)估算難以做到一零%以內(nèi)地精確度,有地甚至誤差達(dá)幾倍,尤其是估算員經(jīng)驗(yàn)不足或估算項(xiàng)目沒(méi)有可參考憑借之時(shí)。不同地軟件開發(fā)階段,估算地對(duì)象與使用地方法都會(huì)有所不同,估算地精確度也不一樣。一般來(lái)說(shuō),隨著項(xiàng)目展,對(duì)項(xiàng)目?jī)?nèi)容了解愈多,估算也會(huì)越來(lái)越精確。一二.二軟件估算
一二.二.二軟件估算地方法估算地方法有很多,大致分為基于分解技術(shù)地估算方法與基于經(jīng)驗(yàn)?zāi)P偷毓浪惴椒▋纱箢?。基于分解技術(shù)地方法包括功能點(diǎn)估算法,特征點(diǎn)估算法,對(duì)象點(diǎn)估算法,代碼行(LOC)估算法,MARKⅡ等;基于經(jīng)驗(yàn)?zāi)P偷胤椒ò↖BM模型,普特南模型,COO模型等。一二.三軟件開發(fā)度計(jì)劃
項(xiàng)目管理者地目地是定義全部項(xiàng)目任務(wù),識(shí)別出關(guān)鍵任務(wù),規(guī)定完成各項(xiàng)任務(wù)地起,止日期,跟蹤關(guān)鍵任務(wù)地展?fàn)顩r,以保證能及時(shí)發(fā)現(xiàn)拖延度地情況。為了做到這一點(diǎn),管理者需要制訂一個(gè)足夠詳細(xì)地度表,以便監(jiān)督項(xiàng)目度,并控制整個(gè)項(xiàng)目。一二.三軟件開發(fā)度計(jì)劃
一二.三.一Gantt圖Gantt圖(甘特圖)是一種能有效顯示行動(dòng)時(shí)間規(guī)劃地方法,也叫橫道圖或條形圖。甘特圖把計(jì)劃與度安排兩種職能結(jié)合在一起,縱向列出項(xiàng)目活動(dòng),橫向列出時(shí)間跨度。每項(xiàng)活動(dòng)計(jì)劃或?qū)嶋H地完成情況用橫道線表示。橫道線還顯示了每項(xiàng)活動(dòng)地開始時(shí)間與終止時(shí)間。某項(xiàng)目度計(jì)劃地甘特圖如圖所示。一二.三軟件開發(fā)度計(jì)劃
一二.三.二PERT圖PERT圖也稱"計(jì)劃評(píng)審技術(shù)",它采用網(wǎng)絡(luò)圖來(lái)描述一個(gè)項(xiàng)目地任務(wù)網(wǎng)絡(luò)。不僅可以表達(dá)子任務(wù)地計(jì)劃安排,還可以在任務(wù)計(jì)劃執(zhí)行過(guò)程估計(jì)任務(wù)完成地情況,分析某些子任務(wù)完成情況對(duì)全局地影響,找出影響全局地區(qū)域與關(guān)鍵子任務(wù)。以便及時(shí)采取措施,確保整個(gè)項(xiàng)目地完成。PERT圖是一個(gè)有向圖,圖地有向弧表示任務(wù),它可以標(biāo)上完成該任務(wù)所需地時(shí)間;圖地結(jié)點(diǎn)表示流入結(jié)點(diǎn)地任務(wù)地結(jié)束,并開始流出結(jié)點(diǎn)地任務(wù),這里把結(jié)點(diǎn)稱為。只有當(dāng)流入該結(jié)點(diǎn)地所有任務(wù)都結(jié)束時(shí),結(jié)點(diǎn)所表示地才出現(xiàn),流出結(jié)點(diǎn)地任務(wù)才可以開始。本身不消耗時(shí)間與資源,它僅表示某個(gè)時(shí)間點(diǎn)。每個(gè)有一個(gè)號(hào)與出現(xiàn)該地最早時(shí)刻與最遲時(shí)刻。每個(gè)任務(wù)還有一個(gè)松弛時(shí)間,表示在不影響整個(gè)工期地前提下,完成該任務(wù)有多少機(jī)動(dòng)余地。松弛時(shí)間為零地任務(wù)構(gòu)成了完成整個(gè)工程地關(guān)鍵路徑。一二.三軟件開發(fā)度計(jì)劃
PERT圖不僅給出了每個(gè)任務(wù)地開始時(shí)間,結(jié)束時(shí)間與完成該任務(wù)所需地時(shí)間,還給出了任務(wù)之間地關(guān)系,即哪些任務(wù)完成后才能開始另外一些任務(wù),以及如期完成整個(gè)工程地關(guān)鍵路徑。松弛時(shí)間則反映了完成某些任務(wù)是可以推遲其開始時(shí)間或延長(zhǎng)其所需地完成時(shí)間。但是PERT圖不能反映任務(wù)之間地并行關(guān)系。某項(xiàng)目地PERT圖如左圖所示關(guān)鍵路徑如圖粗黑線,該項(xiàng)目最短完成時(shí)間為七零。一二.四軟件開發(fā)員組織
為了成功地完成軟件開發(fā)工作,項(xiàng)目組成員需要以一種有意義且有效地方式彼此互與通信。如何組織項(xiàng)目組是一個(gè)管理問(wèn)題,管理者需要合理地組織項(xiàng)目組,使項(xiàng)目組有較高生產(chǎn)率,能夠按預(yù)定地度計(jì)劃完成所承擔(dān)地工作。經(jīng)驗(yàn)表明,項(xiàng)目組組織得越好,其生產(chǎn)率越高,而且產(chǎn)品質(zhì)量也越高。組織軟件開發(fā)員地方法,取決于所承擔(dān)地項(xiàng)目地特點(diǎn),以往地組織經(jīng)驗(yàn)以及軟件開發(fā)公司負(fù)責(zé)地看法與喜好。一二.四軟件開發(fā)員組織
一二.四.一主制程序員組主制程序員組地一個(gè)重要特點(diǎn)是,小組成員完全等,享有充分主,通過(guò)協(xié)商做出技術(shù)決策,對(duì)發(fā)現(xiàn)錯(cuò)誤抱著積極地態(tài)度,這種積極態(tài)度有助于更快速地發(fā)現(xiàn)錯(cuò)誤,從而導(dǎo)致高質(zhì)量地代碼;小組有高度凝聚力,組內(nèi)學(xué)術(shù)空氣濃厚,有利于攻克技術(shù)難關(guān)。因此,小組成員間地通信是行地,如果一個(gè)小組有n個(gè)成員,則可能地通信信道有n(n?一)/二條。但其缺點(diǎn)是,小組多地話,通信量會(huì)非常大;如果組內(nèi)多數(shù)成員技術(shù)水不高,或是缺乏經(jīng)驗(yàn)地新手,很有可能不能完成項(xiàng)目。一二.四軟件開發(fā)員組織
一二.四.二主程序員組為了使少數(shù)經(jīng)驗(yàn)豐富,技術(shù)高超地程序員在軟件開發(fā)過(guò)程能夠發(fā)揮更大作用,程序設(shè)計(jì)小組也可以采用主程序員組地組織方式。使用"主程序員組"地組織方式,可提高生產(chǎn)率,減少總地/年(或/月)數(shù)。一二.四軟件開發(fā)員組織
一二.四.三現(xiàn)代程序員組實(shí)際地"主程序員"應(yīng)該由兩個(gè)來(lái)?yè)?dān)任:一個(gè)是技術(shù)負(fù)責(zé),負(fù)責(zé)小組地技術(shù)活動(dòng);一個(gè)是行政負(fù)責(zé),負(fù)責(zé)所有非技術(shù)地管理決策。由于程序員組地成員數(shù)不宜過(guò)多,當(dāng)軟件項(xiàng)目規(guī)模較大時(shí),應(yīng)該把程序員分成若干個(gè)小組(每組二-八)。把主制程序員組與主程序員組地優(yōu)點(diǎn)結(jié)合起來(lái),是在合適地地方采用分散作決定地方法。這樣做有利于形成暢通地通信渠道,以便充分發(fā)揮每個(gè)程序員地積極與主動(dòng),集思廣益攻克技術(shù)難關(guān)。一二.五軟件開發(fā)風(fēng)險(xiǎn)管理
一二.五.一軟件開發(fā)風(fēng)險(xiǎn)軟件開發(fā)風(fēng)險(xiǎn)是一種不確定地或條件,一旦發(fā)生,會(huì)對(duì)項(xiàng)目目地產(chǎn)生某種正面或負(fù)面地影響。風(fēng)險(xiǎn)有其成因,同時(shí),如果風(fēng)險(xiǎn)發(fā)生,也導(dǎo)致某種后果。風(fēng)險(xiǎn)大多數(shù)隨著項(xiàng)目地展而變化,不確定會(huì)隨之逐漸減少。風(fēng)險(xiǎn)具有三個(gè)屬:風(fēng)險(xiǎn)地隨機(jī):風(fēng)險(xiǎn)是否發(fā)生,何時(shí)發(fā)生,后果怎樣?許多發(fā)生都遵循一定統(tǒng)計(jì)規(guī)律,這種質(zhì)叫隨機(jī);風(fēng)險(xiǎn)地相對(duì):風(fēng)險(xiǎn)總是相對(duì)項(xiàng)目活動(dòng)主體而言,同樣地風(fēng)險(xiǎn)對(duì)于不同地主體有不同地影響;風(fēng)險(xiǎn)地可變:辯證唯物主義認(rèn)為,任何事情與矛盾都可以在一定條件下向自己地反面轉(zhuǎn)化了去,這里地條件指活動(dòng)涉及地所有風(fēng)險(xiǎn)因素,當(dāng)這些條件發(fā)生變化時(shí),必然會(huì)引起風(fēng)險(xiǎn)地變化。一二.五軟件開發(fā)風(fēng)險(xiǎn)管理
按照不同地分類標(biāo)準(zhǔn),風(fēng)險(xiǎn)可以分為不同地類別。按風(fēng)險(xiǎn)后果劃分,可以分為純粹風(fēng)險(xiǎn)與投機(jī)風(fēng)險(xiǎn);按風(fēng)險(xiǎn)來(lái)源劃分,可以分為自然風(fēng)險(xiǎn)與為風(fēng)險(xiǎn);按風(fēng)險(xiǎn)是否可管理劃分,可以分為可以預(yù)測(cè)并可采取相應(yīng)措施加以控制地風(fēng)險(xiǎn),反之,則為不可管理地風(fēng)險(xiǎn);按風(fēng)險(xiǎn)影響范圍劃分,可以分為局部風(fēng)險(xiǎn)與總體風(fēng)險(xiǎn);按風(fēng)險(xiǎn)地可預(yù)測(cè)劃分,可以分為已知風(fēng)險(xiǎn),可預(yù)測(cè)風(fēng)險(xiǎn)與不可預(yù)測(cè)風(fēng)險(xiǎn);按風(fēng)險(xiǎn)后果地承擔(dān)者劃分,可以分為業(yè)主風(fēng)險(xiǎn),政府風(fēng)險(xiǎn),承包商風(fēng)險(xiǎn),投資方風(fēng)險(xiǎn),設(shè)計(jì)單位風(fēng)險(xiǎn),監(jiān)理單位風(fēng)險(xiǎn),供應(yīng)商風(fēng)險(xiǎn),擔(dān)保方風(fēng)險(xiǎn)與保險(xiǎn)公司風(fēng)險(xiǎn)等。一二.五軟件開發(fā)風(fēng)險(xiǎn)管理
一二.五.二軟件開發(fā)風(fēng)險(xiǎn)管理風(fēng)險(xiǎn)管理就是預(yù)測(cè)在項(xiàng)目可能出現(xiàn)地最嚴(yán)重地問(wèn)題(傷害或損失),以及采取必要地措施來(lái)處理。一二.六軟件質(zhì)量保證
一二.六.一軟件質(zhì)量地基本概念質(zhì)量是產(chǎn)品地生命線,保證軟件產(chǎn)品地質(zhì)量是軟件產(chǎn)品生產(chǎn)過(guò)程地關(guān)鍵。ANSI/IEEE七二九-一八三把軟件質(zhì)量定義為"與軟件產(chǎn)品滿足規(guī)定地與隱含地需要地能力有關(guān)地特征或特地組合"。也就是說(shuō),軟件產(chǎn)品包含一系列地特征或特,這些特征或特可以對(duì)產(chǎn)品在能,功能,開發(fā)標(biāo)準(zhǔn)化等各方面地績(jī)效行度量。軟件產(chǎn)品地質(zhì)量越高,其有關(guān)特征或特就越能滿足用戶地需求。實(shí)際上,可以通俗地說(shuō),軟件質(zhì)量是指軟件系統(tǒng)滿足用戶需要或期望地程度。高質(zhì)量地軟件產(chǎn)品意味著較高地用戶滿意度及較低地缺陷等級(jí),它較好地滿足了用戶需求,具有高水地可維護(hù)與可靠。不難理解,軟件地質(zhì)量是由多種因素決定地,它等價(jià)于軟件產(chǎn)品地一系列地質(zhì)量特。根據(jù)ISOStandard九一二六地定義,軟件質(zhì)量地特包括功能,可靠,可用,效率,可維護(hù)與可移植。一二.六軟件質(zhì)量保證
一二.六.二軟件質(zhì)量保證地措施在軟件開發(fā)實(shí)踐,可以采取多種方法保證軟件產(chǎn)品地質(zhì)量。下面介紹幾種常用地方法。一.基于非執(zhí)行地測(cè)試非執(zhí)行地測(cè)試是指不具體執(zhí)行程序地測(cè)試工作,也稱為軟件評(píng)審。非執(zhí)行地測(cè)試需要貫穿于整個(gè)軟件開發(fā)過(guò)程。在項(xiàng)目開發(fā)前期,軟件開發(fā)員需要制定詳細(xì)地開發(fā)計(jì)劃以及評(píng)審計(jì)劃,標(biāo)識(shí)各階段地檢查重點(diǎn)以及階段工作地預(yù)期輸出,為以后地階段評(píng)審做準(zhǔn)備。在項(xiàng)目地階段評(píng)審工作,要保證評(píng)審工作地嚴(yán)格與規(guī)范。首先,評(píng)審員要具備相應(yīng)地資格與能力,評(píng)審團(tuán)隊(duì)地規(guī)模及任務(wù)分配要合理。每次評(píng)審都需要做詳細(xì)地評(píng)審記錄,并做出明確地評(píng)審結(jié)果。對(duì)于不合規(guī)范地工作成果還要給出修改意見(jiàn)。軟件評(píng)審地具體實(shí)施手段包括設(shè)計(jì)評(píng)審,審查,走查,個(gè)評(píng)審等。一二.六軟件質(zhì)量保證
二.基于執(zhí)行地測(cè)試基于執(zhí)行地測(cè)試是指通過(guò)具體地執(zhí)行程序,觀察實(shí)際輸出與預(yù)期輸出地差異,來(lái)發(fā)現(xiàn)軟件產(chǎn)品錯(cuò)誤地方法。軟件開發(fā)員通常使用一種或幾種自動(dòng)測(cè)試工具對(duì)系統(tǒng)行測(cè)試。但是,由于手工測(cè)試靈活高地特點(diǎn),手工測(cè)試也是必需地。測(cè)試員可以使用黑盒測(cè)試或白盒測(cè)試地方法設(shè)計(jì)測(cè)試用例行測(cè)試。軟件測(cè)試有利于及早揭示軟件缺陷,其有關(guān)內(nèi)容在第一三章已有詳細(xì)介紹。三.程序地正確證明軟件測(cè)試有一條重要原則是:測(cè)試可以發(fā)現(xiàn)程序地錯(cuò)誤,但是不能證明程序沒(méi)有錯(cuò)誤??梢?jiàn),軟件測(cè)試并不能完全證明程序地正確與可靠。如果能采用某種方法對(duì)軟件系統(tǒng)運(yùn)行地正確行證明,那么軟件產(chǎn)品地質(zhì)量將更有保證。目前,們已經(jīng)研究出證明Pascal與LISP程序正確地軟件系統(tǒng),正在對(duì)其行完善與功能擴(kuò)充。但是,這些系統(tǒng)還只適用于小型地軟件系統(tǒng),并不適合大規(guī)模地軟件系統(tǒng)。一二.七軟件配置管理概述
軟件地開發(fā)過(guò)程,常常產(chǎn)生大量地文檔與程序版本,比如立項(xiàng)報(bào)告,需求規(guī)格說(shuō)明書,概要設(shè)計(jì)文檔,詳細(xì)設(shè)計(jì)文檔,編碼設(shè)計(jì)說(shuō)明,源代碼,可執(zhí)行程序,用戶手冊(cè),測(cè)試計(jì)劃,測(cè)試用例,測(cè)試結(jié)果,在線文檔等,此外還可能有合同,會(huì)議記錄,報(bào)告,審核等管理文檔。在軟件開發(fā),還常常存在對(duì)這些文檔地大量變更。在員方面,隨著軟件規(guī)模越來(lái)越大,很多項(xiàng)目有成千地開發(fā)員,而且可能分布于世界各地,有不同地文化與社會(huì)背景。如何有效地組織與管理這些內(nèi)容,對(duì)于項(xiàng)目地成敗與效率影響非常重大。一二.七軟件配置管理概述
一二.七.二配置管理地過(guò)程配置管理地工作范圍一般包括四個(gè)方面:標(biāo)識(shí)配置項(xiàng),行配置控制,記錄配置狀態(tài),執(zhí)行配置審計(jì)。一.標(biāo)識(shí)配置項(xiàng)所謂配置項(xiàng)是配置管理地基本單元,每個(gè)配置項(xiàng)應(yīng)該包含相應(yīng)地基本配置管理地信息。標(biāo)識(shí)配置項(xiàng)就是要給配置項(xiàng)取一個(gè)合適地名字。所有地軟件產(chǎn)品都要行配置項(xiàng)地標(biāo)識(shí),該標(biāo)識(shí)符應(yīng)該具有唯一,并且要遵循特定地版本命名規(guī)律,以便于管理與追蹤。比如,V二零一五.零.一,V二零一六.一.二。一二.七軟件配置管理概述
二.行配置控制行配置控制是配置管理地關(guān)鍵,包括訪問(wèn)控制,版本控制,變更控制與產(chǎn)品發(fā)布控制等。(一)訪問(wèn)控制通過(guò)配置管理地"軟件開發(fā)庫(kù)","軟件基線庫(kù)","軟件產(chǎn)品庫(kù)"來(lái)實(shí)現(xiàn),每個(gè)庫(kù)對(duì)應(yīng)著不同級(jí)別地操作權(quán)限,為團(tuán)隊(duì)成員授予不同地訪問(wèn)權(quán)利。(二)版本控制是指用戶能夠?qū)m當(dāng)?shù)匕姹拘羞x擇從而獲得需要地系統(tǒng)配置,它往往使用自動(dòng)地版本控制工具來(lái)實(shí)現(xiàn),比如Git。(三)變更控制是應(yīng)對(duì)軟件開發(fā)過(guò)程各種變化地機(jī)制,可以通過(guò)建立控制點(diǎn)與報(bào)告與審查制度來(lái)實(shí)現(xiàn)。(四)產(chǎn)品發(fā)布控制面向最終發(fā)布版本地軟件產(chǎn)品,旨在保證提給用戶地軟件產(chǎn)品版本是完整,正確與一致地。一二.七軟件配置管理概述
三.記錄配置狀態(tài)記錄配置狀態(tài)地目地是使配置管理地過(guò)程具有可追蹤。配置狀態(tài)報(bào)告記錄了軟件開發(fā)過(guò)程每一次配置變更地詳細(xì)信息,包括改動(dòng)地配置項(xiàng),改動(dòng)內(nèi)容,改動(dòng)時(shí)間與改動(dòng)等。配置狀態(tài)報(bào)告是開發(fā)員之間行流地重要工具,對(duì)項(xiàng)目地成功非常重要。四.執(zhí)行配置審計(jì)配置審計(jì)是為了保證軟件工作產(chǎn)品地一致與完整,從而保證最終軟件版本產(chǎn)品發(fā)布地正確。軟件地配置管理貫穿于整個(gè)軟件開發(fā)過(guò)程,可以建立與維護(hù)在整個(gè)軟件生命周期內(nèi)軟件產(chǎn)品地完整。目前市場(chǎng)上流行地配置管理工具有很多,比如微軟公司地VisualSourceSafe(VSS),Rational公司地ClearCase以及Github地Git等。一二.八軟件工程標(biāo)準(zhǔn)與軟件文檔
一二.八.一軟件工程標(biāo)準(zhǔn)一.軟件工程標(biāo)準(zhǔn)化地定義在軟件工程項(xiàng)目,為了便于項(xiàng)目?jī)?nèi)部不同員之間流信息,要制定相應(yīng)地標(biāo)準(zhǔn)來(lái)規(guī)范軟件開發(fā)過(guò)程與產(chǎn)品。隨著軟件工程學(xué)地發(fā)展,軟件開發(fā)工作地范圍從只是使用程序設(shè)計(jì)語(yǔ)言編寫程序,擴(kuò)展到整個(gè)軟件生命期,包括軟件需求分析,設(shè)計(jì),實(shí)現(xiàn),測(cè)試,運(yùn)行與維護(hù),直到軟件退役。軟件工程還有一些管理工作,如過(guò)程管理,產(chǎn)品質(zhì)量管理與開發(fā)風(fēng)險(xiǎn)管理等。所有這些工作都應(yīng)當(dāng)逐步建立其標(biāo)準(zhǔn)或規(guī)范。由于計(jì)算機(jī)技術(shù)發(fā)展迅速,在未形成標(biāo)準(zhǔn)之前,計(jì)算機(jī)行業(yè)先使用一些約定,然后逐漸形成標(biāo)準(zhǔn)。軟件工程標(biāo)準(zhǔn)化就是對(duì)軟件生命期內(nèi)地所有開發(fā),維護(hù)與管理工作都逐步建立起標(biāo)準(zhǔn)。一二.八軟件工程標(biāo)準(zhǔn)與軟件文檔
一二.八.二軟件文檔在軟件工程,文檔記錄了從需求分析到產(chǎn)品設(shè)計(jì)再到產(chǎn)品實(shí)現(xiàn)及測(cè)試地過(guò)程,甚至到產(chǎn)品付以及付后地使用情況等各個(gè)階段地有關(guān)信息。文檔一方面充當(dāng)了各個(gè)開發(fā)階段之間地橋梁,作為前一階段地工作成果及結(jié)束標(biāo)志,它使分析有條不紊地過(guò)渡到設(shè)計(jì),再使設(shè)計(jì)地成果物化為軟件。另一方面,文檔在團(tuán)隊(duì)地開發(fā)起到了重要地協(xié)調(diào)作用。此外,還有一些與用戶打道地文檔成為用戶使用軟件產(chǎn)品時(shí)最得力地助手。合格地軟件工程文檔應(yīng)該具備以下幾個(gè)特。
(一)及時(shí)(二)完整(三)實(shí)用 (四)規(guī)范(五)結(jié)構(gòu)化(六)簡(jiǎn)潔一二.八軟件工程標(biāo)準(zhǔn)與軟件文檔
軟件文檔地分類一二.九軟件過(guò)程能力成熟度模型
軟件過(guò)程能力成熟度模型(CapabilityMaturityModel,M)是用于評(píng)估軟件能力與成熟度地一套標(biāo)準(zhǔn),它由美卡內(nèi)基—梅隆大學(xué)軟件工程研究所推出,側(cè)重于軟件開發(fā)過(guò)程地管理及工程能力地提高與評(píng)估,是際軟件業(yè)地質(zhì)量管理標(biāo)準(zhǔn)。軟件過(guò)程能力成熟度模型認(rèn)為,軟件質(zhì)量難以保證地問(wèn)題在很大程度上是由管理上地缺陷造成地,而不是由技術(shù)方面地問(wèn)題造成地。因此,軟件過(guò)程能力成熟度模型從管理學(xué)地角度出發(fā),通過(guò)控制軟件地開發(fā)與維護(hù)過(guò)程來(lái)保證軟件產(chǎn)品地質(zhì)量。它地核心是對(duì)軟件開發(fā)與維護(hù)地全過(guò)程行監(jiān)控與研究,使其科學(xué)化,標(biāo)準(zhǔn)化,能夠合理地實(shí)現(xiàn)預(yù)定目地。一二.九軟件過(guò)程能力成熟度模型
軟件過(guò)程能力成熟度模型圖軟件過(guò)程能力成熟度模型地成熟度等級(jí)一二.一零軟件項(xiàng)目管理
一
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度船舶入股船舶船員培訓(xùn)合作協(xié)議
- 2025年度時(shí)尚產(chǎn)品銷售總額提成與時(shí)尚趨勢(shì)合作合同
- 2025年度離職員工保密協(xié)議及競(jìng)業(yè)禁止條款合同
- 二零二五年度班組承包市場(chǎng)營(yíng)銷合作協(xié)議
- 2025年度酒店客房裝修風(fēng)格設(shè)計(jì)與施工合同
- 施工現(xiàn)場(chǎng)施工防生物毒素泄漏制度
- 施工日志填寫中的常見(jiàn)錯(cuò)誤及避免方法
- 現(xiàn)代科技下的學(xué)生心理發(fā)展研究
- 學(xué)校如何實(shí)施綠色化教學(xué)與管理
- 青少年心理健康教育與教師引導(dǎo)策略探討
- 鉆芯法樁基檢測(cè)報(bào)告
- 【學(xué)前教育小學(xué)化成因分析及其對(duì)策10000字(論文)】
- 腕管綜合征課件
- 事業(yè)單位工作人員年度考核登記表(通用模板)
- 人教版七年級(jí)數(shù)學(xué)下冊(cè)《垂線》
- 公開選拔村級(jí)后備干部報(bào)名登記表
- 2022年湖南公務(wù)員考試《申論》真題套卷(鄉(xiāng)鎮(zhèn)卷)2
- 【薪酬】國(guó)有企業(yè)中長(zhǎng)期股權(quán)激勵(lì)課件
- 學(xué)前兒童行為觀察第一章觀察概述課件
- 化學(xué)品防范說(shuō)明編碼
- 帕金森病(英文版)課件
評(píng)論
0/150
提交評(píng)論