




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟件工程軟件工程 長(zhǎng)期以來(lái)的軟件開(kāi)發(fā)狀況長(zhǎng)期以來(lái)的軟件開(kāi)發(fā)狀況 多數(shù)軟件都是針對(duì)某個(gè)具體的應(yīng)用系統(tǒng)從頭進(jìn)行開(kāi)發(fā)的 導(dǎo)致:出現(xiàn)了大量的同類(lèi)軟件重復(fù)開(kāi)發(fā),造成大量人力、財(cái)力的 浪費(fèi),而且軟件的質(zhì)量也不高 對(duì)比:汽車(chē)工業(yè)的生產(chǎn)模式對(duì)比:汽車(chē)工業(yè)的生產(chǎn)模式 在已有的部件基礎(chǔ)上通過(guò)組裝進(jìn)行生產(chǎn):有專(zhuān)門(mén)的部件生產(chǎn)工廠, 汽車(chē)設(shè)計(jì)者在設(shè)計(jì)中選擇市場(chǎng)上已有的合適的部件 避免了大量的重復(fù)勞動(dòng),提高了產(chǎn)品質(zhì)量和生產(chǎn)效率,促進(jìn)分工 合作 我們的目標(biāo):將制造業(yè)中的組裝式生產(chǎn)模我們的目標(biāo):將制造業(yè)中的組裝式生產(chǎn)模 式引入到軟件開(kāi)發(fā)中式引入到軟件開(kāi)發(fā)中 2/41 基于構(gòu)件的軟件開(kāi)發(fā)概述基于構(gòu)件的軟件開(kāi)發(fā)概述 建造可復(fù)用構(gòu)
2、件建造可復(fù)用構(gòu)件 應(yīng)用系統(tǒng)工程應(yīng)用系統(tǒng)工程 構(gòu)件的管理構(gòu)件的管理 小結(jié)小結(jié) 3/41 建造可復(fù)用構(gòu)件建造可復(fù)用構(gòu)件 應(yīng)用系統(tǒng)工程應(yīng)用系統(tǒng)工程 構(gòu)件的管理構(gòu)件的管理 小結(jié)小結(jié) 4/41 基于構(gòu)件的軟件開(kāi)發(fā)基于構(gòu)件的軟件開(kāi)發(fā) Component-Based Software Development 簡(jiǎn)稱(chēng)CBSD 是指使用可復(fù)用構(gòu)件來(lái)開(kāi)發(fā)應(yīng)用軟件 基于構(gòu)件的軟件工程基于構(gòu)件的軟件工程 Component-Based Software Engineering 簡(jiǎn)稱(chēng)CBSE 5/41 Pressman書(shū)中的定義:構(gòu)件是某系統(tǒng)中有價(jià)值書(shū)中的定義:構(gòu)件是某系統(tǒng)中有價(jià)值 的、幾乎獨(dú)立的并可替換的一個(gè)部分,它在
3、良的、幾乎獨(dú)立的并可替換的一個(gè)部分,它在良 好定義的體系結(jié)構(gòu)語(yǔ)境內(nèi)滿(mǎn)足某清晰的功能好定義的體系結(jié)構(gòu)語(yǔ)境內(nèi)滿(mǎn)足某清晰的功能 Brown的定義:構(gòu)件是一個(gè)獨(dú)立發(fā)布的功能部的定義:構(gòu)件是一個(gè)獨(dú)立發(fā)布的功能部 分,可以通過(guò)其接口訪(fǎng)問(wèn)它的服務(wù)分,可以通過(guò)其接口訪(fǎng)問(wèn)它的服務(wù) “計(jì)算機(jī)科學(xué)技術(shù)百科全書(shū)計(jì)算機(jī)科學(xué)技術(shù)百科全書(shū)”的定義:軟件構(gòu)的定義:軟件構(gòu) 件是軟件系統(tǒng)中具有相對(duì)獨(dú)立功能,可以明確件是軟件系統(tǒng)中具有相對(duì)獨(dú)立功能,可以明確 標(biāo)識(shí),接口由規(guī)約指定,與語(yǔ)境有明顯依賴(lài)關(guān)標(biāo)識(shí),接口由規(guī)約指定,與語(yǔ)境有明顯依賴(lài)關(guān) 系,可獨(dú)立部署,且多由第三方提供的可組裝系,可獨(dú)立部署,且多由第三方提供的可組裝 軟件實(shí)體;軟
4、件構(gòu)件須承載有用的功能,并遵軟件實(shí)體;軟件構(gòu)件須承載有用的功能,并遵 循某種構(gòu)件模型;可復(fù)用構(gòu)件是指具有可復(fù)用循某種構(gòu)件模型;可復(fù)用構(gòu)件是指具有可復(fù)用 價(jià)值的構(gòu)件價(jià)值的構(gòu)件 6/41 Commercial off-the-shelf 簡(jiǎn)稱(chēng)簡(jiǎn)稱(chēng)COTS 指由第三方開(kāi)發(fā)的滿(mǎn)足一定構(gòu)件標(biāo)準(zhǔn)的,指由第三方開(kāi)發(fā)的滿(mǎn)足一定構(gòu)件標(biāo)準(zhǔn)的, 可組裝的軟件構(gòu)件可組裝的軟件構(gòu)件 7/41 規(guī)格說(shuō)明:建立在接口概念之上,作為服規(guī)格說(shuō)明:建立在接口概念之上,作為服 務(wù)提供方與客戶(hù)方之間的契約務(wù)提供方與客戶(hù)方之間的契約 一個(gè)或多個(gè)實(shí)現(xiàn)一個(gè)或多個(gè)實(shí)現(xiàn) 受約束的構(gòu)件標(biāo)準(zhǔn)受約束的構(gòu)件標(biāo)準(zhǔn) 包裝方法包裝方法 部署方法部署方法 8
5、/41 關(guān)于構(gòu)件的一個(gè)指導(dǎo)性模型關(guān)于構(gòu)件的一個(gè)指導(dǎo)性模型 由構(gòu)件的三個(gè)不同方面的描述組成由構(gòu)件的三個(gè)不同方面的描述組成 概念(concept):關(guān)于“構(gòu)件做什么”的抽象描述,可以 通過(guò)概念去理解構(gòu)件的功能。概念包括接口規(guī)約和語(yǔ)義描 述兩部分,語(yǔ)義描述和每個(gè)操作相關(guān)聯(lián)(至少表示為前后 置謂詞形式) 內(nèi)容(content):概念的具體實(shí)現(xiàn),描述構(gòu)件如何完成概 念所刻畫(huà)的功能 周境(context):描述構(gòu)件和外圍環(huán)境在概念級(jí)和內(nèi)容級(jí) 的關(guān)系,刻畫(huà)構(gòu)件的應(yīng)用環(huán)境,為構(gòu)件的選用和適應(yīng)性修 改提供指導(dǎo) 9/41 REBOOT(Reuse Based on Object_Oriented Technolo
6、gy):基于面向?qū)ο蠹夹g(shù)的復(fù)用:基于面向?qū)ο蠹夹g(shù)的復(fù)用 一種基于刻面一種基于刻面(facet)的模型的模型 刻面:對(duì)領(lǐng)域進(jìn)行分析,所得到的一組基本的描述特征 刻面可以描述構(gòu)件執(zhí)行的功能、所操作的數(shù)據(jù)、構(gòu)件應(yīng)用的周 境或任何其它特征 通常的刻面描述限制在不超過(guò)7或8個(gè)刻面 一個(gè)構(gòu)件通常包括以下刻面:一個(gè)構(gòu)件通常包括以下刻面: 抽象(abstraction):它是構(gòu)件概念的抽象性描述 操作(operation):它是構(gòu)件所提供的操作的描述 操作對(duì)象(operand):它描述操作的對(duì)象 依賴(lài)(dependency):它描述構(gòu)件與外界的依賴(lài)關(guān)系 10/41 CORBA(公共對(duì)象請(qǐng)求代理體系結(jié)構(gòu)公共對(duì)象
7、請(qǐng)求代理體系結(jié)構(gòu)) Common Object Request Broker Architecture OMG發(fā)布的構(gòu)件標(biāo)準(zhǔn) 核心是ORB(Object Request Broker),定義了異構(gòu)環(huán)境下對(duì) 象透明地發(fā)送請(qǐng)求和接收響應(yīng)的基本機(jī)制 COM+ 微軟開(kāi)發(fā)的一個(gè)構(gòu)件對(duì)象模型,提供了在運(yùn)行于Windows操作 系統(tǒng)之上的單個(gè)應(yīng)用中使用不同廠商生產(chǎn)的對(duì)象的規(guī)約 EJB:一種基于:一種基于Java的構(gòu)件標(biāo)準(zhǔn)的構(gòu)件標(biāo)準(zhǔn) 提供了讓客戶(hù)端使用遠(yuǎn)程的分布式對(duì)象的框架 EJB規(guī)約規(guī)定了EJB構(gòu)件如何與EJB容器進(jìn)行行交互 11/41 12/41 領(lǐng)域分析:首先要進(jìn)行領(lǐng)域分析,收集領(lǐng)域中有代表性領(lǐng)域分析:
8、首先要進(jìn)行領(lǐng)域分析,收集領(lǐng)域中有代表性 的應(yīng)用樣本,分析應(yīng)用中的公共部分或相似部分,抽取的應(yīng)用樣本,分析應(yīng)用中的公共部分或相似部分,抽取 該領(lǐng)域的應(yīng)用體系結(jié)構(gòu)該領(lǐng)域的應(yīng)用體系結(jié)構(gòu) 建立領(lǐng)域特定的基準(zhǔn)體系結(jié)構(gòu)模型:在領(lǐng)域分析的基礎(chǔ)建立領(lǐng)域特定的基準(zhǔn)體系結(jié)構(gòu)模型:在領(lǐng)域分析的基礎(chǔ) 上,構(gòu)造該領(lǐng)域的基準(zhǔn)體系結(jié)構(gòu),這個(gè)基準(zhǔn)體系結(jié)構(gòu)應(yīng)上,構(gòu)造該領(lǐng)域的基準(zhǔn)體系結(jié)構(gòu),這個(gè)基準(zhǔn)體系結(jié)構(gòu)應(yīng) 是可以裁剪和擴(kuò)充的,并可供該領(lǐng)域的應(yīng)用復(fù)用是可以裁剪和擴(kuò)充的,并可供該領(lǐng)域的應(yīng)用復(fù)用 標(biāo)識(shí)候選構(gòu)件:在領(lǐng)域分析和領(lǐng)域基準(zhǔn)體系結(jié)構(gòu)模型的標(biāo)識(shí)候選構(gòu)件:在領(lǐng)域分析和領(lǐng)域基準(zhǔn)體系結(jié)構(gòu)模型的 基礎(chǔ)上標(biāo)識(shí)該領(lǐng)域的候選構(gòu)件基礎(chǔ)上標(biāo)識(shí)該領(lǐng)
9、域的候選構(gòu)件 泛化泛化(generalization)和可變性和可變性(variability)分析:提高分析:提高 其通用性,同時(shí)尋找候選構(gòu)件在不同應(yīng)用中的變化點(diǎn)其通用性,同時(shí)尋找候選構(gòu)件在不同應(yīng)用中的變化點(diǎn) (variation point),通過(guò)設(shè)置參數(shù)、繼承或其它手段,通過(guò)設(shè)置參數(shù)、繼承或其它手段, 使可變部分局部化使可變部分局部化 13/41 重建構(gòu)件:在泛化和可變性分析的基礎(chǔ)上,重建構(gòu)件:在泛化和可變性分析的基礎(chǔ)上, 重建構(gòu)件,使它成為可復(fù)用構(gòu)件重建構(gòu)件,使它成為可復(fù)用構(gòu)件 構(gòu)件的測(cè)試:對(duì)重建的可復(fù)用的構(gòu)件要嚴(yán)構(gòu)件的測(cè)試:對(duì)重建的可復(fù)用的構(gòu)件要嚴(yán) 格測(cè)試,以提高其可靠性格測(cè)試,以提
10、高其可靠性 構(gòu)件的包裝:經(jīng)測(cè)試的構(gòu)件應(yīng)根據(jù)構(gòu)件庫(kù)構(gòu)件的包裝:經(jīng)測(cè)試的構(gòu)件應(yīng)根據(jù)構(gòu)件庫(kù) 的要求,對(duì)它進(jìn)行包裝,以便構(gòu)件庫(kù)對(duì)它的要求,對(duì)它進(jìn)行包裝,以便構(gòu)件庫(kù)對(duì)它 分類(lèi)儲(chǔ)存和檢索分類(lèi)儲(chǔ)存和檢索 構(gòu)件入庫(kù):包裝后的構(gòu)件即可存入構(gòu)件庫(kù)構(gòu)件入庫(kù):包裝后的構(gòu)件即可存入構(gòu)件庫(kù) 14/41 建立應(yīng)用系統(tǒng)的體系結(jié)構(gòu)模型:可以使用構(gòu)件建立應(yīng)用系統(tǒng)的體系結(jié)構(gòu)模型:可以使用構(gòu)件 生產(chǎn)者提供的領(lǐng)域特定的基準(zhǔn)體系結(jié)構(gòu)經(jīng)裁剪生產(chǎn)者提供的領(lǐng)域特定的基準(zhǔn)體系結(jié)構(gòu)經(jīng)裁剪 和和/或擴(kuò)充而獲得或擴(kuò)充而獲得 尋找候選構(gòu)件:根據(jù)應(yīng)用系統(tǒng)的體系結(jié)構(gòu)模型,尋找候選構(gòu)件:根據(jù)應(yīng)用系統(tǒng)的體系結(jié)構(gòu)模型, 從構(gòu)件庫(kù)或其它可利用的構(gòu)件源中尋找候選構(gòu)從
11、構(gòu)件庫(kù)或其它可利用的構(gòu)件源中尋找候選構(gòu) 件件 評(píng)價(jià)和選擇合適的構(gòu)件:評(píng)價(jià)候選構(gòu)件以判斷評(píng)價(jià)和選擇合適的構(gòu)件:評(píng)價(jià)候選構(gòu)件以判斷 是否適合于待開(kāi)發(fā)的軟件是否適合于待開(kāi)發(fā)的軟件 構(gòu)件的修改構(gòu)件的修改(modify)和特化和特化(specialize):在復(fù):在復(fù) 用時(shí)對(duì)構(gòu)件進(jìn)行特化以滿(mǎn)足特定應(yīng)用的需要用時(shí)對(duì)構(gòu)件進(jìn)行特化以滿(mǎn)足特定應(yīng)用的需要 15/41 開(kāi)發(fā)未被復(fù)用的部分:對(duì)新系統(tǒng)中未復(fù)用開(kāi)發(fā)未被復(fù)用的部分:對(duì)新系統(tǒng)中未復(fù)用 的部分進(jìn)行開(kāi)發(fā)的部分進(jìn)行開(kāi)發(fā) 構(gòu)件的組裝:將特化和修改后的可復(fù)用構(gòu)構(gòu)件的組裝:將特化和修改后的可復(fù)用構(gòu) 件和新開(kāi)發(fā)的部分組裝成一個(gè)新的軟件系件和新開(kāi)發(fā)的部分組裝成一個(gè)新的軟件系
12、 統(tǒng)統(tǒng) 集成測(cè)試:對(duì)組裝后的軟件系統(tǒng)進(jìn)行集成集成測(cè)試:對(duì)組裝后的軟件系統(tǒng)進(jìn)行集成 測(cè)試測(cè)試 評(píng)價(jià)被復(fù)用的構(gòu)件,并推薦可能的新構(gòu)件評(píng)價(jià)被復(fù)用的構(gòu)件,并推薦可能的新構(gòu)件 16/41 對(duì)質(zhì)量的影響:隨著長(zhǎng)期的測(cè)試和使用,對(duì)質(zhì)量的影響:隨著長(zhǎng)期的測(cè)試和使用, 構(gòu)件能夠保證很高的質(zhì)量,因此可以使系構(gòu)件能夠保證很高的質(zhì)量,因此可以使系 統(tǒng)開(kāi)發(fā)的質(zhì)量得到保證統(tǒng)開(kāi)發(fā)的質(zhì)量得到保證 對(duì)生產(chǎn)率的影響:一般來(lái)說(shuō),大約對(duì)生產(chǎn)率的影響:一般來(lái)說(shuō),大約30% 50%的復(fù)用可使生產(chǎn)率提高的復(fù)用可使生產(chǎn)率提高25%40% 對(duì)成本的影響對(duì)成本的影響 與復(fù)用相關(guān)的成本應(yīng)由多個(gè)采用復(fù)用技術(shù)的項(xiàng)目來(lái)分擔(dān) 通常要經(jīng)過(guò)23個(gè)采用復(fù)用的生
13、產(chǎn)周期(大約3年左右)復(fù) 用才能帶來(lái)顯著的效益 17/41 基于構(gòu)件的軟件開(kāi)發(fā)概述基于構(gòu)件的軟件開(kāi)發(fā)概述 應(yīng)用系統(tǒng)工程應(yīng)用系統(tǒng)工程 構(gòu)件的管理構(gòu)件的管理 小結(jié)小結(jié) 18/41 建造構(gòu)件的目的是為了以后復(fù)用構(gòu)件,即建造構(gòu)件的目的是為了以后復(fù)用構(gòu)件,即 為復(fù)用而建造構(gòu)件為復(fù)用而建造構(gòu)件 在建造構(gòu)件時(shí)仍應(yīng)遵循抽象、逐步求精、在建造構(gòu)件時(shí)仍應(yīng)遵循抽象、逐步求精、 信息隱蔽、功能獨(dú)立、結(jié)構(gòu)化程序設(shè)計(jì)等信息隱蔽、功能獨(dú)立、結(jié)構(gòu)化程序設(shè)計(jì)等 思想和原則思想和原則 由于面向?qū)ο蠓椒ň哂蟹庋b性、繼承等特由于面向?qū)ο蠓椒ň哂蟹庋b性、繼承等特 點(diǎn),能有力地支持復(fù)用,所以應(yīng)盡可能考點(diǎn),能有力地支持復(fù)用,所以應(yīng)盡可能考
14、 慮采用面向?qū)ο蠓椒☉]采用面向?qū)ο蠓椒?19/41 構(gòu)件的設(shè)計(jì)應(yīng)具有較高的通用程度構(gòu)件的設(shè)計(jì)應(yīng)具有較高的通用程度 構(gòu)件應(yīng)易于調(diào)整構(gòu)件應(yīng)易于調(diào)整 構(gòu)件應(yīng)易于組裝構(gòu)件應(yīng)易于組裝 構(gòu)件必須具有可檢索性構(gòu)件必須具有可檢索性 構(gòu)件必須經(jīng)過(guò)充分的測(cè)試構(gòu)件必須經(jīng)過(guò)充分的測(cè)試 20/41 除應(yīng)遵循已有的設(shè)計(jì)概念和原則外,除應(yīng)遵循已有的設(shè)計(jì)概念和原則外, 還必須考慮應(yīng)用領(lǐng)域的特征,例如:還必須考慮應(yīng)用領(lǐng)域的特征,例如: 標(biāo)準(zhǔn)數(shù)據(jù):應(yīng)該研究應(yīng)用領(lǐng)域,并標(biāo)識(shí)出標(biāo)準(zhǔn)的全局 數(shù)據(jù)結(jié)構(gòu)(如文件結(jié)構(gòu)或完整的數(shù)據(jù)庫(kù))。于是所有設(shè) 計(jì)的構(gòu)件都可以用這些標(biāo)準(zhǔn)數(shù)據(jù)結(jié)構(gòu)來(lái)刻畫(huà) 標(biāo)準(zhǔn)接口協(xié)議:應(yīng)該建立三個(gè)層次的接口協(xié)議:構(gòu)件 內(nèi)(in
15、tramodular)接口、構(gòu)件外接口以及人機(jī)接口 程序模板:程序的結(jié)構(gòu)模型可以作為新程序的體系結(jié) 構(gòu)設(shè)計(jì)的模板 21/41 構(gòu)件應(yīng)具有較強(qiáng)的通用性和可變性構(gòu)件應(yīng)具有較強(qiáng)的通用性和可變性 為了滿(mǎn)足不同的復(fù)用需求,需要在構(gòu)件復(fù)用時(shí)為了滿(mǎn)足不同的復(fù)用需求,需要在構(gòu)件復(fù)用時(shí) 可能發(fā)生變化的一個(gè)或多個(gè)位置上標(biāo)識(shí)變化點(diǎn)可能發(fā)生變化的一個(gè)或多個(gè)位置上標(biāo)識(shí)變化點(diǎn) (variation point),同時(shí)為變化點(diǎn)附加一個(gè)或多,同時(shí)為變化點(diǎn)附加一個(gè)或多 個(gè)變體個(gè)變體(variant) 例如例如Account構(gòu)件的帳號(hào)編碼規(guī)則以及透支規(guī)構(gòu)件的帳號(hào)編碼規(guī)則以及透支規(guī) 則在不同的國(guó)家可能不一樣則在不同的國(guó)家可能不一樣
16、 VP1 VP2 C VP1 description context 22/41 23/41 繼承:在變化點(diǎn)上創(chuàng)建指定抽象類(lèi)型或抽繼承:在變化點(diǎn)上創(chuàng)建指定抽象類(lèi)型或抽 象類(lèi)的子類(lèi)型或子類(lèi)。象類(lèi)的子類(lèi)型或子類(lèi)。 擴(kuò)展和擴(kuò)展點(diǎn):可以在用況和對(duì)象構(gòu)件中擴(kuò)展和擴(kuò)展點(diǎn):可以在用況和對(duì)象構(gòu)件中 的變化點(diǎn)的變化點(diǎn)(或擴(kuò)展點(diǎn)或擴(kuò)展點(diǎn))上附加變體上附加變體(或擴(kuò)展或擴(kuò)展) 參數(shù)化:用于模板、框架和宏的類(lèi)型和類(lèi)參數(shù)化:用于模板、框架和宏的類(lèi)型和類(lèi) 適用于變體較小時(shí)(經(jīng)常是一個(gè)數(shù)值、短語(yǔ)或表達(dá)式) 24/41 基于構(gòu)件的軟件開(kāi)發(fā)概述基于構(gòu)件的軟件開(kāi)發(fā)概述 建造可復(fù)用構(gòu)件建造可復(fù)用構(gòu)件 構(gòu)件的管理構(gòu)件的管理 小結(jié)小結(jié)
17、 25/41 任務(wù):通過(guò)組裝可復(fù)用構(gòu)件得到應(yīng)用系統(tǒng)任務(wù):通過(guò)組裝可復(fù)用構(gòu)件得到應(yīng)用系統(tǒng) CBSD中構(gòu)件是組成應(yīng)用系統(tǒng)的基本單元中構(gòu)件是組成應(yīng)用系統(tǒng)的基本單元 注重體系結(jié)構(gòu)和構(gòu)件接口的分析和設(shè)計(jì),注重體系結(jié)構(gòu)和構(gòu)件接口的分析和設(shè)計(jì), 忽略構(gòu)件內(nèi)部實(shí)現(xiàn)的設(shè)計(jì)忽略構(gòu)件內(nèi)部實(shí)現(xiàn)的設(shè)計(jì) 26/41 接口是構(gòu)件行為的描述機(jī)制,并提供了對(duì)其服接口是構(gòu)件行為的描述機(jī)制,并提供了對(duì)其服 務(wù)的訪(fǎng)問(wèn)務(wù)的訪(fǎng)問(wèn) 供應(yīng)接口(Provided interface):描述構(gòu)件所提供的服務(wù),可以 被其它構(gòu)件訪(fǎng)問(wèn) 請(qǐng)求接口(requived interface):請(qǐng)求接口描述構(gòu)件為完成其功 能(服務(wù))需請(qǐng)求其它構(gòu)件為其提供的服務(wù)
18、 一個(gè)接口可以有多種實(shí)現(xiàn),并且對(duì)使用者隱蔽一個(gè)接口可以有多種實(shí)現(xiàn),并且對(duì)使用者隱蔽 接口描述是構(gòu)件使用者能依賴(lài)的所有信息,因接口描述是構(gòu)件使用者能依賴(lài)的所有信息,因 此構(gòu)件接口描述的表達(dá)能力和完整性是此構(gòu)件接口描述的表達(dá)能力和完整性是CBSD方方 法主要關(guān)注的問(wèn)題之一法主要關(guān)注的問(wèn)題之一 27/41 基于構(gòu)件的應(yīng)用系統(tǒng)體系結(jié)構(gòu)基于構(gòu)件的應(yīng)用系統(tǒng)體系結(jié)構(gòu) 描述了組成應(yīng)用系統(tǒng)的構(gòu)件,構(gòu)件之間的組織結(jié)構(gòu)、交互、約 束和關(guān)系 對(duì)系統(tǒng)的組成、結(jié)構(gòu)以及系統(tǒng)如何工作的較為宏觀的描述 如果在領(lǐng)域工程中已開(kāi)發(fā)了領(lǐng)域基準(zhǔn)體系如果在領(lǐng)域工程中已開(kāi)發(fā)了領(lǐng)域基準(zhǔn)體系 結(jié)構(gòu)結(jié)構(gòu)(reference architectur
19、e),則可以,則可以 通過(guò)對(duì)基準(zhǔn)體系結(jié)構(gòu)的剪裁和通過(guò)對(duì)基準(zhǔn)體系結(jié)構(gòu)的剪裁和/或擴(kuò)充獲或擴(kuò)充獲 得應(yīng)用系統(tǒng)的體系結(jié)構(gòu)得應(yīng)用系統(tǒng)的體系結(jié)構(gòu) 28/41 邏輯體系結(jié)構(gòu)邏輯體系結(jié)構(gòu) 以接口形式對(duì)每組服務(wù)進(jìn)行描述,并描述那些包怎樣交互來(lái)滿(mǎn) 足通常的用戶(hù)使用場(chǎng)景 展示了系統(tǒng)設(shè)計(jì)的藍(lán)圖,可用于驗(yàn)證系統(tǒng)是否提供了適當(dāng)?shù)墓?能,并能在系統(tǒng)功能需求變化時(shí)方便地改變系統(tǒng)的設(shè)計(jì) 物理體系結(jié)構(gòu)物理體系結(jié)構(gòu) 描述系統(tǒng)的物理設(shè)計(jì),包括硬件及其拓?fù)浣Y(jié)構(gòu)、網(wǎng)絡(luò)和通信協(xié) 議、基礎(chǔ)設(shè)施(如運(yùn)行平臺(tái)、中間件、數(shù)據(jù)庫(kù)管理系統(tǒng)等),以 及軟件系統(tǒng)的部署 展示了系統(tǒng)的實(shí)現(xiàn)構(gòu)架,有助于理解系統(tǒng)的許多非功能屬性, 如性能、吞吐量、服務(wù)的可用性
20、等 29/41 Rationel統(tǒng)一過(guò)程統(tǒng)一過(guò)程 Rationals Unified Process,簡(jiǎn)稱(chēng)RUP 一個(gè)關(guān)于軟件開(kāi)發(fā)的廣泛的過(guò)程框架,覆蓋了整個(gè)軟件生命周期 使用UML進(jìn)行分析和設(shè)計(jì)建模,鼓勵(lì)使用CBSD方法 The Select Perspective Method 支持通用的構(gòu)件設(shè)計(jì)方法,并以Select Component Manager為目標(biāo) 通用構(gòu)件設(shè)計(jì)準(zhǔn)則使用UML作為構(gòu)件設(shè)計(jì)符號(hào) Sterling Software的的Enterprise-CBD方法方法 鼓勵(lì)使用UML的擴(kuò)展形式把構(gòu)件的規(guī)格說(shuō)明和實(shí)現(xiàn)分離 允許制作技術(shù)中立的規(guī)格說(shuō)明,然后再使用不同的實(shí)現(xiàn)技術(shù)來(lái)實(shí)現(xiàn)規(guī)
21、 格說(shuō)明 共同點(diǎn):關(guān)注構(gòu)件庫(kù)中的構(gòu)件、接口的設(shè)計(jì)和基于構(gòu)件共同點(diǎn):關(guān)注構(gòu)件庫(kù)中的構(gòu)件、接口的設(shè)計(jì)和基于構(gòu)件 構(gòu)架的應(yīng)用程序組裝構(gòu)架的應(yīng)用程序組裝 30/41 構(gòu)構(gòu) 件件 鑒鑒 定定 ( q u a l i f i c a t i o 目的:確保獲得的構(gòu)件可以完成所需的功目的:確保獲得的構(gòu)件可以完成所需的功 能并能被集成在系統(tǒng)中與系統(tǒng)的其它構(gòu)件能并能被集成在系統(tǒng)中與系統(tǒng)的其它構(gòu)件 正確交互正確交互 主要依據(jù)是構(gòu)件的接口描述和相關(guān)的規(guī)格主要依據(jù)是構(gòu)件的接口描述和相關(guān)的規(guī)格 說(shuō)明,但這些信息往往還不足以確保構(gòu)件說(shuō)明,但這些信息往往還不足以確保構(gòu)件 能成功地集成到系統(tǒng)中能成功地集成到系統(tǒng)中 對(duì)于外部提
22、供的成品構(gòu)件對(duì)于外部提供的成品構(gòu)件(COTS)可通過(guò)可通過(guò) 運(yùn)行構(gòu)件測(cè)試版進(jìn)行鑒定運(yùn)行構(gòu)件測(cè)試版進(jìn)行鑒定 31/41 應(yīng)用編程接口應(yīng)用編程接口(API) 該構(gòu)件所需的開(kāi)發(fā)和集成工具該構(gòu)件所需的開(kāi)發(fā)和集成工具 運(yùn)行時(shí)需求,包括使用的資源運(yùn)行時(shí)需求,包括使用的資源(如內(nèi)存或存儲(chǔ)如內(nèi)存或存儲(chǔ) 器器)、時(shí)間或速度以及網(wǎng)絡(luò)協(xié)議、時(shí)間或速度以及網(wǎng)絡(luò)協(xié)議 服務(wù)需求,包括操作系統(tǒng)接口和來(lái)自其他構(gòu)件服務(wù)需求,包括操作系統(tǒng)接口和來(lái)自其他構(gòu)件 的支持的支持 安全特征,包括訪(fǎng)問(wèn)控制和身份驗(yàn)證協(xié)議安全特征,包括訪(fǎng)問(wèn)控制和身份驗(yàn)證協(xié)議 嵌入式設(shè)計(jì)假定,包括特定的數(shù)值或非數(shù)值算嵌入式設(shè)計(jì)假定,包括特定的數(shù)值或非數(shù)值算 法的
23、使用法的使用 異常處理異常處理 32/41 構(gòu)件特化構(gòu)件特化 根據(jù)應(yīng)用系統(tǒng)的具體情況對(duì)其進(jìn)行特化,對(duì)變化點(diǎn)配置特定的 變體,必要時(shí)要自行開(kāi)發(fā)變體 如果所選的構(gòu)件不能完全滿(mǎn)足應(yīng)用系統(tǒng)的功能需求,還需對(duì)構(gòu) 件作適當(dāng)?shù)男薷?如果所選的構(gòu)件未按構(gòu)件標(biāo)準(zhǔn)開(kāi)發(fā)(如遺產(chǎn)系統(tǒng)中抽取的構(gòu)件) 時(shí),還需按某種構(gòu)件標(biāo)準(zhǔn)對(duì)其進(jìn)行包裝 構(gòu)件組裝構(gòu)件組裝 將經(jīng)過(guò)鑒定和特化后的構(gòu)件組裝成應(yīng)用系統(tǒng) 提倡使用構(gòu)件組裝工具來(lái)組裝應(yīng)用系統(tǒng)(能檢查接口匹配中的錯(cuò) 誤,實(shí)現(xiàn)組裝的自動(dòng)化或半自動(dòng)化) 33/41 基于構(gòu)件的軟件開(kāi)發(fā)概述基于構(gòu)件的軟件開(kāi)發(fā)概述 建造可復(fù)用構(gòu)件建造可復(fù)用構(gòu)件 應(yīng)用系統(tǒng)工程應(yīng)用系統(tǒng)工程 小結(jié)小結(jié) 34/41 構(gòu)
24、件的分類(lèi)描述構(gòu)件的分類(lèi)描述 對(duì)構(gòu)件庫(kù)中的構(gòu)件進(jìn)行合理的分類(lèi)和組織,幫助軟件開(kāi)發(fā)人員 方便地找到所需要的構(gòu)件 大多數(shù)的研究都建議使用圖書(shū)館科學(xué)索引方法進(jìn)行構(gòu)件分類(lèi) 構(gòu)件庫(kù)管理系統(tǒng):主要用于構(gòu)件的儲(chǔ)存、構(gòu)件庫(kù)管理系統(tǒng):主要用于構(gòu)件的儲(chǔ)存、 檢索、瀏覽和管理檢索、瀏覽和管理 35/41 枚舉分類(lèi)枚舉分類(lèi)(Enumerated Classification) 將構(gòu)件組織成分類(lèi)層次結(jié)構(gòu),構(gòu)件庫(kù)中的構(gòu)件按某些性質(zhì)分成 若干大類(lèi),每個(gè)大類(lèi)又分成若干較小的類(lèi),經(jīng)過(guò)若干次分解, 形成構(gòu)件分類(lèi)的層次結(jié)構(gòu),實(shí)際的構(gòu)件位于層次結(jié)構(gòu)的最低層, 其它層次則表示構(gòu)件的類(lèi)或子類(lèi) 枚舉分類(lèi)模式的分層結(jié)構(gòu)易于理解和檢索,但是,在
25、建立層次 結(jié)構(gòu)之前,必須進(jìn)行領(lǐng)域分析,尋找合適的供分類(lèi)的性質(zhì)。 屬性屬性值分類(lèi)值分類(lèi)(Attribute_Value Classification) 為所有構(gòu)件定義一組屬性,每個(gè)構(gòu)件都具有一組屬性值,開(kāi)發(fā) 人員通過(guò)指定一組屬性值對(duì)構(gòu)件庫(kù)檢索 與刻面分類(lèi)方法非常類(lèi)似,不同點(diǎn)在于:屬性值分類(lèi)法對(duì)可 使用的屬性數(shù)量沒(méi)有限制;屬性沒(méi)有優(yōu)先級(jí);不使用同義詞 36/41 刻面分類(lèi)刻面分類(lèi)(Faceted Classification) 根據(jù)一組刻面對(duì)構(gòu)件分類(lèi),每個(gè)刻面從不同的側(cè)面對(duì)構(gòu)件 庫(kù)中的構(gòu)件進(jìn)行分類(lèi),并根據(jù)重要性設(shè)置刻面的優(yōu)先級(jí) 每個(gè)刻面由一組術(shù)語(yǔ)(term)構(gòu)成,稱(chēng)之為術(shù)語(yǔ)空間(term space),這些術(shù)語(yǔ)通常是描述性的關(guān)鍵詞 檢索:用戶(hù)通過(guò)指定一組刻面的術(shù)語(yǔ)值尋找匹配的構(gòu)件 使用同義詞詞典(thesaurus)解決用戶(hù)指定的術(shù)語(yǔ)值與庫(kù) 中構(gòu)件所對(duì)應(yīng)的術(shù)語(yǔ)值之間的不一致問(wèn)題 評(píng)價(jià):具有較好的靈活性,易于加入新的刻面值,比枚舉 分類(lèi)模式易于擴(kuò)展和修改 37/41 構(gòu)件的分類(lèi)存儲(chǔ)構(gòu)件的分類(lèi)存儲(chǔ)(即添加構(gòu)件即添加構(gòu)件):根據(jù)構(gòu)件庫(kù)的:根據(jù)構(gòu)件庫(kù)的 分類(lèi)模型將入庫(kù)的構(gòu)件儲(chǔ)存在構(gòu)件庫(kù)中分類(lèi)模型將入庫(kù)的構(gòu)件儲(chǔ)存在構(gòu)件庫(kù)中 構(gòu)件檢索:從構(gòu)件庫(kù)中檢索出滿(mǎn)足用戶(hù)要求或構(gòu)件檢索:從構(gòu)件庫(kù)中檢索出滿(mǎn)足用戶(hù)要求或 接近用戶(hù)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 題型05 定量實(shí)驗(yàn)探究-備戰(zhàn)2020年中考化學(xué)實(shí)驗(yàn)題型特訓(xùn)(原卷版)
- 新年福利玩?;顒?dòng)方案
- 新品套盒團(tuán)購(gòu)活動(dòng)方案
- 文化年度活動(dòng)方案
- 文字作品大賽活動(dòng)方案
- 春季戶(hù)外拓印活動(dòng)方案
- 新學(xué)期關(guān)愛(ài)學(xué)生活動(dòng)方案
- 新疆烤全羊活動(dòng)策劃方案
- 明星演講活動(dòng)策劃方案
- 新年包餃子活動(dòng)方案方案
- 新媒體部筆試題目及答案
- 道路旅客運(yùn)輸安全生產(chǎn)管理制度x
- 人教(部編版)道德與法治八下5.3基本政治制度教學(xué)設(shè)計(jì)
- 黑龍江省2024年普通高校招生體育類(lèi)本科批院校專(zhuān)業(yè)組投檔分?jǐn)?shù)線(xiàn)(歷史類(lèi))
- 水閘地基施工方案
- 企業(yè)數(shù)字化轉(zhuǎn)型服務(wù)協(xié)議
- 《建立合適邊界:親子教育課件》
- DB37-T 4516-2022 高速公路邊坡光伏發(fā)電工程技術(shù)規(guī)范
- 變電所設(shè)備更換申請(qǐng)報(bào)告
- 2023年遺傳學(xué)考試題庫(kù)(含答案)
- 課題申報(bào)參考:基于多模態(tài)大數(shù)據(jù)的大學(xué)生心理危機(jī)預(yù)警機(jī)制研究
評(píng)論
0/150
提交評(píng)論