應(yīng)用架構(gòu)設(shè)計(jì)模板_第1頁(yè)
應(yīng)用架構(gòu)設(shè)計(jì)模板_第2頁(yè)
應(yīng)用架構(gòu)設(shè)計(jì)模板_第3頁(yè)
應(yīng)用架構(gòu)設(shè)計(jì)模板_第4頁(yè)
應(yīng)用架構(gòu)設(shè)計(jì)模板_第5頁(yè)
已閱讀5頁(yè),還剩58頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Evolve by case UML 軟件工程組織架構(gòu)概念 應(yīng)用架構(gòu)介紹火龍果架構(gòu)培養(yǎng)體系 應(yīng)用架構(gòu)案例UML 軟件工程組織 架構(gòu)概念 應(yīng)用架構(gòu)介紹 火龍果架構(gòu)培養(yǎng)體系 應(yīng)用架構(gòu)案例UML 軟件工程組織架構(gòu)基本概念什么是架構(gòu)定義了系統(tǒng)的組織組織,組成系統(tǒng)的結(jié)構(gòu)元素、接口以及這些元素在協(xié)作中的行為,關(guān)系的設(shè)計(jì)和管理原則。架構(gòu)設(shè)計(jì)UML 軟件工程組織架構(gòu)基本概念什么是架構(gòu)基線n構(gòu)建基線架構(gòu)基線:架構(gòu)基線是一個(gè)“小的、皮包骨架的”系統(tǒng),是系統(tǒng)整個(gè)生命周期的開發(fā)準(zhǔn)則,適用于所有的迭代周期;n系統(tǒng)實(shí)施系統(tǒng)實(shí)施基于架構(gòu)基線,在架構(gòu)基線的指導(dǎo)下,完成系統(tǒng)的構(gòu)件、節(jié)點(diǎn),使“基線”進(jìn)化為性能完善的系統(tǒng);系統(tǒng)構(gòu)件

2、架構(gòu)基線UML 軟件工程組織架構(gòu)基本概念架構(gòu)基本概念架構(gòu)設(shè)計(jì)目標(biāo)架構(gòu)設(shè)計(jì)目標(biāo)n理解系統(tǒng)架構(gòu)使開發(fā)人員、管理人員,客戶以及其他項(xiàng)目相關(guān)人員理解系統(tǒng);n組織開發(fā)通過(guò)明確劃分的子系統(tǒng),以及接口,降低協(xié)調(diào)開發(fā)的成本;n鼓勵(lì)重用設(shè)計(jì)良好可重用的子系統(tǒng)加速系統(tǒng)的構(gòu)建進(jìn)程;n進(jìn)化系統(tǒng)應(yīng)對(duì)變化環(huán)境,構(gòu)建彈性系統(tǒng)避免變化對(duì)系統(tǒng)產(chǎn)生非期望的效果;UML 軟件工程組織架構(gòu)基本概念架構(gòu)分類業(yè)務(wù)架構(gòu)(Business Architecture)技術(shù)架構(gòu)(Technical Architecture)企業(yè)架構(gòu)(Enterprise Architecture)UML 軟件工程組織架構(gòu)分類業(yè)務(wù)架構(gòu)n 業(yè)務(wù)架構(gòu)是對(duì)需求的描述,

3、以及業(yè)務(wù)模型的定義,其中包括領(lǐng)域模型(Domain Object),業(yè)務(wù)流程模型(Business Process Model),系統(tǒng)參與者(Actor)。UML 軟件工程組織架構(gòu)分類架構(gòu)分類技術(shù)架構(gòu)技術(shù)架構(gòu)n 技術(shù)架構(gòu)是對(duì)系統(tǒng)使用的技術(shù)一個(gè)規(guī)范性的定義,它包含非功能性的可重用構(gòu)件,系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)規(guī)范,開發(fā)規(guī)范,物理環(huán)境,測(cè)試環(huán)境,部署環(huán)境的定義,以及系統(tǒng)配置管理。UML 軟件工程組織架構(gòu)分類架構(gòu)分類企業(yè)架構(gòu)企業(yè)架構(gòu)n 企業(yè)架構(gòu)指的是在對(duì)一個(gè)企業(yè)的業(yè)務(wù)戰(zhàn)略和流程理解基礎(chǔ)之上,進(jìn)行信息化的頂層設(shè)計(jì),對(duì)企業(yè)現(xiàn)有的業(yè)務(wù)架構(gòu)和技術(shù)架構(gòu)進(jìn)行有效的整合,形成靈活健壯的IT結(jié)構(gòu),構(gòu)建的和諧IT環(huán)境。UML

