可以将参考架构的内容,粗分为两大部分:
对服务建立一套共同的词汇和做法,包括:
服务的正式定义 - 例如服务必须由契约 (contract)、接口 (interface),和实现 (implementation) 所组成服务的分类(核心业务功能服务,数据服务,展现服务等),以及各类服务的设计原则和建议接口标准 (JMS, RMI, HTTP 等),建议的接口样式(例如:尽量采用粗粒度、异步的服务调用模式),可靠性要求等。
需要遵从的 WS-* 标准
安全策略
服务版本控制策略
服务和数据模型采用规范
服务生命周期定义
与服务基础设施,例如企业服务总线 (ESB)、业务流程管理 (BPM)、注册库 (Registry)、资产库 (Repository) 等相关的规范,包括:
必须支持什么样的部署配置
必须具备什么样的能力
各个部件的责任
部件之间的耦合关系和原则,应避免的事项,例如,展现服务和业务流程服务不可直接调用数据服务,而必须通过核心业务服务;换句话说,数据服务不可直接与展现服务和业务流程服务有耦合关系。
各个部件应支持那些科技和标准(例如:SCA, SDO…)。
有哪些安全顾虑需要考虑,如何管理权限。
要采用哪些产品
由于在规划服务基础设施参考架构时,需要涵盖几类 SOA 参与者和干系人 (stakeholders) 各自不同的顾虑,包括架构师、程序员、和负责部署、运营、监控的 IT 人员,我们可以采用一个针对服务基础设施参考架构调整过的 4+1 视图(如下),来协助我们分离顾虑,来将不同层面的规范和目标架构一一制定,通过逻辑、实现、部署,和进程等四个视图,配合最佳实践典范和模式,来对参考 架构的各个层面,进行描述和规范,如附图。
参考架构的规划过程(如下图),应先起于业务驱动力 (business drivers) 分析,可有助确保目标架构能够支持业务的发展策略和方向,展现 SOA 建设对业务的价值,彰显 SOA 投资的正当性,并获得相关业务部门的经费赞助。以金融行业为例,业务驱动力包括像是:
提升效率
借贷流程优化
呼叫中心优化
增长销售额,并显著超越同业。
快速灵活地推出创新的金融商品。
扩展客户关系,统合客户数据。
交叉销售
依据关系定价的策略
降低成本
这一类的价值驱动。分析业务的价值驱动后,接着考虑各种 IT 目标,以及它们如何支持这些业务驱动力;例如:
从关注各业务线烟囱/竖井式的应用系统,转向专注于跨系统/业务线的流程/服务。
IT 资产重用
提高跨部门协作的业务流程的透明度
并且应订立评价标准,作为日后考核实现各价值驱动力的指标。接着下来,我们可以根据业务和 IT 驱动力,进一步制定恰当的 SOA 策略,考虑采用 SOA,将对那些业务线,在那些驱动力方面,产生最大的价值,据以订立实施 SOA 项目的优先级别。
√√ 代表 SOA 项目能产生很大的正向影响,依此类推。
针对各价值驱动力,我们可以参考附图中的矩阵分析方式,从价值链或业务线中的各个主要的职能(纵向),和各个识别出来的业务和 IT 驱动力(横向),对 SOA 所可能产生的正面影响力,一一进行评估,进而挑选出面向服务解决方案最能嘉惠的业务能力,作为首期实施 SOA 项目的切入点。图中的范例只是一个三万尺高空的起点,在真实的情况下,往往会针对范例中某个或某几个得分较高的业务线,往下展开细化,对该业务线中的各个 主要业务能力,进一步进行 SOA 价值驱动力分析;换句话说,价值链分析中的各个职能域,应该自粗到细,逐步钻取、drill down 到适当的深度,才能更精准地确定 SOA 能对哪些要迫切改善的业务能力,带来最大价值。
依据业务和 IT 驱动力,选定了 SOA 策略后。接着应根据企业目前的现况,和未来 2-3 年的目标,进行差距分析,并根据最佳实践典范 (best practices),制定 SOA 发展的蓝图、路线图和指导规范,完成参考架构的规划。接着便可开始根据路线图中制定的项目,以渐进的方式,通过一致的服务工程方法,一个接一个项目去执 行,并在此过程中,逐渐将蓝图中的服务基础设施搭建起来。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |