全生命期的軟件體系結構支持_第1頁
全生命期的軟件體系結構支持_第2頁
全生命期的軟件體系結構支持_第3頁
全生命期的軟件體系結構支持_第4頁
全生命期的軟件體系結構支持_第5頁
已閱讀5頁,還剩42頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

ABC方法全生命期的軟件體系結構支持

梅宏北京大學信息科學技術學院軟件所2005年10月28日-北京目錄工作背景Internet帶來的軟件技術挑戰(zhàn)我們的工作面向構件、基于體系結構的軟件開發(fā)方法ABC2Internet帶來的軟件技術挑戰(zhàn)3Internet平臺的特征開放性多變性動態(tài)性無統(tǒng)一控制的“真”分布性節(jié)點的高度自治性和不可預測性節(jié)點鏈接的開放性和動態(tài)性人、設備和軟件的多重異構性使用方式的個性化和靈活性

網(wǎng)絡連接環(huán)境的多樣性4未來軟件的基本形態(tài)未來軟件系統(tǒng)開放結構動態(tài)協(xié)同環(huán)境感知自主適應在線演化實體交互多種靜態(tài)連接和動態(tài)合作方式互連、互通、協(xié)作和聯(lián)盟實體元素獨立性主動性自適應性分布、自治、異構的“構件”新的軟件形態(tài):網(wǎng)構軟件(Internetware)實現(xiàn)從信息Web到SoftwareWeb的跨越5網(wǎng)構軟件的主要特征自主性:軟件實體具有相對獨立性、主動性和自適應性協(xié)同性:軟件實體之間多種方式的互連、互通、協(xié)作和聯(lián)盟反應性:軟件實體具有感知外部運行和使用環(huán)境的能力演化性:結構和實體的演化能力,包括:元素數(shù)目的可變性、結構關系的可調節(jié)性和結構形態(tài)的動態(tài)可配置性多態(tài)性:網(wǎng)構軟件實體具有目標制導能力和多目標的特征協(xié)同能力,從而使系統(tǒng)的效果體現(xiàn)出相容的多目標性6網(wǎng)構軟件對軟件技術的挑戰(zhàn)(1)傳統(tǒng)軟件形態(tài)新的軟件形態(tài)分解確定目標、有序控制軟件運行平臺站點元素站點元素站點元素站點元素站點元素服務服務無序有序服務無序有序動態(tài)目標漸趨穩(wěn)態(tài)7網(wǎng)構軟件對軟件技術的挑戰(zhàn)(2)傳統(tǒng)軟件形態(tài)基于實體驅動需求標識實體結構分解需求變化新的軟件形態(tài)基于協(xié)同驅動需求查找實體實體聚合需求變化8網(wǎng)構軟件對軟件技術的挑戰(zhàn)(3)傳統(tǒng)軟件網(wǎng)構軟件傳統(tǒng)軟件結構系統(tǒng)目標的確定性實體單元的被動性協(xié)同方式的單一性系統(tǒng)演變的靜態(tài)性基于實體的結構分解經(jīng)驗驅動的軟件手工開發(fā)模式網(wǎng)構軟件結構多重不確定性主動自主性靈活多面性系統(tǒng)演化的動態(tài)性基于協(xié)同的實體聚合知識驅動的軟件自動生成模式9現(xiàn)行技術體系的局限操作現(xiàn)有軟件方法學與技術—面向對象技術對象數(shù)據(jù)實體的被動性、依賴性:無法支持自主性和反應性,缺乏對外界感知能力和主動能力的描述機制連接方式的單一性:RPC式硬連,無法支持協(xié)同性和演化性,缺乏對動態(tài)交互的表述與約束機制系統(tǒng)結構與目標的確定性:缺乏對環(huán)境因素、多態(tài)性、動態(tài)配置和演化、以及安全可信性的描述和控制機制現(xiàn)有軟件中間件平臺模型主要著重于開放環(huán)境的互連與互操作缺乏對協(xié)同、演化、反應和多態(tài)的支持10面向構件、基于體系結構的