4、軟件工程組織架構(gòu)分類架構(gòu)分類宏觀架構(gòu)宏觀架構(gòu) (Macroscopical Architecture)(Macroscopical Architecture)業(yè)務(wù)架構(gòu)技術(shù)架構(gòu)應(yīng)用系統(tǒng)業(yè)務(wù)架構(gòu)技術(shù)架構(gòu)應(yīng)用系統(tǒng)業(yè)務(wù)架構(gòu)技術(shù)架構(gòu)應(yīng)用系統(tǒng)企業(yè)架構(gòu)UML 軟件工程組織 架構(gòu)概念 應(yīng)用架構(gòu)介紹 火龍果架構(gòu)培養(yǎng)體系 應(yīng)用架構(gòu)案例UML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)介紹業(yè)務(wù)架構(gòu)示例業(yè)務(wù)架構(gòu)示例Logistical Logistical OperationalPlatformOperationalPlatform Horizontal SolutionUser ManagementPermissionMan

5、agementSea FreightAir FrieghtRoad FrieightCRMCRM Horizontal SolutionUser ManagementPermissionManagementContact ManagementTransaction ManagementCustomer ManagementConnector Horizontal SolutionDTSSingle Sign On Horizontal SolutionPMIBridge Bridge Bridge UML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)介紹技術(shù)架構(gòu)組成技術(shù)架構(gòu)組成PresentationPr

6、esentationBusinessBusinessPersistencePersistenceCore ArchitectureCore ArchitectureSubscriptionSubscriptionData AnalysisData AnalysisBPMBPMTraceTraceUtilitiesUtilitiesToolkitsToolkitsScheduleScheduleConnectorConnectorConnectorConnectorConnectorConnectorTechnical ArchitectureTechnical ArchitecturePort

7、alPortalPMIPMIRule EngineRule EngineUML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)介紹系統(tǒng)協(xié)同系統(tǒng)協(xié)同Application AApplication BConnector (Middle DB)Connector (Middle DB)Connector (Web Service)Connector (Web Service)Application AApplication BApplication AApplication BConnector (JCA)Connector (JCA)UML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)介紹設(shè)計(jì)原則設(shè)計(jì)原則分而自治(Bou

8、ndary Of Responsibility)面向服務(wù)(Service Oriented)協(xié)同規(guī)劃(Collaboration)UML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)介紹分而自治分而自治n分而自治(Boundary Of Responsibility)功能性與非功能性之分通用與定制之分UML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)介紹面向服務(wù)面向服務(wù)n面向服務(wù)(Service Oriented)面向接口組件黑盒規(guī)范的服務(wù)描述UML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)介紹協(xié)同規(guī)劃協(xié)同規(guī)劃n 協(xié)同規(guī)劃(Collaboration) 泛化連接器 松散耦合 簡(jiǎn)單部署UML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)

9、介紹應(yīng)用架構(gòu)實(shí)現(xiàn)方法論應(yīng)用架構(gòu)實(shí)現(xiàn)方法論n 整體規(guī)劃 Vertical Solution (Use Case, Domain Model, Business Sequence, etc) Horizontal Solution (Prototype, Components, Service Publication, Technical Decision)n 環(huán)境配置 Workspace IDEn 編碼實(shí)現(xiàn) Object Oriented Design Pattern TestingUML 軟件工程組織應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)介紹應(yīng)用架構(gòu)實(shí)現(xiàn)方法論應(yīng)用架構(gòu)實(shí)現(xiàn)方法論( (續(xù)續(xù)) )n部署Deploy

10、ment ScriptApplication Service EnvironmentTestingUML 軟件工程組織 架構(gòu)概念 應(yīng)用架構(gòu)介紹 火龍果架構(gòu)培養(yǎng)體系 應(yīng)用架構(gòu)案例UML 軟件工程組織UML 軟件工程組織 架構(gòu)概念 應(yīng)用架構(gòu)介紹 火龍果架構(gòu)培養(yǎng)體系 應(yīng)用架構(gòu)案例UML 軟件工程組織應(yīng)用架構(gòu)案例案例背景本案例是一個(gè)實(shí)際的企業(yè)級(jí)應(yīng)用系統(tǒng),主要作用是為企業(yè)的其他信息系統(tǒng)提供相關(guān)的數(shù)據(jù)分析服務(wù),包括報(bào)表,圖表,和Dashboard。n系統(tǒng)目標(biāo)構(gòu)建一個(gè)數(shù)據(jù)分析服務(wù)組件能夠支持?jǐn)?shù)據(jù)分析資源擴(kuò)展提供標(biāo)準(zhǔn)的數(shù)據(jù)分析服務(wù),被其他企業(yè)信息系統(tǒng)所使用n系統(tǒng)環(huán)境支持分布式應(yīng)用支持多種協(xié)議提供定時(shí)服務(wù)提供訂

11、閱服務(wù)運(yùn)行高性能提供管理控制臺(tái)n設(shè)計(jì)約束需要支持熱部署UML 軟件工程組織應(yīng)用架構(gòu)案例架構(gòu)設(shè)計(jì)路線圖UML 軟件工程組織應(yīng)用架構(gòu)案例系統(tǒng)整體需求描述n提供統(tǒng)一的數(shù)據(jù)分析服務(wù)n提供定時(shí)服務(wù),定時(shí)產(chǎn)生數(shù)據(jù)分析結(jié)果(月報(bào),年報(bào),周報(bào))n提供訂閱服務(wù),輸出數(shù)據(jù)分析結(jié)果n支持多交互協(xié)議n支持多數(shù)據(jù)分析資源的擴(kuò)展n支持運(yùn)行時(shí)的擴(kuò)展性,熱部署UML 軟件工程組織應(yīng)用架構(gòu)案例確定架構(gòu)范圍設(shè)計(jì)問(wèn)題設(shè)計(jì)問(wèn)題設(shè)計(jì)策略設(shè)計(jì)策略優(yōu)先級(jí)優(yōu)先級(jí)子系統(tǒng)劃分確定系統(tǒng)邊界和每個(gè)子系統(tǒng)的職責(zé)高系統(tǒng)層次劃分按照系統(tǒng)層次的從低到高,確定每個(gè)層次的組件高支持資源擴(kuò)展采用策略模式,泛化服務(wù)接口高支持多種交互協(xié)議采用代理模式和Faade模式

12、,調(diào)用報(bào)表服務(wù)高處理各層次異常采用責(zé)任鏈模式,分劃異常的處理高支持運(yùn)行時(shí)擴(kuò)展確定劃分熱部署邊界,組件部署分離高特定數(shù)據(jù)分析資源實(shí)現(xiàn)使用特定報(bào)表技術(shù),適配服務(wù)接口中實(shí)現(xiàn)定時(shí)服務(wù)使用定時(shí)服務(wù)組件,調(diào)用數(shù)據(jù)分析服務(wù)接口中實(shí)現(xiàn)訂閱服務(wù)使用定制的訂閱技術(shù),并且開發(fā)接口給定時(shí)服務(wù)使用中管理控制臺(tái)使用B/S架構(gòu)定制界面,設(shè)定各個(gè)服務(wù)組件的配置低針對(duì)需求,確定設(shè)計(jì)點(diǎn),作為架構(gòu)設(shè)計(jì)的范圍UML 軟件工程組織 應(yīng)用架構(gòu)案例子架構(gòu):分析、設(shè)計(jì)、實(shí)現(xiàn)與驗(yàn)證集成系統(tǒng)總體架構(gòu)UML 軟件工程組織功能架構(gòu)功能架構(gòu)子系統(tǒng)劃分子系統(tǒng)劃分對(duì)于任何系統(tǒng)而言,系統(tǒng)的架構(gòu)都需要從對(duì)系統(tǒng)的分解入手。劃分子系統(tǒng)的主要目的在于:n簡(jiǎn)化系統(tǒng)設(shè)

13、計(jì)工作n提高并行開發(fā)效率n便于系統(tǒng)架構(gòu)的擴(kuò)展UML 軟件工程組織功能架構(gòu)功能架構(gòu)子系統(tǒng)劃分分析子系統(tǒng)劃分分析n功能性劃分功能性組件數(shù)據(jù)分析組件:提供數(shù)據(jù)分析基本服務(wù),產(chǎn)生數(shù)據(jù)分析結(jié)果(圖片,文件)定時(shí)服務(wù)組件:提供定時(shí)機(jī)制,定時(shí)調(diào)用數(shù)據(jù)分析服務(wù)和訂閱服務(wù)訂閱服務(wù)組件:提供訂閱服務(wù)基本服務(wù),(Mail,FTP)管理控制臺(tái):系統(tǒng)服務(wù)配置設(shè)定(定時(shí)服務(wù),訂閱服務(wù))n非功能性劃分非功能性組件部署管理組件:運(yùn)行時(shí)裝載數(shù)據(jù)分析的模版,計(jì)算組件,數(shù)據(jù)源;數(shù)據(jù)訪問(wèn)組件:提供訪問(wèn)數(shù)據(jù)源服務(wù)(數(shù)據(jù)庫(kù),文件)外部交互適配器:提供支持多種交互協(xié)議的連接適配器(SOAP,RMI-IIOP)n通用與定制之分定制性組件Ja

14、sperReport:提供基于JasperReport的數(shù)據(jù)分析服務(wù)CrystalReport:提供基于水晶報(bào)表的數(shù)據(jù)分析服務(wù)UML 軟件工程組織功能架構(gòu)功能架構(gòu)子系統(tǒng)劃分設(shè)計(jì)子系統(tǒng)劃分設(shè)計(jì)根據(jù)原則劃分好的子系統(tǒng),需要有明確的接口定義,來(lái)代表其子系統(tǒng)提供的功能DAOServicevoid insert()void update()void delete()Object findByPk()ScheduleServicevoid executeSchedule()SubscriptionServicevoid notifySubscriber()J2EE ConnectorCrystal Rep

15、ortServiceJasperReportServiceOLAP ServiceRepporting Servicebyte loadReport(String reportId, Map context, int type)void deploy()DeploymentManagementServiceUML 軟件工程組織功能架構(gòu)功能架構(gòu)子系統(tǒng)劃分實(shí)現(xiàn)與驗(yàn)證子系統(tǒng)劃分實(shí)現(xiàn)與驗(yàn)證在系統(tǒng)實(shí)施過(guò)程中,一般子系統(tǒng)會(huì)使用不同的工作目錄來(lái)實(shí)現(xiàn)。每個(gè)工作目錄會(huì)需要包含下列信息:l 源程序l 組件依賴配置l 部署腳本l 測(cè)試程序UML 軟件工程組織邏輯架構(gòu)邏輯架構(gòu)系統(tǒng)分層系統(tǒng)分層系統(tǒng)分層的主要目的在于:n

16、細(xì)化子系統(tǒng),確定子系統(tǒng)組件之間的協(xié)作關(guān)系n提高子系統(tǒng)的可重用性n提高子系統(tǒng)的可測(cè)試性n提高子系統(tǒng)的可維護(hù)性n提高子系統(tǒng)的可擴(kuò)展性UML 軟件工程組織邏輯架構(gòu)邏輯架構(gòu)系統(tǒng)分層分析系統(tǒng)分層分析n定義分層邊界劃分原則本系統(tǒng)按照服務(wù)消費(fèi)者和服務(wù)提供者關(guān)系來(lái)劃分層次n定義消費(fèi)者和服務(wù)提供者關(guān)系數(shù)據(jù)分析服務(wù)消費(fèi)者數(shù)據(jù)分析服務(wù)消費(fèi)者BrowserBrowser,Java Client Application, C+ Client Java Client Application, C+ Client 數(shù)據(jù)分析服務(wù)提供者數(shù)據(jù)分析服務(wù)提供者數(shù)據(jù)分析運(yùn)算組件數(shù)據(jù)分析運(yùn)算組件數(shù)據(jù)源提供組件數(shù)據(jù)源提供組件協(xié)議適配器協(xié)議

