freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

軟件工程第15章-軟件維護(hù)與再工程-資料下載頁

2025-02-24 10:38本頁面
  

【正文】 安裝它的機(jī)器數(shù)量,它的復(fù)雜程度,文檔質(zhì)量,整體可維護(hù)性等級,預(yù)期壽命,在未來 36個月內(nèi)的預(yù)期修改次數(shù),業(yè)務(wù)重要程度等 )。 – 下述 3類程序有可能成為預(yù)防性維護(hù)的對象: 預(yù)定將使用多年的程序 、 當(dāng)前正在成功地使用著的程序和 在最近的將來可能要做重大修改或增強(qiáng)的程序 。 54 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 軟件再工程過程 ? 文檔重構(gòu) – 建立文檔非常耗費時間,不可能為數(shù)百個程序都重新建立文檔。如果一個程序是相對穩(wěn)定的,而且可能不會再經(jīng)歷什么變化,那么,讓它保持現(xiàn)狀。為了便于今后的維護(hù),必須更新文檔,但只針對系統(tǒng)中當(dāng)前正在修改的那些部分建立完整文檔。如果某應(yīng)用系統(tǒng)是完成業(yè)務(wù)工作的關(guān)鍵,而且必須重構(gòu)全部文檔,則仍然應(yīng)該設(shè)法把文檔工作減少到必需的最小量。 55 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 軟件再工程過程 ? 逆向工程 – 軟件的逆向工程是分析程序以便在比源代碼更高的抽象層次上創(chuàng)建出程序的某種表示的過程,逆向工程工具從現(xiàn)存的程序代碼中抽取有關(guān)數(shù)據(jù)、體系結(jié)構(gòu)和處理過程的設(shè)計信息。 56 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 軟件再工程過程 ? 代碼重構(gòu) – 某些老程序具有比較完整、合理的體系結(jié)構(gòu),但是,個體模塊的編碼方式卻是難于理解、測試和維護(hù)的。在這種情況下,可以重構(gòu)可疑模塊的代碼。 – 為了完成代碼重構(gòu)活動,首先用重構(gòu)工具分析源代碼,標(biāo)注出和結(jié)構(gòu)化程序設(shè)計概念相違背的部分。然后重構(gòu)有問題的代碼 (此項工作可自動進(jìn)行 )。最后,復(fù)審和測試生成的重構(gòu)代碼 (以保證沒有引入異常 )并更新代碼文檔。 57 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 軟件再工程過程 ? 數(shù)據(jù)重構(gòu) – 數(shù)據(jù)重構(gòu)發(fā)生在相當(dāng)?shù)偷某橄髮哟紊?,它是一種全范圍的再工程活動。在大多數(shù)情況下,數(shù)據(jù)重構(gòu)始于逆向工程活動,分解當(dāng)前使用的數(shù)據(jù)體系結(jié)構(gòu),必要時定義數(shù)據(jù)模型,標(biāo)識數(shù)據(jù)對象和屬性,并從軟件質(zhì)量的角度復(fù)審現(xiàn)存的數(shù)據(jù)結(jié)構(gòu)。 58 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 軟件再工程過程 ? 正向工程 – 正向工程過程應(yīng)用軟件工程的原理、概念、技術(shù)和方法來重新開發(fā)某個現(xiàn)有的應(yīng)用系統(tǒng)。在大多數(shù)情況下,被再工程的軟件不僅重新實現(xiàn)現(xiàn)有系統(tǒng)的功能,而且加入了新功能和提高了整體性能。 59 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 逆向工程 ? 逆向工程是把軟件源程序還原為軟件文檔或軟件設(shè)計的過程。通過逆向工程,可以從更高的抽象度來觀察軟件。抽象度的多少可由抽象的層次,文檔的完整性,工具等因素決定。 ? 逆向工程來源于硬件世界。硬件廠商總想弄到競爭對手產(chǎn)品的設(shè)計和制造 “ 奧秘 ” 。但是又得不到現(xiàn)成的檔案,只好拆卸對手的產(chǎn)品并進(jìn)行分析,企圖從中獲取有價值的東西。 ? 軟件的逆向工程在道理上與硬件相似。但在很多時候,軟件的逆向工程并不是針對競爭對手的,而是針對自己公司多年前的產(chǎn)品。期望從老產(chǎn)品中提取系統(tǒng)設(shè)計、需求說明等有價值的信息。 60 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 逆向工程 ? 逆向工程導(dǎo)出的信息可分為四個抽象層次 – 實現(xiàn)級 :包括程序的抽象語法樹、符號表等信息; – 結(jié)構(gòu)級 :包括反映程序分量之間相互依賴關(guān)系的信息,如調(diào)用圖、結(jié)構(gòu)圖等; – 功能級 :包括反映程序段功能及程序段之間關(guān)系的信息; – 領(lǐng)域級 :包括反映程序分量或程序諸實體與應(yīng)用領(lǐng)域概念之間對應(yīng)關(guān)系的信息。對于一項具體的維護(hù)任務(wù),一般不必導(dǎo)出所有抽象級別上的信息。如代碼重構(gòu)任務(wù),只需獲得實現(xiàn)級信息即可。 61 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 逆向工程 ? 根據(jù)源程序的類別不同,逆向工程還可以分為: 對用戶界面的逆向工程 、 對數(shù)據(jù)的逆向工程和對理解的逆向工程 。 ? 現(xiàn)代的軟件一般都擁有華麗的界面,當(dāng)準(zhǔn)備對舊的軟件進(jìn)行用戶界面的逆向工程時,必須先理解舊軟件的用戶界面,并且刻畫出界面的結(jié)構(gòu)和行為。 62 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 逆向工程 ? 對數(shù)據(jù)的逆向工程:由于程序中存在許多不同種類的數(shù)據(jù),例如內(nèi)部的數(shù)據(jù)結(jié)構(gòu),以及底層的數(shù)據(jù)庫和外部的文件。其中對內(nèi)部的數(shù)據(jù)結(jié)構(gòu)的逆向工程可以通過檢查程序代碼以及變量來完成;而對數(shù)據(jù)庫結(jié)構(gòu)的重構(gòu)可通過建立一個初始的對象模型,確定侯選鍵,精化實驗性的類,定義一般化,以及發(fā)現(xiàn)關(guān)聯(lián)來完成。 ? 對理解的逆向工程,為了去理解過程的抽象,代碼的分析必須在不同的層次進(jìn)行:系統(tǒng),程序,部件,模式和語句。對于大型系統(tǒng),逆向工程通常用半自動化的方法來完成。 63 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 逆向工程 ? 逆向工程中用于恢復(fù)信息的方法主要有四類 – 用戶指導(dǎo)下的搜索與變換 :這類方法用于導(dǎo)出實現(xiàn)級和結(jié)構(gòu)級信息。這類方法一般可產(chǎn)生模塊的略圖( outline)、流程圖和交叉訪問表。 – 變換方法 :這類方法可用于恢復(fù)實現(xiàn)級、結(jié)構(gòu)級和功能級的信息。這類方法可用工具實現(xiàn),如靜態(tài)分析,調(diào)用圖、控制流圖生成等。 64 復(fù)旦大學(xué)計算機(jī)科學(xué)技術(shù)學(xué)院 軟件工程(第二版) 逆向工程 – 基于領(lǐng)域知識的方法 :這類方法用于恢復(fù)功能級和領(lǐng)域級信息。領(lǐng)域知識用規(guī)則庫表示,用已確定或假定的領(lǐng)域概念與代碼之間的對應(yīng)關(guān)系,推導(dǎo)進(jìn)一步的假設(shè),最后導(dǎo)出程序的功能。這類方法的不確定性很大,目前尚無成熟的工具。 – 鉛板恢復(fù) :這類方法僅適用于推導(dǎo)實現(xiàn)級和結(jié)構(gòu)級信息。這類方法用于識別程序設(shè)計“ 鉛板 ” 或公共結(jié)構(gòu),鉛板既可是一個簡單算法(如二變量互換),也可是相對復(fù)雜的成分(如冒泡排序)。 65 演講完畢,謝謝觀看!
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1