欢迎来到天天文库
浏览记录
ID:9870865
大小:549.50 KB
页数:37页
时间:2018-05-13
《基于soa架构的设计规范》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、数字校园系统基于SOA架构的设计规范Preparedfor:北京航空航天大学第37页共37页目录第37页共37页1简介1.1目的本文的目的是对”北航数字校园项目”各应用系统设计的目标、范围和要求进行说明,帮助开发商明确所需进行的工作和对工作成果的要求,并作为对开发商工作成果进行评价的依据。1.2预期读者Ø架构设计师、系统设计人员北航的架构设计师、维护设计人员根据学校的业务要求和技术状况制定此设计规范。Ø开发商“北航数字校园项目”的系统开发商根据本文档描述的标准规范要求,进行相关系统的设计和开发。1.3适用范围本文档描述的内容适用于“北航数字校园项目”中
2、应用系统的设计和开发。1.4规范要求及约束n各参与的软件供应商,都应明确本规范的约束,并据此指导进行分系统工程的统一设计和开发,完成本规范中规定的相关内容。n分系统工程中最终要提交的服务组件都必须经过严格的集成测试、审核和验收,然后提交。n如对本规范有任何技术上的建议和分系统工程个性化的需要,请将建议和需要以文字的形式提交,经过讨论、评审后修订、变更本规范,协调各分系统第37页共37页工程的开发,任何开发商不得单独修改本规范内容,并加以实施。1架构设计的目标“北航数字校园项目”,按照统一化建设的要求进行总体设计,实现一个架构一致、管理统一、维护统一的“
3、一体化的信息系统”。为了实现这一目标,应当采取面向服务的构件化策略。也就是说,对应用系统进行总体规划,对业务需求进行全面统一的分析,对数据和功能进行统一的分层规划,将整个系统划分为不同层次的构件,构件的内部包含自用的数据和功能,构件之间通过标准的接口进行交互。按照这种策略,应用系统可以实现最小化,可以按照需求组合各个构件,充分共享统一的可重用服务组件。数据和功能的冗余达到最低,应用系统的维护和实施的工作量最小,满足”北航数字校园项目”“总体设计、分步实施”的基本建设路线。这种策略的关键在于总体框架的设计要充分和科学合理,特别是可重用服务组件的设计,必须
4、保证:无论需求如何变化,应用核心不会变化,仅是外围组件的功能和组合方式在发生变化。2可重用服务组件的技术规范创建可重用服务组件的原则为:u按照项目组总体设计要求的分系统工程承担开发并提供其他分系统工程应用的组件必须创建为服务组件。u各分系统工程开发商,在系统内部,应本着提高可重用性的设计原则,尽量创建可重用服务组件,并按服务要求进行说明和发布。第37页共37页1.1对服务组件的要求·开发成服务组件的应用系统访问接口,根据系统访问的频度、数据量的大小可以封装成webservice、EJB、JMS等的接口,这种类型的接口才能够注册到服务平台上,并提供给其它
5、的应用系统使用;·服务集成平台能依据系统自己的配置信息将服务组件产生的异常或者错误信息格式化成标准的XML格式消息,并且将该XML消息发送给等待同步响应的服务组件使用者;·对于服务组件使用过程中应用系统需要传输的大数据块可以采用SOAPwithattachments消息类型进行传递,因此服务组件的提供者和服务组件的使用者都应该考虑到需要实现大数据块转换成SOAP协议的attachments和从attachments还原回大数据块的功能;1.2可重用服务组件的规范n分系统工程在开发过程中,只能将提供数据层面复用的组件开发成可复用的服务组件,对于非数据层面
6、性质的组件(如:界面展示组件)不应开发成服务组件进行复用;n开发成服务组件进行复用的组件必须进行webservice、EJB等方式的封装,才能注册和发布到服务平台上;n分系统工程的每个功能模块可能由一个或多个业务单元组成,这些业务单元通过一定的业务流程组成该功能模块,在开发过程中分系统工程开发者应尽可能的分离出每个功能模块中存在复用情况的业务单元,并将其开发成服务组件注册到服务平台中,以便其它分系统工程进行复用;n分系统工程只能将服务组件注册到服务平台上中,且只能允许服务平台调用,分系统工程应该提供服务组件的安全控制,提供用户名/口令的安全审核方式,并
7、在注册组件是提供给服务平台;n第37页共37页分系统工程在开发过程中,如需要使用其它分系统工程提供的服务组件时应调用服务平台上注册的服务组件,不允许通过其它的途径直接或间接的调用其它分系统工程对外公开的服务组件,且作为服务组件的使用者在调用服务组件时应该提供调用的用户名和密码;n分系统工程对外提供的每个服务组件应该有自己的事务控制机制,即每个服务组件作为一个完整的事务单元对外提供服务,由于服务组件使用者传入参数原因或者组件内部原因导致的服务组件抛出异常、终止退出的,服务组件自身应该能回滚事务,保证数据的完整性;n作为服务组件的提供者应将服务组件中需要抛
8、出的异常抛出到服务平台,由服务平台根据配置信息将异常信息格式化后发送给服务组件的使用者;1.1
此文档下载收益归作者所有