17、適配器數(shù)據(jù)分析資源數(shù)據(jù)分析資源消費(fèi)服務(wù)UML 軟件工程組織邏輯架構(gòu)邏輯架構(gòu)系統(tǒng)分層設(shè)計(jì)系統(tǒng)分層設(shè)計(jì)UML 軟件工程組織可擴(kuò)展架構(gòu):支持資源擴(kuò)展可擴(kuò)展架構(gòu):支持資源擴(kuò)展 數(shù)據(jù)分析資源包括各種數(shù)據(jù)分析實(shí)現(xiàn)技術(shù)。支持資源擴(kuò)展的主要需求如下:n支持?jǐn)?shù)據(jù)分析資源的可替換n支持?jǐn)?shù)據(jù)分析資源的可升級(jí)n實(shí)現(xiàn)統(tǒng)一的數(shù)據(jù)分析服務(wù)接口UML 軟件工程組織可擴(kuò)展架構(gòu):支持資源擴(kuò)展分析可擴(kuò)展架構(gòu):支持資源擴(kuò)展分析n通用性和定制性劃分特定數(shù)據(jù)分析資源需要定制統(tǒng)一的數(shù)據(jù)分析接口代表通用行為n通用性和定制性結(jié)合行為抽象,抽象特定數(shù)據(jù)分析資源的通用行為實(shí)現(xiàn)獨(dú)立,把特定數(shù)據(jù)分析資源的實(shí)現(xiàn)看成是行為抽象的一個(gè)特定實(shí)現(xiàn)UML 軟件工

18、程組織可擴(kuò)展架構(gòu):支持的資源擴(kuò)展設(shè)計(jì)可擴(kuò)展架構(gòu):支持的資源擴(kuò)展設(shè)計(jì)n J2EE Pattern:策略模式現(xiàn)流行方式是采用Spring的ApplicationContext或者反射模式。構(gòu)造策略實(shí)現(xiàn)對(duì)象構(gòu)造策略實(shí)現(xiàn)對(duì)象策略行為接口策略行為接口策略實(shí)現(xiàn)策略實(shí)現(xiàn)UML 軟件工程組織可擴(kuò)展架構(gòu):支持的資源擴(kuò)展實(shí)現(xiàn)可擴(kuò)展架構(gòu):支持的資源擴(kuò)展實(shí)現(xiàn)n定義接口public interface ReportingServiceIFbyte loadReport(String reportId, Map context, int binaryType);n定義Spring配置 n通過(guò)制定BeanName來(lái)判斷使用

19、那個(gè)實(shí)現(xiàn)類ReportingServiceIF service = (ReportingServiceIF) ApplicationCtx.getBean(serviceName);byte reportBinary = service.loadReport(reportId, context, binaryType); UML 軟件工程組織外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議 系統(tǒng)的外部接口會(huì)被多種交互協(xié)議所調(diào)用,對(duì)于外部接口架構(gòu)來(lái)說(shuō),主要需求如下:n支持系統(tǒng)外部接口調(diào)用協(xié)議擴(kuò)展n重用數(shù)據(jù)分析服務(wù)組件n簡(jiǎn)化外部接口調(diào)用的實(shí)現(xiàn)UML 軟件工程組織

