创建一个有效的SOA服务分类(二)

日期: 2008-11-12 来源:TechTarget中国 英文

  企业服务

  包含在服务中的这一服务类型也被视为SOA的核心服务。企业服务是实施商务服务的具体服务。企业服务和商务服务之间的关系不是一对一或多对一的关系(许多企业服务执行一个单一的商务服务)。由于企业服务的范围跨越应用领域,他们通常是被企业的IT架构师或共享服务团队所识别和定义。它们是具体的服务,这意味著他们通过某种形式的基本技术或供应商的产品来实施。如同商务服务,这些服务通常是有偏向的并代表依靠主要数据实体的行为。

  由于企业服务和商务服务之间的关系通常是一种多对一的关系,企业服务通常需要某种形式的服务编排,它可以通过累计服务,或通过中间件技术(如企业服务总线或工作流引擎)。例如,一些企业服务将需要精心策划实施CreateQuote商务服务,包括createCustomer、checkMotorVehicleReport、calulateQuote和saveQuote。

  普遍的误解是,企业服务必须在整个企业中共享。虽然企业服务普遍被共享,这当然不是一个要求。然而,企业服务应该是有偏向的,并在有需要的时候有能力在整个企业中共享。

  企业服务的范围内包括商务服务的范畴,因此,实施某种商业逻辑的形式。例如,审计服务,但需要遵守法规,而且将不会被认为是企业服务。相反,这种类型的服务将归入基础设施服务(见下文),因为他并不直接提供服务的具体业务功能。

  商务服务中指定的数据(和格式)与企业服务预期的数据(和格式)之间存在潜在阻抗不匹配,他们的实施通常是通过信息处理和信息转化,这通常是通过设置在一个中间件或企业服务总线中的XSLT来转换。

  应用服务

  虽然应用服务被认为是一个基本的服务类型,但这一服务类型并不包含在SOA核心服务的范围内;相反,他们被称为配套服务。这些具体的服务随着具体应用通常很细致和具有相关性。换句话说,他们申请(或简仓)范围,因此通常不在企业中共享。应用服务通常被应用程序开发商确定和界定,并定义了他们的具体适用范围。

  应用服务通常是用来执行细致的特定应用功能,如审定,数据收集和数据传输。例如,当创建一个自动报价的应用开发人员可以创建如addDriver,addAddress和addVehicle这样的服务。这些服务是用来积累被商务服务界定的商务服务输入和输出规范所需要的数据。

  基础设施服务

  这种服务类型被定义为用来支持企业。例子包括:基础设施服务等方面的记录、审计、数据存取和安全。这些具体的服务一般是共享的企业和使用企业服务(和一些应用服务)。

  企业服务与基础设施服务的区别是基础设施服务非商业功能。如果考虑到监管要求,例如审计和遵守时,基础设施服务和企业服务之间就会出现灰色地区。虽然有些形式的审计和遵守被指定为业务需求,这些服务并没有具体处理一个特定的用户或业务功能,而是支持业务需求。

  基础设施服务通常是由软件开发商或基础设施的支持团队来确定和实施。他们一般有企业级的范围,这是他们通常混淆企业服务的原因之一。

  服务分类指导方针

  你可以在水平或者垂直方向上延长4个基本类型以满足你的特殊需求。然而,在考虑扩大基本层次,读者可能需要考虑下列服务分类指导原则:

  第一,如上文所述启动你的服务分类的思想基本服务类。如果你认为需要同等水平额外的服务类型,确保它不与其他方面的服务类型重叠。如果你认为你需要一个基于基本水平额外的细分服务类型,那么请继续往下看。

  避免创建特定域服务类型常见的陷阱。举例来说,如果在保险领域,就需要避免造成如索赔服务,政策服务这样的服务类型。这些都不是服务类型,而是通过代表各类服务的实际的网络服务名称。换句话说,有许多不同的服务类型,构成了索赔服务(例如,商务服务和企业服务)。不要混淆实际的服务名称(例如,策略服务)和服务类型(例如,商务服务)。

  让你的分类等级尽量简单,避免意外的复杂性;记住服务分类的目标之一是便于沟通各利益相关方面和包括SOA初始分组。复杂的层次服务类型会造成混乱,妨碍你了解你正在使用的服务类型。复杂的层次必然导致更多的辩论和冗长的会议,广泛的层次结构应该扩大,而且还增加了你分类等级服务类型重叠的机会。

  考虑在不同服务分类的业务类型中建立一个简单的背景图关系,尤其是如果你的等级分类延伸了四个基本的服务类型。这可以大大有助于服务类型融入大局的理解。

  创建一个商定的模板记录的定义和属性的服务分类。在一般树图加上背景图和一个简单的文件范本,对于有效文件和服务分类的沟通是有必要的。尽量不要使用过度复杂的工具或基于UML来描述等级。如果你需要这样的工具,将会增加你的服务类型的复杂性,应予以简化。

  不要等到SOA初始化顺利进行,然后才开始建立一个服务分类;应该在SOA初始化时尽快的开始使用基本的SOA服务类型来建立一个服务分类,在项目启动阶段这是有必要的。

  如果你最终有点像“鸭喙鸭嘴兽”时创造的服务分类,停止和重新审视你如何确定你的服务类型。毕竟,你只是划分服务类型。总之,尽量的保持简单。

  总结

  在你的SOA初始化早期,一个有效的服务分类可以大大提高你的成功机会。开始简单,使用四项基本服务类型,并只在必要时延长等级分类。

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

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

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

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