收藏 分销(赏)

应用架构设计模板PPT.ppt

上传人:a199****6536 文档编号:6188617 上传时间:2024-11-29 格式:PPT 页数:63 大小:1.87MB
下载 相关 举报
应用架构设计模板PPT.ppt_第1页
第1页 / 共63页
应用架构设计模板PPT.ppt_第2页
第2页 / 共63页
应用架构设计模板PPT.ppt_第3页
第3页 / 共63页
应用架构设计模板PPT.ppt_第4页
第4页 / 共63页
应用架构设计模板PPT.ppt_第5页
第5页 / 共63页
点击查看更多>>
资源描述

1、,Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,UML,软件工程组织,应用架构设计实践,Author,:,谢峰,架构概念,应用架构介绍,火龙果架构培养体系,应用架构案例,内容介绍,架构概念,应用架构介绍,火龙果架构培养体系,应用架构案例,架构基本概念,什么是架构,定义了系统的,组织,,组成系统的结构元素、接口以及这些元素在协作中的行为,关系的设计和管理原则。,架构设计,架构基本概念,什么是架构基线,构建基线,架

2、构基线:架构基线是一个,“,小的、皮包骨架的,”,系统,是系统整个生命周期的开发准则,适用于所有的迭代周期;,系统实施,系统实施基于架构基线,在架构基线的指导下,完成系统的构件、节点,使,“,基线,”,进化为性能完善的系统;,系统构件,架构基线,架构基本概念,架构设计目标,理解系统,架构使开发人员、管理人员,客户以及其他项目相关人员理解系统;,组织开发,通过明确划分的子系统,以及接口,降低协调开发的成本;,鼓励重用,设计良好可重用的子系统加速系统的构建进程;,进化系统,应对变化环境,构建弹性系统避免变化对系统产生非期望的效果;,架构基本概念,架构分类,业务架构,(Business Archit

3、ecture),技术架构,(Technical Architecture),企业架构,(Enterprise Architecture),架构分类,业务架构,业务架构是对需求的描述,以及业务模型的定义,其中包括领域模型,(Domain Object),业务流程模型,(Business Process Model),系统参与者,(Actor),。,架构分类,技术架构,技术架构是对系统使用的技术一个规范性的定义,它包含非功能性的可重用构件,系统结构的设计规范,开发规范,物理环境,测试环境,部署环境的定义,以及系统配置管理。,架构分类,企业架构,企业架构指的是在对一个企业的业务战略和流程理解基础之上

4、,进行信息化的顶层设计,对企业现有的业务架构和技术架构进行有效的整合,形成灵活健壮的,IT,结构,构建的和谐,IT,环境。,架构分类,宏观架构,(Macroscopical Architecture),业务架构,技术架构,应用系统,业务架构,技术架构,应用系统,业务架构,技术架构,应用系统,企业架构,架构概念,应用架构介绍,火龙果架构培养体系,应用架构案例,应用架构介绍,业务架构示例,Logistical,OperationalPlatform,Horizontal Solution,User Management,PermissionManagement,Sea Freight,Air Fr

5、ieght,Road Frieight,CRM,Horizontal Solution,User Management,PermissionManagement,Contact Management,Transaction Management,Customer Management,Connector,Horizontal Solution,DTS,Single Sign On,Horizontal Solution,PMI,Bridge,Bridge,Bridge,应用架构介绍,技术架构组成,Presentation,Business,Persistence,Core Architectu

6、re,Subscription,Data Analysis,BPM,Trace,Utilities,Toolkits,Schedule,Connector,Connector,Connector,Technical Architecture,Portal,PMI,Rule Engine,应用架构介绍,系统协同,Application A,Application B,Connector(Middle DB),Connector(Web Service),Application A,Application B,Application A,Application B,Connector(JCA),应