20、外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議分析外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議分析n職責(zé)劃分協(xié)議適配器:適配器負(fù)責(zé)使用特定交互協(xié)議調(diào)用數(shù)據(jù)分析服務(wù)重用數(shù)據(jù)分析組件:數(shù)據(jù)分析組件不涉及具體的協(xié)議交互n泛化連接器接口抽象交互行為,定義統(tǒng)一的交互接口封裝特定協(xié)議交互細(xì)節(jié),屏蔽交互復(fù)雜性UML 軟件工程組織外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議設(shè)計(jì)外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議設(shè)計(jì)nJ2EE Pattern: Faade模式通過(guò)coarse-grained的接口,屏蔽了低層次的實(shí)現(xiàn)細(xì)節(jié),這也是faade模式的一種應(yīng)用。協(xié)議適配器協(xié)議適配器UML 軟件工程組織外部接口架構(gòu):系統(tǒng)

21、外部接口支持多種交互協(xié)議設(shè)計(jì)外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議設(shè)計(jì)nJ2EE Pattern:策略模式,DelegateDelegate模式,對(duì)于具體的調(diào)用實(shí)現(xiàn)類來(lái)說(shuō),它不負(fù)責(zé)具體的業(yè)務(wù)邏輯處理,而只是負(fù)責(zé)代理特定的業(yè)務(wù)實(shí)現(xiàn)對(duì)象,并且封裝對(duì)這個(gè)對(duì)象的引用過(guò)程。常用的方式有ServiceLoacator,封裝了SOAP,Remote Interface, Local Interface的調(diào)用。協(xié)議調(diào)用代理UML 軟件工程組織外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議設(shè)計(jì)外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議設(shè)計(jì) : ReportingServiceClientApp : Applic

22、ationContext : ReportingServiceEJBDelegate : ReportingServiceEJBLocalHome : ReportingServiceEJBAdapterLocalgetBean(String)return delegate instanceloadReport(String, Map, int)create()return local handlerloadReport(String, Map, int)UML 軟件工程組織外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議實(shí)現(xiàn)外部接口架構(gòu):系統(tǒng)外部接口支持多種交互協(xié)議實(shí)現(xiàn)nEJB Adapterpu

23、blic interface ReportingServiceEJBAdapter extends EJBObject byte loadReport(String serviceClassName, String reportId, Map context, int binaryType) throws RemoteException;nEJB Delegatepublic class ReportingServiceEJBDelegate implements PCEReportingServiceDelegateIF public byte loadReport(String servi

24、ceName, String reportId, Map context, int binaryType) byte binaryArray = null;.ReportingServiceEJBAdapterHome remoteHome = (ReportingServiceEJBAdapterHome) ServiceLocator.getInstance().getRemoteHome(ReportingServiceEJBAdapter, ReportingServiceEJBAdapterHome.class); ReportingServiceEJBAdapter remote

25、= remoteHome.create(); binaryArray = remote.loadReport(serviceName, reportId, context, binaryType);return binaryArray;UML 軟件工程組織可靠性架構(gòu):異常處理機(jī)制可靠性架構(gòu):異常處理機(jī)制異常處理是系統(tǒng)可靠性的表現(xiàn),異常分為三種:無(wú)法恢復(fù)異常,記錄異常日志可恢復(fù)異常,通知使用者通過(guò)特定操作修復(fù)異常容錯(cuò)異常,系統(tǒng)根據(jù)發(fā)生的異常類型決定通過(guò)特定邏輯修復(fù)異常UML 軟件工程組織可靠性架構(gòu):異常處理機(jī)制分析可靠性架構(gòu):異常處理機(jī)制分析n 架構(gòu)統(tǒng)一 使用穩(wěn)定的架構(gòu)控制異常,包括捕獲,日志,

26、跳轉(zhuǎn) 異常處理職責(zé)劃分,判斷異常處理范圍,處理不了,就拋出 異常包裝,低層次異常需要被高層次異常包裝 (1*N)UML 軟件工程組織可靠性架構(gòu):異常處理機(jī)制設(shè)計(jì)可靠性架構(gòu):異常處理機(jī)制設(shè)計(jì) : WebAppServlet : ApplicationContext : ReportingServiceEJBDelegate : ReportingServiceEJBAdapter : JasperReportingServiceImplgetBean(String)return delegate instanceloadReport(String, Map, int)loadReport(Str

27、ing, Map, int)loadReport(String, Map, int)throw new JRExceptionJRException is thrown,when page result is emptythrow new BusinessException(e)throw Business ExceptionshowErrorMsgException e is a JRException which is thrown from jasper report service.UML 軟件工程組織可靠性架構(gòu):異常處理機(jī)制設(shè)計(jì)可靠性架構(gòu):異常處理機(jī)制設(shè)計(jì) : Application

