當(dāng)前位置首頁 > 汽車/機(jī)械/制造 > 機(jī)械軟件
搜柄,搜必應(yīng)! 快速導(dǎo)航 | 使用教程

軟件工程基礎(chǔ)之07軟件維護(hù)

文檔格式:PPT| 30 頁|大小 501.50KB|積分 10|2024-11-01 發(fā)布|文檔ID:250121213
第1頁
第2頁
第3頁
下載文檔到電腦,查找使用更方便 還剩頁未讀,繼續(xù)閱讀>>
1 / 30
此文檔下載收益歸作者所有 下載文檔
  • 版權(quán)提示
  • 文本預(yù)覽
  • 常見問題
  • 單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,Footer Text,*,/23,第七章 軟件維護(hù),軟件維護(hù)概述,1,軟件維護(hù)技術(shù),5,軟件維護(hù)過程模型,3,應(yīng)注意的問題,2,小結(jié),6,軟件維護(hù)概述,軟件維護(hù)的基本概念,軟件維護(hù)的基本類型,維護(hù)的困難性,軟件維護(hù)的定義,IEEE/EIA 12207ISO/IEC2008,中對(duì)軟件維護(hù)的定義是:軟件維護(hù)是指,由于軟件產(chǎn)品出現(xiàn)問題或需要改進(jìn)而對(duì)代碼及相關(guān)文檔的修改,,其目的是對(duì)現(xiàn)有軟件產(chǎn)品進(jìn)行修改的同時(shí)保持其完整性軟件維護(hù)的必要性,軟件維護(hù)能夠改正錯(cuò)誤軟件維護(hù)能夠改善設(shè)計(jì)軟件維護(hù)能夠?qū)崿F(xiàn)軟件的改進(jìn)軟件維護(hù)能夠?qū)崿F(xiàn)與其他系統(tǒng)的交互軟件維護(hù)能夠?yàn)槭褂貌煌挠布④浖?、系統(tǒng)的新性能以及通訊設(shè)備等而對(duì)軟件進(jìn)行改進(jìn)軟件維護(hù)能夠完成遺留系統(tǒng)的移植軟件退出使用遺留系統(tǒng):仍能夠使用的舊系統(tǒng),有時(shí)對(duì)于業(yè)務(wù)運(yùn)行來說至關(guān)重要原因:過時(shí)的語言或技術(shù)實(shí)現(xiàn)、昂貴的系統(tǒng)支持導(dǎo)致維護(hù)昂貴、結(jié)構(gòu)性差軟件維護(hù)的成本,軟件維護(hù)階段一般要消耗軟件生命周期中經(jīng)費(fèi)開支的,大部分,軟件維護(hù)的費(fèi)用占軟件總預(yù)算的比例:,70,年代的,35%40%,80,年代上升為,40%60%,90,年代已經(jīng)占,70%,80%,軟件維護(hù)的基本類型,維護(hù)的類型有,四,種:,糾錯(cuò),性維護(hù),適應(yīng)性維護(hù),完善性維護(hù),預(yù)防性維護(hù),國外的統(tǒng)計(jì)數(shù)字表明,完善性維護(hù)占全部維護(hù)活動(dòng)的,50%,66%,,糾錯(cuò)性維護(hù)占,17%,21%,,適應(yīng)性維護(hù)占,18%,25%,,其他維護(hù)活動(dòng)只占,4%,左右,糾錯(cuò)性維護(hù),在軟件交付使用后,因開發(fā)時(shí)測(cè)試的不徹底、不完全,必然會(huì)有部分,隱藏的錯(cuò)誤,遺留到運(yùn)行階段。

    設(shè)計(jì)錯(cuò)誤、編碼錯(cuò)誤、數(shù)據(jù)錯(cuò)誤、文檔錯(cuò)誤,這些隱藏下來的錯(cuò)誤在某些特定的使用環(huán)境下就會(huì)暴露出來為了,識(shí)別和糾正軟件錯(cuò)誤、改正軟件性能上的缺陷、排除實(shí)施中的誤用,應(yīng)當(dāng)進(jìn)行的診斷和改正錯(cuò)誤的過程,就叫做糾錯(cuò)性維護(hù)適應(yīng)性維護(hù),在使用過程中,,外部環(huán)境(新的硬、軟件配置),數(shù)據(jù)環(huán)境(數(shù)據(jù)庫、數(shù)據(jù)格式、數(shù)據(jù)輸入,/,輸出方式、數(shù)據(jù)存儲(chǔ)介質(zhì)),網(wǎng)絡(luò)環(huán)境等其他可能發(fā)生的變化為使軟件,適應(yīng)外部、數(shù)據(jù)、網(wǎng)絡(luò)的變化,,而去修改軟件的過程就叫做適應(yīng)性維護(hù)完善性維護(hù),在軟件的使用過程中,用戶往往會(huì)對(duì)軟件提出,新的功能與性能要求,為了滿足,新的功能與性能要求,,需要修改或再開發(fā)軟件,,以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件的可維護(hù)性這種情況下進(jìn)行的維護(hù)活動(dòng)叫做完善性維護(hù)實(shí)踐表明,在幾種維護(hù)活動(dòng)中,,完善性維護(hù)所占的比重最大,即大部分維護(hù)工作是改變和加強(qiáng)軟件,而不是糾錯(cuò)完善性維護(hù)不一定是救火式的緊急維修,而可以是有計(jì)劃、有預(yù)謀的一種再開發(fā)活動(dòng)預(yù)防性維護(hù),預(yù)防性維護(hù)是防止問題發(fā)生而事先維護(hù),目的是為了提高軟件的可維護(hù)性、可靠性等,為以后進(jìn)一步改進(jìn)軟件打下良好基礎(chǔ)體系結(jié)構(gòu)不良、數(shù)據(jù)結(jié)構(gòu)不理想、文檔不全、缺少變更記錄等。

    預(yù)防性維護(hù)定義為:,采用適當(dāng)?shù)姆椒▽?duì)需要維護(hù)的軟件或軟件中的,某一部分(重新)進(jìn)行設(shè)計(jì)、編碼和測(cè)試,逆向工程、軟件再工程等軟件維護(hù)中應(yīng)注意的問題(一),技術(shù)方面,程序的理解:有限理解,測(cè)試:完整測(cè)試消耗大,往往選擇回歸測(cè)試、局部測(cè)試軟件運(yùn)行中,協(xié)調(diào)測(cè)試?yán)щy影響分析,可維護(hù)性,影響分析,影響分析是對(duì)修改的影響進(jìn)行完整分析,衡量消耗的可接受程度目標(biāo):,決定,改變的范圍,這對(duì)合理計(jì)劃和完成工作有重要意義,對(duì)完成工作,所需的資源,進(jìn)行精確的估計(jì)分析改變的,費(fèi)用,/,效益比,由于對(duì)軟件進(jìn)行變更往往是牽一發(fā)而動(dòng)全身的,因此如果給出了一個(gè)變更,必須考慮到關(guān)聯(lián)性的,復(fù)雜情況,可維護(hù)性,可維護(hù)性是指通過一定的手段,使軟件可以被維護(hù)、改進(jìn)、改動(dòng)或修正,以滿足特定的需求的方便程度決定要素:,可理解性,可測(cè)試性,可修改性,可移植性,可重用性,環(huán)境要素:,維護(hù)文檔,運(yùn)行環(huán)境,維護(hù)組織,維護(hù)質(zhì)量,軟件維護(hù)中應(yīng)注意的問題(二),管理方面,契合組織的目標(biāo),:,延長(zhǎng)軟件生命、軟件升級(jí)、改進(jìn)的需要,但投資回報(bào)不明確權(quán)衡消耗與收益人力資源:吸引和維持軟件維護(hù)隊(duì)伍二等公民”誤區(qū),過程:需要開發(fā)過程沒有的活動(dòng),如逆向工程,管理挑戰(zhàn),如何組織維護(hù)活動(dòng):責(zé)任到人,外包:有效控制是重點(diǎn),確定服務(wù)的范圍以及合約細(xì)節(jié)是挑戰(zhàn)。

    軟件維護(hù)中應(yīng)注意的問題(三),維護(hù)費(fèi)用估算,參數(shù)模型,M=P+K e,(cd),M,是維護(hù)用的總工作量,,P,是生產(chǎn)性工作量,,K,是經(jīng)驗(yàn)常數(shù),,c,是復(fù)雜程度,,d,是維護(hù)人員對(duì)軟件的熟悉程度生產(chǎn)性成本包括分析評(píng)價(jià)、修改設(shè)計(jì)和編碼等非生產(chǎn)性成本包括程序理解、數(shù)據(jù)結(jié)構(gòu)解釋、接口特點(diǎn)和性能限度等基于經(jīng)驗(yàn),專家判斷、類推、工作分解結(jié)構(gòu),軟件維護(hù)過程模型,IEEE,維護(hù)模型圖,分類與鑒別階段,分析階段,設(shè)計(jì)階段,實(shí)現(xiàn)階段,系統(tǒng)測(cè)試階段,驗(yàn)收測(cè)試階段,交付階段,修改輸入,軟件維護(hù)技術(shù),程序的理解,軟件再工程,軟件逆向工程,程序的理解,為了有效維護(hù),需要閱讀和理解程序,方法:,1,、文檔理解、代碼理解、注釋理解,2,、代碼瀏覽工具(,Source Insight,等),程序理解的任務(wù):以軟件維護(hù)、升級(jí)和再工程為目的,在不同的抽象級(jí)別上建立基本軟件的概念模型,包括從代碼本身的模型到基本應(yīng)用領(lǐng)域的模型,即,建立從問題,/,應(yīng)用域到程序設(shè)計(jì),/,實(shí)現(xiàn)域的映射集,程序理解的具體任務(wù),通過檢查單個(gè)的程序設(shè)計(jì)結(jié)構(gòu),程序被表示成,抽象語法樹、符號(hào)表或普通源文本包括手工代碼閱讀、人工提取、程序分析、靜態(tài)分析和動(dòng)態(tài)分析等。

    盡量做到程序,隱含信息,的顯性表示及程序,內(nèi)部關(guān)系,的可視化如控制流、數(shù)據(jù)流分析、程序視圖構(gòu)造等從源代碼中,提取信息,,并存放在通用的數(shù)據(jù)庫中,然后通過查詢語言對(duì)數(shù)據(jù)庫進(jìn)行查詢檢查程序構(gòu)造過程中的,結(jié)構(gòu)關(guān)系,,明確表示程序組成部分之間的依賴關(guān)系識(shí)別程序的,高層概念,,如標(biāo)準(zhǔn)算法、數(shù)據(jù)結(jié)構(gòu)、語法及語義匹配等軟件再工程,定義,軟件再工程(,Re-engineering,)指對(duì)現(xiàn)有軟件進(jìn)行仔細(xì)審查和改造,對(duì)其進(jìn)行,重新構(gòu)造,,使之成為一個(gè)新的形式,同時(shí)包括隨之產(chǎn)生的,對(duì)新形式的實(shí)現(xiàn),軟件再工程模型,數(shù)據(jù)重構(gòu),正向工程,庫存目錄分析,代碼重構(gòu),逆向工程,文檔重構(gòu),應(yīng)用系統(tǒng)的庫存目錄:系統(tǒng)規(guī)模、使用年限、業(yè)務(wù)重要程度等信息根據(jù)相關(guān)信息選擇再工程業(yè)務(wù),后分配資源系統(tǒng)可以正常運(yùn)作,并可預(yù)見能夠支撐至終點(diǎn),文檔不變文檔必須更新,但資源有限,部分重構(gòu)系統(tǒng)關(guān)鍵業(yè)務(wù),必須完全重構(gòu),則完全重構(gòu)某些老程序的體系結(jié)構(gòu)比較合理,但是,一些模塊的編碼方式卻是難于理解、測(cè)試和維護(hù)的代碼重構(gòu):不改變系統(tǒng)行為,只是對(duì)程序結(jié)構(gòu)進(jìn)行改變和優(yōu)化,使其易于理解、測(cè)試和維護(hù)方法:分析源代碼,標(biāo)記與程序設(shè)計(jì)概念相違背的部分,重構(gòu)新代碼評(píng)審和測(cè)試。

    全范圍在工程活動(dòng),對(duì)當(dāng)前數(shù)據(jù)體系結(jié)構(gòu)進(jìn)行分解,定義必要的數(shù)據(jù)模型,表示數(shù)據(jù)對(duì)象和屬性,進(jìn)行質(zhì)量評(píng)審如數(shù)據(jù)結(jié)構(gòu)較差,進(jìn)行再工程數(shù)據(jù)結(jié)構(gòu)改變影響體系結(jié)構(gòu)和代碼,,慎重,也稱為,革,新或,改,造整個(gè) 系統(tǒng)代碼、數(shù)據(jù)重構(gòu)正向工程過程應(yīng)用現(xiàn)代軟件工程的概念、原理、技術(shù)和方法,重新開發(fā)現(xiàn)有的某些應(yīng)用系統(tǒng)在大多數(shù)情況下,經(jīng)過正向工程過程后,得,出的軟件,不僅重新實(shí)現(xiàn)了現(xiàn)有系統(tǒng)的功能,而且增加了新功能,提高了整體性能軟件逆向工程,軟件逆向工程(,Software Reverse Engineering,)是分析目標(biāo)系統(tǒng),識(shí)別系統(tǒng)的構(gòu)件及其交互關(guān)系,并且,通過高層抽象或其他形式來展現(xiàn)目標(biāo)系統(tǒng),的過程方法:分析系統(tǒng),抽象系統(tǒng)和展現(xiàn)系統(tǒng),從而實(shí)現(xiàn)協(xié)助用戶理解系統(tǒng)的目的設(shè)計(jì)恢復(fù)的過程逆向工程過程,逆向工程主要內(nèi)容,一、數(shù)據(jù)的逆向工程,二、處理的逆向工程,三、用戶界面的逆向工程,四、逆向工程的工具,數(shù)據(jù)的逆向過程,一、數(shù)據(jù)結(jié)構(gòu)提取,1,、模式分析:通過分析現(xiàn)有的結(jié)構(gòu)化模式推出隱含的構(gòu)造與約束,以提供一個(gè)原始的物理模式2,、程序分析:分析應(yīng)用程序以及其他一些過程(如:觸發(fā)器)的代碼,以得到隱含的數(shù)據(jù)結(jié)構(gòu)和完整性約束。

    3,、數(shù)據(jù)分析:分析數(shù)據(jù),以得到暗含的數(shù)據(jù)結(jié)構(gòu)以及特性的數(shù)據(jù)模式,同時(shí),對(duì)一些假設(shè)進(jìn)行驗(yàn)證4,、模式集成:合并上述過程所得到的不同模式,最終得到完整的邏輯模式,其中包含隱式和顯式的結(jié)構(gòu)和約束二、數(shù)據(jù)結(jié)構(gòu)的概念化,分為以下幾個(gè)步驟:去除過時(shí)的和技術(shù)性的結(jié)構(gòu)以及重命名;提取相關(guān)的語義信息;對(duì)被優(yōu)化的構(gòu)造進(jìn)行識(shí)別和變形,(逆優(yōu)化);檢索每一個(gè)實(shí)現(xiàn)構(gòu)造中的源概念結(jié)構(gòu);以及規(guī)范化處理的逆向過程,為了理解過程抽象,需要在,不同的抽象級(jí)別,(系統(tǒng)級(jí)、程序級(jí)、構(gòu)件級(jí)、模式級(jí)和語句級(jí))分析代碼,對(duì)大型系統(tǒng),通常用半自動(dòng)方法完成逆向工程使用自動(dòng)化工具幫助軟件工程師理解現(xiàn)有代碼的語義,然后將該過程的結(jié)果傳遞給重構(gòu)和正向工程工具以完成再工程過程用戶界面的逆向工程,弄清幾個(gè)問題:,界面必須處理的,基本動(dòng)作,是什么?,系統(tǒng)對(duì)這些,動(dòng)作的行為反應(yīng),的簡(jiǎn)要描述是什么?,有哪些,界面的等價(jià)概念,是相關(guān)的?,逆向過程的工具,靜態(tài)模型逆向工具,Rational Rose,Rigi,JBPAS,動(dòng)態(tài)模型逆向工具,SCED,ISVis,Borland Together,理論和技術(shù)還不夠完善,工具支持很重要,但是無法完全依賴本章小結(jié),軟件維護(hù)可以分為,糾錯(cuò)性維護(hù)、適應(yīng)性維護(hù)、完善性維護(hù)、預(yù)防性維護(hù),。

    軟件維護(hù)實(shí)踐中經(jīng)常會(huì)遇到各種困難,需要在技術(shù)、管理方面進(jìn)行考慮,并對(duì)維護(hù)費(fèi)用進(jìn)行估算軟件維護(hù)按IEEE 維護(hù)過程模型可以分為,七個(gè)階段,程序的理解,對(duì)軟件維護(hù)具有重要意義,程序理解的任務(wù)就是要揭示程序的功能與實(shí)現(xiàn)機(jī)制軟件的再工程,是對(duì)現(xiàn)有軟件進(jìn)行仔細(xì)審查和改造,進(jìn)行重新構(gòu)造,最終成為一個(gè)新的形式,六種活動(dòng)構(gòu)成了再工程的循環(huán)模型軟件逆向工程,包括數(shù)據(jù)逆向工程、處理逆向工程和用戶界面逆向工程作業(yè),為什么需要軟件維護(hù)?簡(jiǎn)述軟件維護(hù)的主要種類簡(jiǎn)述軟件可維護(hù)性中軟件自身的因素和軟件維護(hù)環(huán)境兩方面的內(nèi)容簡(jiǎn)述,IEEE,軟件維護(hù)過程模型試從不同抽象級(jí)別闡述應(yīng)該如何理解程序,應(yīng)得到什么輸出什么是軟件的逆向工程?簡(jiǎn)述其意義選擇你認(rèn)為是最困難的一種逆向工程活動(dòng)進(jìn)行闡述,具體分析其難點(diǎn)所在什么是軟件的再工程?簡(jiǎn)述其主要步驟。

    點(diǎn)擊閱讀更多內(nèi)容
    最新文檔
    傳統(tǒng)文化道德不是高懸的明月而是腳下的星光.pptx
    世界無煙日關(guān)注青少年成長(zhǎng)健康無煙為成長(zhǎng)護(hù)航.pptx
    五四青年節(jié)詩詞贊歌五四青年自強(qiáng)不息.pptx
    XX學(xué)校班主任培訓(xùn)用心管理慧做班主任.pptx
    拒絕熬夜健康養(yǎng)生規(guī)律作息遠(yuǎn)離亞健康.pptx
    兒童成長(zhǎng)手冊(cè)時(shí)光里的童真印記.pptx
    幼兒園夏季傳染病預(yù)防指南預(yù)見夏天健康童行夏季傳染病預(yù)防科普.pptx
    高中生心理健康教育主題班會(huì)快樂學(xué)習(xí)高效學(xué)習(xí)正視壓力學(xué)會(huì)減壓.pptx
    員工職業(yè)道德與職業(yè)素養(yǎng)培訓(xùn)遵守職業(yè)道德提高職業(yè)修養(yǎng).pptx
    2025職業(yè)病防治法宣傳周健康守護(hù)職防同行.pptx
    XX幼兒園防災(zāi)減災(zāi)安全教育臨災(zāi)不亂安全童行學(xué)會(huì)保護(hù)自己.pptx
    在2025年縣教育工作大會(huì)暨高考備考工作推進(jìn)會(huì)上的講話發(fā)言材料.docx
    在2025年縣全面從嚴(yán)治黨和黨風(fēng)廉政會(huì)議上的講話發(fā)言材料.docx
    在2025年全市慶?!拔逡弧濒邉趧?dòng)模范表彰大會(huì)上的講話發(fā)言材料多篇.docx
    2025年稅務(wù)局青年代表在五四青年座談會(huì)上的發(fā)言材料3篇.docx
    在2025年市委全體會(huì)議上的主持講話發(fā)言材料.docx
    2025年黨風(fēng)廉政建設(shè)工作要點(diǎn)材料.docx
    在2025年全市青年干部慶祝五四青年節(jié)大會(huì)上的講話發(fā)言材料多篇.docx
    在入黨積極分子培訓(xùn)班上的講話發(fā)言材料.docx
    縣文旅局黨組書記在五一假期及夏季旅游安全生產(chǎn)工作部署會(huì)議上的講話發(fā)言材料.docx
    賣家[上傳人]:功夫足球
    資質(zhì):實(shí)名認(rèn)證