网站大量收购闲置独家精品文档,联系QQ:2885784924

应用架构设计模板.ppt

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

应用架构案例子架构:分析、设计、实现与验证集成系统总体架构对于任何系统而言,系统的架构都需要从对系统的分解入手。划分子系统的主要目的在于:1简化系统设计工作2提高并行开发效率3便于系统架构的扩展4功能架构——子系统划分 数据分析组件:提供数据分析基本服务,产生数据分析结果(图片,文件)定时服务组件:提供定时机制,定时调用数据分析服务和订阅服务订阅服务组件:提供订阅服务基本服务,(Mail,FTP)管理控制台:系统服务配置设定(定时服务,订阅服务)功能性划分——功能性组件部署管理组件:运行时装载数据分析的模版,计算组件,数据源;数据访问组件:提供访问数据源服务(数据库,文件)外部交互适配器:提供支持多种交互协议的连接适配器(SOAP,RMI-IIOP)非功能性划分——非功能性组件JasperReport:提供基于JasperReport的数据分析服务CrystalReport:提供基于水晶报表的数据分析服务通用与定制之分——定制性组件功能架构——子系统划分分析功能架构——子系统划分设计根据原则划分好的子系统,需要有明确的接口定义,来代表其子系统提供的功能DAOServicevoidinsert()voidupdate()voiddelete()ObjectfindByPk()ScheduleServicevoidexecuteSchedule()SubscriptionServicevoidnotifySubscriber()J2EEConnectorCrystalReportServiceJasperReportServiceOLAPServiceRepportingServicebyte[]loadReport(StringreportId,Mapcontext,inttype)voiddeploy()DeploymentManagementService功能架构——子系统划分实现与验证在系统实施过程中,一般子系统会使用不同的工作目录来实现。每个工作目录会需要包含下列信息:源程序组件依赖配置部署脚本测试程序BDACE细化子系统,确定子系统组件之间的协作关系提高子系统的可测试性提高子系统的可扩展性提高子系统的可重用性提高子系统的可维护性系统分层的主要目的在于:逻辑架构——系统分层逻辑架构——系统分层分析定义分层边界划分原则本系统按照服务消费者和服务提供者关系来划分层次定义消费者和服务提供者关系数据分析服务消费者Browser,JavaClientApplication,C++Client…数据分析服务提供者数据分析运算组件数据源提供组件协议适配器数据分析资源消费服务逻辑架构——系统分层设计可扩展架构:支持资源扩展数据分析资源包括各种数据分析实现技术。支持资源扩展的主要需求如下:支持数据分析资源的可替换支持数据分析资源的可升级实现统一的数据分析服务接口特定数据分析资源需要定制统一的数据分析接口代表通用行为通用性和定制性划分行为抽象,抽象特定数据分析资源的通用行为实现独立,把特定数据分析资源的实现看成是行为抽象的一个特定实现通用性和定制性结合壹贰可扩展架构:支持资源扩展分析可扩展架构:支持的资源扩展设计J2EEPattern:策略模式现流行方式是采用Spring的ApplicationContext或者反射模式。构造策略实现对象策略行为接口策略实现可扩展架构:支持的资源扩展实现定义接口publicinterfaceReportingServiceIF{ byte[]loadReport(StringreportId,Mapcontext,intbinaryType);}定义Spring配置beanid=jasperclass=com.wn.pce.reportingservice.platform.jasper.PCEReportingServiceJasperImpldestroy-method=closepropertyname=dataSourceLoaderref=defaultSourceLoader//bean通过制定BeanName来判断使用那个实现类ReportingServiceIFservice=(ReportingServiceIF)ApplicationCtx.getBean(serviceName);byte[]reportBinary=servi

文档评论(0)

wuyoujun92 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档