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

正文內(nèi)容

軟件工程課件:swguide8(編輯修改稿)

2024-10-10 13:25 本頁面
 

【文章內(nèi)容簡介】 了友好、直觀的多媒體方式 。由于網(wǎng)狀結構比較自由、松散,因此,超文本方法更容易修改可復用構件庫的結構。 Windows 環(huán)境下的聯(lián)機幫助系統(tǒng)就是一種典型的超文本系統(tǒng)。為了構造可復用構件庫的文檔,首先要根據(jù)論域分析的結果,在說明文檔中標識超文本結點,并在相關文檔中建立鏈接關系。然后用類似于聯(lián)機幫助系統(tǒng)編譯器的工具對構件的說明文檔進行編譯,最后用相應的工具運行編譯后的目標程序代碼即可。 (5) 可復用構件的 3C 模型 可以有很多方法來描述可復用的構件,其中最理想的是由 Tracz 提出的 3C 模型:概念(Concept)、內(nèi)容 (Content)和 上下文 (Context)。 ? 概念:描述軟件構件做什么。為此,需要完全地描述構件的接口和表示語義 (表示在前置條件和后置條件的上下文中 )。概念將傳達構件的意圖。 ? 內(nèi)容:描述軟件構件的概念如何實現(xiàn)。一般來講,內(nèi)容是對外來用戶隱蔽的信息,是只有試圖修改或測試該構件的人才需要了解的信息。 ? 上下文:將可復用的構件安置到它的應用論域中。就是說,上下文將通過定義概念的、操作的和實現(xiàn)的特征,使軟件人員能夠找到合適的構件以滿足應用的需求。 為了在實際背景下使用,必須把概念、內(nèi)容和上下文轉換成具體的規(guī)格說明模式。關于可復用構件的分類模式,已有不少文章討論過。所有的方法大致歸 為 3 個主要的方面:圖書館和信息科學方法、人工智能方法和超文本系統(tǒng)。目前,絕大多數(shù)研究都建議使用圖書館科學方法為軟件構件進行分類。圖 給出了一個使用圖書館科學索引法的分類法。“受控的索引詞匯表”限制了所有可用于分類對象 (或構件 )的術語或語法?!安皇芸氐乃饕~匯表”則對描述的自然狀態(tài)不加限制。軟件構件的分類模式主要有如下 3 類: C ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 11 圖 一種 4 層次的分層式體系結構 圖 源于圖書館索引方法的分類 法 6. 分層式體系結構 所謂分層式體系結構,是按層次組織軟件的一種軟件體系結構,其中每一層軟件建立在低一層的軟件層上。位于同一層的軟件系統(tǒng)或子系統(tǒng)具有同等的通用性,在下一層的軟件比在上一層的軟件通用性更強。一個層次可視為同等通用檔次的一組 (子 )系統(tǒng)。 因此,在分層的體系結構中,最高層是應用層,可包容許多應用系統(tǒng)。次高層是構件層,可包括多個可復用構件庫系統(tǒng),可用于建立應用系統(tǒng)。應用系統(tǒng)建立在構件層之上,而此構件層中的許多構件庫系統(tǒng)又是建立在更低層次的構件庫系統(tǒng)之上。 軟件的組織方式通常是指軟件的靜態(tài)分層 結構,就像在編譯連接時軟件各個模塊之間的分層依賴關系那樣,是一種靜態(tài)的關系,而不是指軟件在運行時的組織和動態(tài)結構。一個系統(tǒng)的動態(tài)特征時由使用事例、協(xié)作、過程和結點模型來定義的。這些動態(tài)模型需要與軟件的靜態(tài)分層組織聯(lián)合起來使用。 即使按照上述的原則,人們?nèi)匀欢x出多種形式的分層式體系結構。層次的數(shù)目、層次的名稱、層次的內(nèi)容可隨情況而定。圖 給出一種典型的 4 層次體系結構。 最頂層 (即最高層 )是應用系統(tǒng)層,此層包含多個應用系統(tǒng),每個應用系統(tǒng)向系統(tǒng)的用戶 提供一組使用事例。有的應用系統(tǒng)還可具有不同的版本或若干變體。應用系統(tǒng)可以通過其接口與其它系統(tǒng)操作,還可以通過低層軟件提供的服務或對象 (如操作系統(tǒng)、特定業(yè)務服務 )間接地與其它系統(tǒng)交互操作。 次頂層 (即次高層 )是“特定業(yè)務”層。此層應當包括專門針對不同業(yè)務類型的一系列構件庫系統(tǒng)。這樣的構件庫系統(tǒng)向用戶提供可復用的使用事例和對象構件,用于開發(fā)應用系統(tǒng),支持復用業(yè)務。特定業(yè)務層的軟件建立在中間件之上。 中間件層位于次高層下面,它為次頂層的各個構件庫系統(tǒng)提供實用軟件類,以及不依賴于平臺的服務。例如,在異種機型環(huán)境下 的分布式對象計算等等。此層經(jīng)常包括:圖形用戶界面構筑者使用的構件庫系統(tǒng)、與數(shù)據(jù)庫管理系統(tǒng) (DBMS)的接口、不依賴平臺的操作系統(tǒng)服務、對象請求代理 (ORBs)、對象鏈接和嵌入 OLE 構件,如電子表格和框圖編輯器。這些軟件主要提供給應用軟件和構件開發(fā)人員使用,使得他們能夠專注于業(yè)務構件和應用系統(tǒng)的 應用軟件層 特定業(yè)務層 中間件層 系統(tǒng)軟件層 各個應用的各種變體 各 個應用系統(tǒng) 各個構件庫系統(tǒng) (針對特定論域、 特定業(yè)務 ) 不依賴平臺的 低層構件等 特定的平臺軟件: 操作系統(tǒng)等 索引詞匯表 受控的索引詞匯表 不受控的索引詞匯表 分類 枚舉 多面 關鍵詞 描述符 主題 頭部 抽取術語的 表單文本 不抽取術語的 表單文本 具有語法 不具有語法 詞典 12 構筑。 最低層是系統(tǒng)軟件層,此層包括計算和網(wǎng)絡等基礎設施軟件,如操作系統(tǒng)、專用的硬件接口軟件等。 目前出現(xiàn)了一些專用操作系統(tǒng),其本身就提供了不依賴于平臺的服務,因此,在依稀結構的第三層和第四層之間,有時界限會變得模糊不 清。例如 Java 就是這種情況。它是一種語言,故它應該位于系統(tǒng)軟件層。但還可以把 Java 看作是組織分布對象的一個重要部分,通過Java 可將對象移到不同的機器上,從而改變客戶機 ― 服務器系統(tǒng)的應用劃分。從另一個角度來看, Java 的一個重要部分又屬于中間件層,至少位于中間件層的許多軟件都是用 Java語言編寫的。 為了確保分層式系統(tǒng)可管理,規(guī)定在一個系統(tǒng)內(nèi),不能從低層復用高層的構件。一個分層式系統(tǒng)有兩維:水平方向是在同層次內(nèi)的相互引用的多個系統(tǒng),垂直方向表達了跨層次的靜態(tài)的依賴關系。 7. 軟件構件的復用 (1) 檢 索與提取構件 可復用構件庫的檢索方法與庫的組織方式密切相關。 ① 基于關鍵詞的檢索 這種檢索方法的基本思想是:系統(tǒng) (CASE 工具 )在圖形用戶界面上將可復用構件庫的關鍵詞樹直觀地展示給用戶,用戶通過在樹上的逐級瀏覽尋找需要的關鍵詞并提取相應的構件。當然,用戶也可以直接給出關鍵詞 (其中可含有通配符 ),由系統(tǒng)自動地給出合適的候選構件清單。 這種方法的優(yōu)點是簡單,易于實現(xiàn)。 ② 多面檢索 這種檢索方法基于多面分類法。步驟如下: ? 構造查詢:用戶提供待查構件在每個“面”上的特征,生成構件描述子。此時,用戶可以從可復 用構件庫已有的“概念”中挑選,也可以將某些特征值置為空。系統(tǒng)在庫中檢索時將忽略特征值為空的“面”。在構造查詢的過程中,可以利用同義詞庫和概念距離圖來幫助用戶正確選擇特征值。 ? 檢索構件:實現(xiàn)多面分類法的 CASE 工具利用同義詞庫和概念距離圖,在可復用構件庫中尋找相同的或相近的構件描述子及相應的構件。 ? 對構件進行排序:按照相似程度對被檢索出來的構件進行排序,還可以按照與復用有關的度量信息 (如構件的復雜性、可復用性、成功復用的次數(shù)等 )進行排序。 這種方法的優(yōu)點是易于實現(xiàn)相似構件的查找。 ③ 超文本檢索 這種 檢索方法的步驟是:用戶首先給出一個或若干個關鍵詞,系統(tǒng)在構件的說明文檔中做精確的或模糊的語法匹配。匹配成功后,向用戶提供相應的構件說明。這些構件說明是含有許多超文本結點的正文。用戶在閱讀這些正文時可實現(xiàn)多個構件說明文檔之間的自由跳轉,最終選擇合適的構件。為了避免用戶在跳轉過程中迷失方向,系統(tǒng)可以通過圖形用戶界面顯示瀏覽歷史圖,允許將特定畫面定義為有名“書簽”并可隨時跳轉到“書簽”。此外,還可以幫助用戶逆著跳轉路徑逐步返回。 這種方法的優(yōu)點是用戶界面友好。 ④ 其它檢索方法 上述檢索方法都是基于語法匹配,要求 用戶對可復用構件庫中的出現(xiàn)的眾多詞匯有較全面的把握,較精確的理解。理論上,理想的檢索方法是語義匹配:可復用構件庫的用戶以形 13 式化的手段描述所需要的構件的功能或行為的語義,系統(tǒng)通過定理證明或基于知識的推理過程尋找語義上等價的或相近的構件。 (2) 理解與評價構件 準確地理解構件,對于正確地使用和修改構件,都是至關重要的??紤]到設計信息對于理解構件的必要性和構件庫的用戶逆向發(fā)掘設計信息的困難性,要求構件的開發(fā)過程必須遵循公共的軟件工程規(guī)范,并在構件庫的說明文檔中全面、準確地說明下列內(nèi)容: ① 構件的功能和行為; ② 相關的論域知識; ③ 可適應性約束條件和例外情況; ④ 可以預見的修改部分和修改方法。 但是,如果軟件人員希望復用那些原先并非為復用而設計的構件,上述要求不能滿足。此時軟件人員必須借助 CASE 工具對待選構件進行分析。這種 CASE 工具對構件 (包括相應的文檔 )進行掃描,將各類信息存入某種瀏覽數(shù)據(jù)庫,然后回答構件用戶的各種查詢,進而幫助理解。例如,對于以 C 或 C++ 源程序 形式出現(xiàn)的構件,用戶可借助于 CASE 工具查詢標識符 (包括變量、常量、宏、函數(shù)等 )的定義和引用。如果源程序中以結構化注解的形式給出函數(shù)的前置條 件、后置斷言、約束與例外情形、算法描述,用戶也可以實現(xiàn)對這些信息的直觀瀏覽。 逆向工程是理解構件的另一種重要手段。通過對構件進行分析,結合論域知識,半自動地生成構件的設計信息,然后借助設計信息完成對構件的理解和修改。 對軟件構件的可復用性進行評價,主要通過收集和分析構件的用戶在實際復用構件的過程中所得到的各種反饋信息,按照某種論域模型來完成。這些反饋信息包括:復用成功的次數(shù)、對構件的修改工作量、構件的健壯性度量 (如出錯數(shù)量 )、性能度量 (如執(zhí)行效率和資源消耗量 )等。 (3) 修改構件 理想的情況是對庫中的構件 不做修改就可以直接用于新的軟件項目。但是,在多數(shù)情況下,需要對構件做或多或少的修改以適應新的需求。為了減少修改的工作量,要求構件的開發(fā)人員盡量使構件的功能、行為、接口抽象化、通用化、參數(shù)化。這樣,構件的用戶可以通過對實參的選擇來調整構件的功能或行為。如果這種調整仍不能使構件適應新的軟件項目,用戶就必須借助設計信息和說明文檔來理解、修改構件。因此,與構件有關的說明文檔和抽象層次更高的設計信息對于構件的修改至關重要。例如,如果需要將用 C 語言編寫的構件 (源程序代碼 )改寫為其它語言的形式,構件的算法描述就十分必要。 有人在軟件復用領域中嘗試使構件的修改自動化。例如,可以利用不同數(shù)據(jù)結構 (如鏈表和數(shù)組 )之間的相似性自動修改構件外部接口中的參數(shù)類型。但是,這種自動修改方式還遠遠不能取代人工修改方式。 (4) 構件的合成 構件合成是指將可復用構件庫中的構件 (經(jīng)適當修改后 )相互連接,或將它們與當前軟件項目中的軟件元素相連接以構成最終的目標系統(tǒng)。構件合成技術大致可分為基于功能的、基于數(shù)據(jù)的和面向對象的合成技術。下面簡單介紹前兩種。 ① 基于功能的合成技術 基于功能的合成技術采用子程序調用和參數(shù)傳遞的方式將構件結合起來。它要求在 庫中的構件必須以標準子程序 (標準過程或函數(shù) )的形式出現(xiàn),并且接口說明必須準確、清楚。當使用這種合成技術進行軟件開發(fā)時,必須開發(fā)人員必須對目標軟件系統(tǒng)進行自頂向下的功能分解,將系統(tǒng)分解為高內(nèi)聚、低耦合的功能模塊,然后根據(jù)各模塊的功能需求提取構件,對它們進行適應性修改后,再納入到上述功能分解的層次框架中。 14 ② 基于數(shù)據(jù)的合成技術 基于數(shù)據(jù)的合成技術首先根據(jù)當前應用問題的核心數(shù)據(jù)結構設計出一個框架,然后根據(jù)框架中各結點的需求提取構件并進行適應性修改,再把它們逐個分配給框架中的適當位置。此后,構件的合成方式仍然是傳 統(tǒng)的子程序調用與參數(shù)傳遞。這種合成技術也要求庫中的構件以子程序的形式出現(xiàn),但它所依賴的軟件設計方法不再是功能分解,而是面向數(shù)據(jù)結構的設計方法,如 Jackson 系統(tǒng)開發(fā)方法。 8. 面向對象的軟件復用技術 由于封裝和繼承的特性,面向對象方法比其它軟件開發(fā)方法更適合支持軟件復用。封裝意味著可以將表示構件的類看作黑盒子。使用它們時,只需了解其外部接口,即了解它能夠響應哪些消息,相應的對象行為是什么。繼承是指在定義新的子類時可利用庫中已有的父類的屬性和操作。當然,子類也可以修改父類的屬性與操作,或者引進新的屬性與操 作。理論上構件的用戶不需要了解構件的實現(xiàn)細節(jié)。 (1) 類庫的構造 通常將面向對象的可復用構件庫稱為可復用類庫 (簡稱類庫 ),因為這時所有的構件都是以類的形式出現(xiàn)??蓮陀没惖慕⑷Q于論域分析階段對當前應用 (族 )中具有一般適用性的對象和類的標識。類庫的組織方式采用類的繼承層次結構。這種結構與現(xiàn)實問題空間的實體繼承關系有某種自然、直接的對應。同時,類庫的文檔以超文本方式組織,每個類的說明文檔中都可以包含指向其它說明文檔的關鍵詞結點的鏈接指針。 與圖形用戶界面有關的一種典型的類庫結構如圖 所示。 圖 類庫結構示例 (2) 類庫的檢索 一般而言,類庫的組織方式直接決定檢索方式。常用的類庫檢索方法是對類庫中類的繼承層次結構進行樹形瀏覽,以及基于類庫文檔的
點擊復制文檔內(nèi)容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1