軟件開發(fā)方法ABC11面向構件的網(wǎng)構軟件開發(fā)方法學針對網(wǎng)構軟件的節(jié)點元素自治化、節(jié)點協(xié)同(交互)柔性化、結構和節(jié)點演化動態(tài)化的特點,開展研究面向特征的需求建?;隗w系結構的維護和演化基于構件的體系結構設計基于體系結構的構件組裝和部署特征模型體系結構網(wǎng)構軟件分布式Internet構件庫構件運行支撐平臺產(chǎn)生應用產(chǎn)生應用產(chǎn)生支撐支撐存儲存儲應用應用網(wǎng)構軟件基本模型和性質網(wǎng)構軟件可信性評估和保障技術網(wǎng)構軟件的示范性應用應用驗證指導支撐操縱驅動已初步形成一套面向構件、基于軟件體系結構的軟件開發(fā)方法-ABC12ABC釋義ABC:ArchitectureBasedComponentComposition-1998年針對構件組裝而提出2000年拓展到整個軟件生存期,改為“面向構件、基于體系結構的軟件開發(fā)方法”,英文保持不變,寓意“方法簡單易用”ABC方法仍在不斷發(fā)展完善中13研究動因(1)軟件體系結構(SA)大型軟件系統(tǒng)設計的關鍵環(huán)節(jié)一種自頂向下的構件復用途徑基于構件的軟件開發(fā)(CBSD)基于中間件技術自底向上的構件復用途徑14研究動因(2)相關研究的不足SA對體系結構描述的精化和實現(xiàn)關注不夠缺少對變換或組裝生成可執(zhí)行系統(tǒng)的必要能力CBSD缺少系統(tǒng)的方法學指導CBSD過程,特別是在高抽象層次的組裝支持15ABC方法面向構件、基于軟件體系結構的軟件開發(fā)方法(ArchitectureBasedComponentComposition)SA+CBSD:將SA與CBSD相結合,以SA模型作為系統(tǒng)藍圖指導系統(tǒng)開發(fā)的全過程,把分布式構件技術作為構件組裝的實現(xiàn)框架和運行時的支撐,使用工具支持的映射規(guī)則縮小設計和實現(xiàn)間的距離,自動地組裝、驗證所需要的系統(tǒng)16ABC方法FeatureOrientedRequirementsAnalysisDesignofSoftwareArchitectureArchitectureBasedComponentCompositionArchitectureBasedApplicationDeploymentArchitectureBasedMaintenanceandEvolutionFeatureModelandModelingToolSoftwareArchitectureandModelingToolComponentOperatingPlatform:J2EEandWebServicesDeploymentToolManagementTool將軟件體系結構引入到軟件生命周期的每個階段通過工具和映射機制縮短高層設計和實現(xiàn)間的距離17三個層次的研究工作基于體系結構的需求分析體系結構設計基于體系結構的組裝基于體系結構的部署基于體系結構的維護領域工程體系結構設計運行支撐基于特征的需求建模平臺獨立的體系結構建模平臺特定的構件部署、運行和維護特征構件:接口構件:實現(xiàn)18領域工程與軟件復用領域工程應用工程基于領域模型的分析用戶需求基于DSSA的設計應用系統(tǒng)規(guī)約構件組裝應用系統(tǒng)體系結構應用系統(tǒng)領域分析領域設計領域實現(xiàn)領域模型DSSA領域構件階段1:可復用軟件資產(chǎn)的生產(chǎn)階段2:基于可復用軟件資產(chǎn)的應用系統(tǒng)開發(fā)19基于特征的領域模型以領域特征模型(FM)為中心,由多種相關模型共同構成領域模型服務1功能1功能2功能3行為特征1行為特征2服務2服務nUseCase集1UseCase集2UseCase集n系統(tǒng)邊界服務層功能層行為特征層UseCase段質量段約束段(基于謂詞邏輯)+特征交互模型20特征模型特征:一組相互緊密聯(lián)系的需求構成的單元,反映了某種對用戶或客戶有價值的能力。系統(tǒng)行為功能質量屬性約束特征模型概念框架基本組織結構:基于整體-部分關系變化性建模機制約束關系建模機制交互關系建模機制21面向特征的優(yōu)點為領域提供一個標準的名字空間促進各種參與者間的交流提供了組織需求的良好框架遵從entity-relation模式便于圖形化建模支持對需求的復用對共性/變性的建模支持對變性的剪裁支持半形式化的需求建模技術22特征與功能(Function)兩者觀察事物的角度不同功能:輸入到輸出的映射關系數(shù)學、程序語言、結構化軟件開發(fā)方法、軟件需求規(guī)約。特征:用戶/客戶視角一組相互關聯(lián)的需求一種對外提供的能力有重疊不同角度的交叉點特征能夠更全面、有效地描述問題空間23特征建模工具界面24軟件體系結構建模構件模型ABC/ADL支持構件組裝的體系結構描述語言映射規(guī)則SA模型到實現(xiàn)工具支持SA的可視化建模SA模型的驗證和校驗基于SA的構件組裝DependencyADependencyBServiceAServiceBInternalSpecification25ABC/ADLABC/ADL基于上述構件模型,在三個層次上刻畫構件和連接子:基本層.構件和連接子的語法描述.行為層.構件功能、行為和非功能特征的語義規(guī)約和約束.協(xié)議層.構件和環(huán)境之間交互的契約定義,以及由連接子封裝的構件間的交互協(xié)議.26ABC/ADL的特點ABC/ADL顯式區(qū)分構件類型和實例連接子類型和實例構件接口中的類型相關的方法和實例相關的方法ABC/ADL提供復合構件提供層次化和漸進的建模支持.復雜連接子擁有內部結構或復雜交互協(xié)議.風格模板.提供用戶自定義風格的能力.Aspect刻畫具有貫穿特性的非功能系統(tǒng)約束,如:安全、事務……27對連接子模型的無縫支持CallerComponentSourceadviceSinkadviceConnectorCalleeComponentData/controltransferUnderlyingservicesCrosscuttingplaneInfrastructureplaneBusinessplane28ABCTool概念視圖可視化建模工具可復用資產(chǎn)池語法語義校驗器平臺特定的應用部署平臺特定的實現(xiàn)框架軟件體系結構模型J2EECORBAWebServicesDCOMUMLC++Java29ABCToolforJ2EE30基于體系結構的部署OperationalStrategyMaintainabilityCostRiskPerformance/priceQualityofServicesResponseTimeThroughputSecurityAvailabilityResourceCompetitionCPUBandwidthMemoryThreadHeapSocketContainersCommonServicesComponents如何考慮眾多因素及其依賴關系以保證希望的功能和服務質量?SA!31典型的J2EE部署Morethan25itemsforanEJBMorethan30itemsforaWebApplicationMorethan20itemsforaJ2EEApplication32基于體系結構的部署工具VisualizationofarchitecturemodelsinthedevelopmentVisualizationofserversandtheircapabilitiesDrag-and-dropdeploymentofcomponents33構件運行支撐平臺:PKUAS

