完善SOA项目实施的过程与关键点

日期: 2009-11-04 作者:CIOAGE 来源:TechTarget中国 英文

  SOA概念已经为大多数用户和企业所熟知,同时也有众多企业开始实践SOA,在项目实施过程中不断完善SOA的技术和实施方法。长风联盟内的用户、软件企业和科研院所,在SOA技术研究、产品研发和项目实施过程中,形成若干SOA工作组,共同研究、交流SOA相关技术和规范标准,同时也形成了一些实际的SOA支撑产品和项目实施经验。

  本文以联盟SOA参考架构工作组(SOA-RA-TF,由东方通、计算所、华迪、同方、有生博大、神州数码等组成)在SOA技术标准研究、SOA参考架构规范制定、SOA技术支撑产品研发,以及研究成果在实际的SOA项目中的应用经验为基础,对SOA项目实施过程需要注意的关键问题做一些总结和介绍,力图通过本文能够与各方面的SOA实践者,为SOA的应用和推广,相互交流经验,共同发展。

  SOA项目实施的过程和特点

  SOA项目如同其他IT项目一样,也有类似的实施过程。

  SOA项目实施过程

  从表面的几个过程看SOA项目的实施没有什么特别的地方,能够体现SOA特点的是在项目实施过程中的每一个具体环节中,如规划阶段对标准的考虑,分析阶段对业务的详细描述和定义,设计阶段技术架构(包括逻辑架构和物理架构)的定义,实现阶段更多依赖于定义而不是编码,以及运维阶段对服务运行情况的重点关注。

  下面介绍实施过程中的主要关键点。

  规划阶段

  在这一阶段有许多重要的事情需要做,这将决定SOA项目实施的成败。

  首先是需要确定目标,对于系统的功能目标应该是明确的,除此之外我们需要重点关注的是为什么要采用SOA思想,是为了达到什么目的。在这时我们需要了解SOA能够给我们带来什么,我们希望得到什么,这两者是否匹配;也需要了解SOA适合什么,不适合什么,我们建设项目与SOA适合是否适配。如果这些匹配一致我们就可以放心进行下一步骤了,否则就得考虑是否一定要采用SOA,是否采用其他的思想和技术架构也足以解决问题。

  在此我们再看一下SOA特点:

  强调业务服务的复用

  支持业务灵活重构

  强调松耦合

  强调标准的采用

  我们也需要了解SOA不适合的地方:

  开发简单单个应用时,不要使用SOA

  构建高吞吐量应用或实时应用是,不要使用SOA

  如果网络速度慢,网络不可靠时,不要使用SOA

  当服务接口不确定时(即业务服务功能本身不稳定时),不要使用SOA

  当安全性极为重要时,暂时不要考虑SOA

  业务处理有严格的事务完整性要求时,建议暂时不用SOA

  其次需要考虑系统的规模,建议第一个SOA项目不要选择太大,需要限定项目的大小,保证在不长的时间内可以顺利实施完毕,确保项目的成功。通过项目经验的积累,为后续SOA项目开创一个良好的局面和环境。SOA本身特点支持项目的递进式实现,可以采用不断滚动改进的方式实施项目。

  接着是考虑标准问题,这里的标准包含两方面:业务标准和技术标准。标准的确定是过程中一直需要考虑的问题,在分析和设计阶段都需要对标准加以考虑,并最终确定项目需要采用和制定的标准。

  业务标准可以规范服务、流程和数据;技术标准可以帮助确定技术架构,确定采用的技术,可以确保服务/组件的复用、组装和运行维护。

  最后是组建团队,要实施好SOA项目,需要确保合理的团队成员。首先领导的参与是项目成功的保证,SOA项目一般会涉及多个部门,或企业之间的协作,没有领导的参与和重视,这类项目成功的可能性会非常的低。

  业务人员参与也是一个重要因素,SOA中强调的服务是业务的服务,而不是技术实现的服务。业务服务的定义、分类,业务流程的确定,业务数据的分析等,如果没有业务人员参与,这些工作基本上是无法开展的。在现阶段让业务人员直接参与设计和实现还不是特别的现实,但随着SOA技术和产品的成熟,业务人员一直参与到设计,甚至实现阶段也是可能的,只有这样才能更好保证SOA项目实施的成功,才能更好体现SOA的价值。

  分析阶段

  分析阶段主要进行业务的分析和梳理,包括:业务服务定义,业务流程定义、业务数据分析和组织架构。在这一阶段需要确定SOA项目中需要实现哪些业务,业务如何复用,业务如何串接在一起完成一个工作流程,在执行业务和业务流程过程中需要使用哪些数据,以及这些数据的关系。

  业务定义时需要考虑下列因素

  谁拥有业务服务

  谁需要使用业务服务,如何进行授权管理

  业务的基本标识信息

  业务服务的功能描述

  业务服务的使用约束条件

  业务服务使用到的数据信息

  业务服务的质量特性,如可靠性、安全性和事务性等

  业务服务的服务等级信息,如服务响应时间,可提供服务时间,是否收费等

  业务服务的生命周期

  业务服务运行时需要关注的信息

  组织架构分析时需要考虑下列因素

  实际的组织架构

  组织架构中有哪些角色

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