7、用架构介绍,设计原则,分而自治,(Boundary Of Responsibility),面向服务,(Service Oriented),协同规划,(Collaboration),应用架构介绍,分而自治,分而自治,(Boundary Of Responsibility),功能性与非功能性之分,通用与定制之分,应用架构介绍,面向服务,面向服务,(Service Oriented),面向接口,组件黑盒,规范的服务描述,应用架构介绍,协同规划,协同规划,(Collaboration),泛化连接器,松散耦合,简单部署,应用架构介绍,应用架构实现方法论,整体规划,Vertical Solution(Us

8、e Case,Domain Model,Business Sequence,etc),Horizontal Solution(Prototype,Components,Service Publication,Technical Decision),环境配置,Workspace,IDE,编码实现,Object Oriented,Design Pattern,Testing,应用架构介绍,应用架构实现方法论,(,续,),部署,Deployment Script,Application Service Environment,Testing,架构概念,应用架构介绍,火龙果架构培养体系,应用架构案例,

9、架构概念,应用架构介绍,火龙果架构培养体系,应用架构案例,应用架构案例,案例背景,本案例是一个实际的企业级应用系统,主要作用是为企业的其他信息系统提供相关的数据分析服务,包括报表,图表,和,Dashboard,。,系统目标,构建一个数据分析服务组件,能够支持数据分析资源扩展,提供标准的数据分析服务,被其他企业信息系统所使用,系统环境,支持分布式应用,支持多种协议,提供定时服务,提供订阅服务,运行高性能,提供管理控制台,设计约束,需要支持热部署,应用架构案例,架构设计路线图,应用架构案例,系统整体需求描述,提供统一的数据分析服务,提供定时服务,定时产生数据分析结果(月报,年报,周报),提供订阅服

10、务,输出数据分析结果,支持多交互协议,支持多数据分析资源的扩展,支持运行时的扩展性,热部署,应用架构案例,确定架构范围,设计问题,设计策略,优先级,子系统划分,确定系统边界和每个子系统的职责,高,系统层次划分,按照系统层次的从低到高,确定每个层次的组件,高,支持资源扩展,采用策略模式,泛化服务接口,高,支持多种交互协议,采用代理模式和,Fa,ade,模式,调用报表服务,高,处理各层次异常,采用责任链模式,分划异常的处理,高,支持运行时扩展,确定划分热部署边界,组件部署分离,高,特定数据分析资源实现,使用特定报表技术,适配服务接口,中,实现定时服务,使用定时服务组件,调用数据分析服务接口,中,实

11、现订阅服务,使用定制的订阅技术,并且开发接口给定时服务使用,中,管理控制台,使用,B/S,架构定制界面,设定各个服务组件的配置,低,针对需求,确定设计点,作为架构设计的范围,应用架构案例,子架构:分析、设计、实现与验证,集成系统总体架构,功能架构,子系统划分,对于任何系统而言,系统的架构都需要从对系统的分解入手。划分子系统的主要目的在于:,简化系统设计工作,提高并行开发效率,便于系统架构的扩展,功能架构,子系统划分分析,功能性划分,功能性组件,数据分析组件:提供数据分析基本服务,产生数据分析结果,(,图片,文件,),定时服务组件:提供定时机制,定时调用数据分析服务和订阅服务,订阅服务组件:提供

12、订阅服务基本服务,,(Mail,FTP),管理控制台:系统服务配置设定,(,定时服务,订阅服务,),非功能性划分,非功能性组件,部署管理组件:运行时装载数据分析的模版,计算组件,数据源;,数据访问组件:提供访问数据源服务,(,数据库,文件,),外部交互适配器:提供支持多种交互协议的连接适配器(,SOAP,RMI-IIOP),通用与定制之分,定制性组件,JasperReport,:提供基于,JasperReport,的数据分析服务,CrystalReport,:提供基于水晶报表的数据分析服务,功能架构,子系统划分设计,根据原则划分好的子系统,需要有明确的接口定义,来代表其子系统提供的功能,DAO

