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

正文內(nèi)容

第13講軟件維護(hù)與再工程-資料下載頁(yè)

2025-01-08 07:18本頁(yè)面
  

【正文】 制人員的意圖進(jìn)行重新修改,并對(duì)今后可能出現(xiàn)的變化估計(jì),缺少文檔的幫助也將很難實(shí)現(xiàn)。 – 另一方面,對(duì)于程序文檔一定要能及時(shí)反映程序的變化,否則將對(duì)后續(xù)維護(hù)人員產(chǎn)生誤導(dǎo)。 40 ? 進(jìn)行質(zhì)量保證審查 – 除了保證軟件得到適當(dāng)?shù)馁|(zhì)量外,審查還可以用來(lái)檢測(cè)在開發(fā)和維護(hù)階段內(nèi)發(fā)生的質(zhì)量變化。一旦檢測(cè)出問(wèn)題來(lái),就可以采取措施來(lái)糾正,以控制不斷增長(zhǎng)的軟件維護(hù)成本,延長(zhǎng)軟件系統(tǒng)的有效生命期。 41 再工程的概念 ? 逆向工程 ( reverse engineering):指在軟件生存周期中,將軟件的某種形式描述轉(zhuǎn)換成更抽象形式的活動(dòng) ? 重構(gòu) ( restructuring):指在同一抽象級(jí)別上轉(zhuǎn)換系統(tǒng)的描述形式。如把 C++ 程序轉(zhuǎn)換成 Java程序 ? 設(shè)計(jì)恢復(fù) ( design recovery):指借助工具從已有程序中抽象出有關(guān)數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、總體結(jié)構(gòu)設(shè)計(jì)和過(guò)程設(shè)計(jì)的信息。 42 ? 再工程 ( reengineering):指在逆向工程所獲信息的基礎(chǔ)上修改或重構(gòu)已有的系統(tǒng),產(chǎn)生系統(tǒng)的一個(gè)新版本 ? 再工程的主要目的 :為遺留系統(tǒng)轉(zhuǎn)化為可演化系統(tǒng)提供一條現(xiàn)實(shí)可行的途徑 ? 再工程是一個(gè)工程過(guò)程,它將逆向工程、重構(gòu)和正向工程組合起來(lái),將現(xiàn)存系統(tǒng)重新構(gòu)造為新的形式。當(dāng)實(shí)施軟件的再工程時(shí), 軟件理解 是再工程的基礎(chǔ)和前提。 43 ? 為什么要進(jìn)行再工程 – 維護(hù)一行源代碼的代價(jià)可能是最初開發(fā)該行源代碼代價(jià)的 1420倍;同時(shí)重新設(shè)計(jì)軟件體系結(jié)構(gòu)時(shí)使用了現(xiàn)代設(shè)計(jì)概念,它對(duì)將來(lái)的維護(hù)會(huì)有很大的幫助;現(xiàn)有的程序版本可以作為軟件原型使用,開發(fā)生產(chǎn)率可以大大高于平均水平;用戶具有較多使用該軟件的經(jīng)驗(yàn),因此,能夠很容易地搞清新的變更需求和變更的范圍;另外,利用逆向工程和再工程的工具,可以使一部分工作自動(dòng)化;在完成預(yù)防性維護(hù)的過(guò)程中還可以建立起完整的軟件配置。 44 逆向工程 ? 逆向工程是把軟件源程序還原為軟件文檔或軟件設(shè)計(jì)的過(guò)程。 通過(guò)逆向工程,可以從更高的抽象度來(lái)觀察軟件。抽象度的多少可由抽象的層次,文檔的完整性,工具等因素決定。 ? 逆向工程來(lái)源于硬件世界。硬件廠商總想弄到競(jìng)爭(zhēng)對(duì)手產(chǎn)品的設(shè)計(jì)和制造“奧秘”。但是又得不到現(xiàn)成的檔案,只好拆卸對(duì)手的產(chǎn)品并進(jìn)行分析,企圖從中獲取有價(jià)值的東西。 ? 軟件的逆向工程在道理上與硬件相似。但在很多時(shí)候,軟件的逆向工程并不是針對(duì)競(jìng)爭(zhēng)對(duì)手的,而是針對(duì)自己公司多年前的產(chǎn)品。期望從老產(chǎn)品中提取系統(tǒng)設(shè)計(jì)、需求說(shuō)明等有價(jià)值的信息。 45 逆向工程 ? 逆向工程導(dǎo)出的信息可分為四個(gè)抽象層次 – 實(shí)現(xiàn)級(jí) :包括程序的抽象語(yǔ)法樹、符號(hào)表等信息; – 結(jié)構(gòu)級(jí) :包括反映程序分量之間相互依賴關(guān)系的信息,如調(diào)用圖、結(jié)構(gòu)圖等; – 功能級(jí) :包括反映程序段功能及程序段之間關(guān)系的信息; – 領(lǐng)域級(jí) :包括反映程序分量或程序諸實(shí)體與應(yīng)用領(lǐng)域概念之間對(duì)應(yīng)關(guān)系的信息。對(duì)于一項(xiàng)具體的維護(hù)任務(wù),一般不必導(dǎo)出所有抽象級(jí)別上的信息。如代碼重構(gòu)任務(wù),只需獲得實(shí)現(xiàn)級(jí)信息即可。 46 ? 現(xiàn)代的軟件一般都擁有華麗的界面,當(dāng)準(zhǔn)備對(duì)舊的軟件進(jìn)行用戶界面的逆向工程時(shí),必須先理解舊軟件的用戶界面,并且刻畫出界面的結(jié)構(gòu)和行為。 47 ? 對(duì)數(shù)據(jù)的逆向工程 :由于程序中存在許多不同種類的數(shù)據(jù),例如內(nèi)部的數(shù)據(jù)結(jié)構(gòu),以及底層的數(shù)據(jù)庫(kù)和外部的文件。其中對(duì)內(nèi)部的數(shù)據(jù)結(jié)構(gòu)的逆向工程可以通過(guò)檢查程序代碼以及變量來(lái)完成;而對(duì)數(shù)據(jù)庫(kù)結(jié)構(gòu)的重構(gòu)可通過(guò)建立一個(gè)初始的對(duì)象模型,確定侯選鍵,精化實(shí)驗(yàn)性的類,定義一般化,以及發(fā)現(xiàn)關(guān)聯(lián)來(lái)完成。 ? 對(duì)理解的逆向工程 ,為了去理解過(guò)程的抽象,代碼的分析必須在不同的層次進(jìn)行:系統(tǒng),程序,部件,模式和語(yǔ)句。對(duì)于大型系統(tǒng),逆向工程通常用半自動(dòng)化的方法來(lái)完成。 48 謝謝大家! 4
點(diǎn)擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1