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

正文內容

第13講軟件維護與再工程-資料下載頁

2025-01-08 07:18本頁面
  

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