13、,Service,void insert(),void update(),void delete(),Object findByPk(),Schedule,Service,void executeSchedule(),Subscription,Service,void notifySubscriber(),J2EE Connector,Crystal Report,Service,JasperReport,Service,OLAP Service,Repporting,Service,byte loadReport(String reportId,Map context,int type),v

14、oid deploy(),Deploy,ment,Management,Service,功能架构,子系统划分实现与验证,在系统实施过程中,一般子系统会使用,不同的工作目录来实现。每个工作目录会需要,包含下列信息:,源程序,组件依赖配置,部署脚本,测试程序,逻辑架构,系统分层,系统分层的主要目的在于:,细化子系统,确定子系统组件之间的协作关系,提高子系统的可重用性,提高子系统的可测试性,提高子系统的可维护性,提高子系统的可扩展性,逻辑架构,系统分层分析,定义分层边界划分原则,本系统按照服务消费者和服务提供者关系来划分层次,定义消费者和服务提供者关系,数据分析服务消费者,Browser,,,Jav

15、a Client Application,C+Client,数据分析服务提供者,数据分析运算组件,数据源提供组件,协议适配器,数据分析资源,消费,服务,逻辑架构,系统分层设计,可扩展架构:支持资源扩展,数据分析资源包括各种数据分析实现技术。支持资源扩展的主要需求如下:,支持数据分析资源的可替换,支持数据分析资源的可升级,实现统一的数据分析服务接口,可扩展架构:支持资源扩展分析,通用性和定制性划分,特定数据分析资源需要定制,统一的数据分析接口代表通用行为,通用性和定制性结合,行为抽象,抽象特定数据分析资源的通用行为,实现独立,把特定数据分析资源的实现看成是行为抽象的一个特定实现,可扩展架构:支持

16、的资源扩展设计,J2EE Pattern:,策略模式,现流行方式是采用,Spring,的,ApplicationContext,或者反射模式。,构造策略实现对象,策略行为接口,策略实现,可扩展架构:支持的资源扩展实现,定义接口,public interface ReportingServiceIF,byte loadReport(String reportId,Map context,int binaryType);,定义,Spring,配置,通过制定,BeanName,来判断使用那个实现类,ReportingServiceIF service=(ReportingServiceIF)Appl

17、icationCtx.getBean(serviceName);,byte reportBinary=service.loadReport(reportId,context,binaryType);,外部接口架构:系统外部接口支持多种交互协议,系统的外部接口会被多种交互协议所调用,对于外部接口架构来说,主要需求如下:,支持系统外部接口调用协议扩展,重用数据分析服务组件,简化外部接口调用的实现,外部接口架构:系统外部接口支持多种交互协议分析,职责划分,协议适配器:适配器负责使用特定交互协议调用数据分析服务,重用数据分析组件:数据分析组件不涉及具体的协议交互,泛化连接器接口,抽象交互行为,定义统一

18、的交互接口,封装特定协议交互细节,屏蔽交互复杂性,外部接口架构:系统外部接口支持多种交互协议设计,J2EE Pattern:Fa,ade,模式,通过,coarse-grained,的接口,屏蔽了低层次的实现细节,这也是,fa,ade,模式的一种应用。,协议适配器,协议适配器,外部接口架构:系统外部接口支持多种交互协议设计,J2EE Pattern:,策略模式,,Delegate,Delegate,模式,,对于具体的调用实现类来说,它不负责具体的业务逻辑处理,,而只是负责代理特定的业务实现对象,并且封装对这个对象,的引用过程。常用的方式有,ServiceLoacator,,封装了,SOAP,,,

19、Remote Interface,Local Interface,的调用。,协议调用代理,外部接口架构:系统外部接口支持多种交互协议设计,外部接口架构:系统外部接口支持多种交互协议实现,EJB Adapter,public interface ReportingServiceEJBAdapter extends EJBObject,byte loadReport(String serviceClassName,String reportId,Map context,int binaryType)throws RemoteException;,EJB Delegate,public class