支持J2EE的應用服務器符合J2EE1.3/EJB2.0規(guī)范主要特色基于微內核、構件化的體系結構靈活的容器系統(tǒng)可擴展的互操作框架構件和系統(tǒng)的在線演化基于SA的應用部署、管理與維護引入運行時軟件體系結構-RSA34構件化體系結構同類工作中較早提出并采用微內核概念和結構35基于JMX的微內核JavaManagementExtensionJava對象的管理規(guī)范PKUAS的微內核實現(xiàn)為MBeanServerMBean的注冊中心MBean的調用框架PKUAS中的構件實現(xiàn)為MBeansMBeanServer

Services,Tools,ContainerSystemsMBean對象管理接口業(yè)務接口明確界定微內核的功能系統(tǒng)構件的裝載、配置、卸載以及啟動、停止、掛起等狀態(tài)管理不負責系統(tǒng)構件間的通信,負責元實體間通信36容器系統(tǒng)容器系統(tǒng)容器系統(tǒng)容器系統(tǒng)管理器監(jiān)控管理工具每個容器系統(tǒng)對應一個實際的應用系統(tǒng),同時負責管理此系統(tǒng)中的構件容器每個構件容器對應一個系統(tǒng)中的一種構件(EJB)平臺內核用戶通過監(jiān)控管理工具實施管理操作容器系統(tǒng)管理器負責管理容器系統(tǒng)的創(chuàng)建、刪除以及發(fā)出管理命令容器容器容器容器容器容器容器多個容器系統(tǒng)同時運行,容器及容器系統(tǒng)均可在線創(chuàng)建和刪除37容器環(huán)境管理器構件實例管理器安全截取器事務截取器其它截取器事務服務安全服務構件容器容器容器系統(tǒng)接收器分發(fā)器容器容器支持構件的運行和管理靈活的截取器配置機制38互操作框架統(tǒng)一的互操作框架,多協(xié)議同時運行方便的新協(xié)議增加機制優(yōu)于JBoss和JONAS的協(xié)議性能39在線演化微內核容器系統(tǒng)容器截取器鏈EJBHomeEJBRemote構件實現(xiàn)通訊服務事務服務安全服務應用演化構件演化支持構件實現(xiàn)的安全在線演化支持構件接口的在線演化支持結構的在線重配置40因果關聯(lián)因果關聯(lián)應用軟件體系結構的元對象平臺軟件體系結構的元對象構件化平臺與應用的基對象基于反射式軟件中間件的應用系統(tǒng)反射編程接口反射式應用程序

可視化反射工具開發(fā)階段的軟件體系結構形式化軟件體系結構描述反射的正確和安全基于RSA的中間件反射機制應用軟件體系結構視圖平臺軟件體系結構視圖運行時軟件體系結構(RSA)概念的提出應用系統(tǒng)和平臺的RSA視圖恢復和維護基于RSA的反射機

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論