28、Context : ReportingServiceEJBDelegate : ReportingServiceEJBAdapter : ScheduleTriggergetBean(String)return delegate instanceloadReport(String, Map, int)loadReport(String, Map, int)JNDI Lookupthrow CreationExceptionthrow new RuntimeException(e)Trace ExceptionUML 軟件工程組織可靠性架構(gòu):異常處理機(jī)制實(shí)現(xiàn)可靠性架構(gòu):異常處理機(jī)制實(shí)現(xiàn)n 對(duì)于不

29、可恢復(fù)異常而言,典型的實(shí)現(xiàn)方式如下:try callService(); catch (RuntimeException ex) /低層次的Exceptiontracer.logError(ex);throw new NewRuntimeException(e); /高層次的Exception不可恢復(fù)異常向上層拋出,它面對(duì)的不是許許多多低層次的Exception,而是它的直接下層組件的Exception。n 對(duì)于可恢復(fù)的異常而言,典型的實(shí)現(xiàn)方式就是直接在catch中,進(jìn)行新的邏輯處理,而不是繼續(xù)向上層拋出。UML 軟件工程組織可維護(hù)性架構(gòu):運(yùn)行時(shí)的擴(kuò)展性可維護(hù)性架構(gòu):運(yùn)行時(shí)的擴(kuò)展性 運(yùn)行時(shí)可擴(kuò)

30、展性要求服務(wù)能及時(shí)更新,其中包括:n 更新數(shù)據(jù)分析邏輯計(jì)算組件服務(wù)n 更新數(shù)據(jù)分析模版n 更新數(shù)據(jù)源裝載組件服務(wù)n 更新數(shù)據(jù)分析結(jié)構(gòu)這也是常說(shuō)的熱部署!UML 軟件工程組織可維護(hù)性架構(gòu):運(yùn)行時(shí)的擴(kuò)展性分析可維護(hù)性架構(gòu):運(yùn)行時(shí)的擴(kuò)展性分析l 資源的熱部署,相關(guān)配置文件更新l 業(yè)務(wù)組件的熱部署UML 軟件工程組織可維護(hù)性架構(gòu):運(yùn)行時(shí)的擴(kuò)展性設(shè)計(jì)可維護(hù)性架構(gòu):運(yùn)行時(shí)的擴(kuò)展性設(shè)計(jì)J2EE Application ServerReporting Service EJB AdapterReporting Service WarSchedule Service EJBDTSReporting Reposit

31、oryReport Logic ComponentReport ProfileDTS Logic ComponentSubscription ComponentUML 軟件工程組織可維護(hù)性架構(gòu):運(yùn)行時(shí)的擴(kuò)展性實(shí)現(xiàn)與驗(yàn)證可維護(hù)性架構(gòu):運(yùn)行時(shí)的擴(kuò)展性實(shí)現(xiàn)與驗(yàn)證n 構(gòu)建資源管理文件系統(tǒng)n 構(gòu)造自定義ClassLoader掃描資源管理文件系統(tǒng),栽入ClassPathn 更新服務(wù),替換自定義ClassLoaderUML 軟件工程組織 應(yīng)用架構(gòu)案例子架構(gòu):分析、設(shè)計(jì)、實(shí)現(xiàn)與驗(yàn)證集成系統(tǒng)總體架構(gòu)UML 軟件工程組織架構(gòu)集成n 為什么要進(jìn)行架構(gòu)集成 把系統(tǒng)的不同問(wèn)題的設(shè)計(jì)進(jìn)行有效的結(jié)合 系統(tǒng)的整體架構(gòu)不是簡(jiǎn)單的堆砌,需要各個(gè)部分的協(xié)調(diào)n 架構(gòu)集成的時(shí)機(jī) 在

溫馨提示

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

評(píng)論

0/150

提交評(píng)論