20、ReportingServiceEJBDelegate implements PCEReportingServiceDelegateIF,public byte loadReport(String serviceName,String reportId,Map context,int binaryType),byte binaryArray=null;,.,ReportingServiceEJBAdapterHome remoteHome,=(ReportingServiceEJBAdapterHome)ServiceLocator.getInstance().getRemoteHome(Re

21、portingServiceEJBAdapter,ReportingServiceEJBAdapterHome.class);,ReportingServiceEJBAdapter remote=remoteHome.create();,binaryArray=remote.loadReport(serviceName,reportId,context,binaryType);,return binaryArray;,可靠性架构:异常处理机制,异常处理是系统可靠性的表现,异常分为三种:,无法恢复异常,记录异常日志,可恢复异常,通知使用者通过特定操作修复异常,容错异常,系统根据发生的异常类型决定

22、通过特定逻辑修复异常,可靠性架构:异常处理机制分析,架构统一,使用稳定的架构控制异常,包括捕获,日志,跳转,异常处理职责划分,判断异常处理范围,处理不了,就抛出,异常包装,低层次异常需要被高层次异常包装,(1*N),可靠性架构:异常处理机制设计,可靠性架构:异常处理机制设计,可靠性架构:异常处理机制实现,对于不可恢复异常而言,典型的实现方式如下,:,try,callService();,catch(RuntimeException ex)/,低层次的,Exception,tracer.logError(ex);,throw new NewRuntimeException(e);/,高层次的,E

23、xception,不可恢复异常向上层抛出,,它面对的不是许许多多低层次的,Exception,,而是它的直接下层组件的,Exception,。,对于可恢复的异常而言,典型的实现方式就是直接在,catch,中,进行新的逻辑处理,而不是继续向上层抛出。,可维护性架构:运行时的扩展性,运行时可扩展性要求服务能及时更新,其中包括:,更新数据分析逻辑计算组件服务,更新数据分析模版,更新数据源装载组件服务,更新数据分析结构,这也是常说的热部署!,可维护性架构:运行时的扩展性分析,资源的热部署,相关配置文件更新,业务组件的热部署,可维护性架构:运行时的扩展性设计,可维护性架构:运行时的扩展性实现与验证,构建

24、资源管理文件系统,构造自定义,ClassLoader,扫描资源管理文件系统,栽入,ClassPath,更新服务,替换自定义,ClassLoader,应用架构案例,子架构:分析、设计、实现与验证,集成系统总体架构,架构集成,为什么要进行架构集成,把系统的不同问题的设计进行有效的结合,系统的整体架构不是简单的堆砌,需要各个部分的协调,架构集成的时机,在每个子架构设计过程中,不断地集成,集成的策略,持续的集成,集成会引起对架构的重新认识,架构需要不断地在集成中重构,总体架构集成,逻辑架构集成,J2EE Service,Administrative Service,Vertical Solution,

25、Facility,Core Service,Basic Infrastructure,Repporting,Service,Resource,Management,Service,Deploy,ment,Management,Service,Administrator,Management,Service,DAO,Service,J2EE Connector,OLAP Service,JasperReport,Service,Crystal Report,Service,Subscription,Service,Schedule,Service,总体架构集成,逻辑架构集成,总体架构集成,物理架

26、构集成,总体架构集成,架构集成策略,面向接口,本系统子系统之间都通过接口进行交互;,接口的实现组件都允许被替换;,Mocker,对于未完成的子系统,可以通过建立,Mocker,来模拟这个子系统,Cruise Control+Ant+Maven,Cruise Control,是持续集成的强力工具,通过定制好的,Ant,或者,Maven,脚本,,Cruise Control,可以持续调用这两种脚本完成实际情况的部署,以便尽早发现架构集成的问题。,总体架构集成,架构集成测试与验证,集成测试,功能性测试,黑盒测试,边界测试,非功能性测试,性能测试,可操作性测试,架构验证,耦合性验证,性能验证,扩展性验证,谢谢!,-,关心您的软件工程实践,-,Thank you,for your attendance!,

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服