写点什么

使用 ITIL V3 作为 SOA 治理的基石

  • 2010-03-31
  • 本文字数:3091 字

    阅读完需:约 10 分钟

2008 和 2009 年间从面向服务架构 (SOA) 的角度建立的重要的一点是,SOA 的成功与否可以通过制定可靠的治理策略进行预测。尽管 SOA 的成功不通 过实现治理策略也可以达成,但其可能性却可能因为潜在的错失了主要目标(开发一种单一的方案来交付服务)而有所折扣。因此,IT 服务管理论坛的 IT 基础设 施库 (ITIL) 为 IT 服务管理定义了一系列的最佳实践框架指导,它是 IT 治理的一个框架,而它的第三个版本,尽管是专为 IT 而开发的,却可以用作 SOA 治理的一般性策略。

那些仅仅熟知 ITIL V2 的人通常会嘲笑将 ITIL 用作 SOA 治理框架的这种思想。从他们这种角度出发,他们可能是对的,因为 V2 更多的关注在运作流程上而不是服务生命周期。 在 ITIL V3 中,该框架的重心已经转移,而这种转移只能用面向服务来真正描述。5 本 ITIL V3 的核心书籍被恰如其分的命名为:服务策略、服务设计、服务转换、服务运营以及持续服务改进;证明了 ITIL 对于面向服务生命周期的理解。

治理在 SOA 中的角色

因为对于 SOA 并没有一个单一的,明确的资源,所以 SOA 这个术语被多方征用来代表他们的利益或安排,就像其它有计划而明确订立的标准一样的问题。然而, 这一主题有足够多的文献可以进行分析,并且从数据上可以得出 SOA 的两个站得住脚的立场:业务与 IT 对齐以及软件系统的开发。 在这两种情况中,松耦合,巩固以及共享等等相同的目标都是显而易见的。因为这些方面都是值得去做的,而且应用它们也的确能提升服务交付和整体的灵活性,因 此治理为确保所有的工作都能以这样的方式交付提供了必需的流程、政策、角色和工具。

治理不会魔幻地带来成功;它只是对于那些最容易造成瓶颈或阻碍 SOA 项目的问题提供了一个框架性的答案。治理提供了一种责任,并且针对与构建和交付服务相 关的决定提供了指导。举例来说,可以赋予治理流程一定的权力来决定业务是否需要投资某一类型的服务,以及这种服务是否符合合理的需求或机会。不仅如此,治 理流程还可以包括业务各个方面的个人,对于开发特定类型的正反两面都能提供更宽阔的视野。

有趣的是,说到提供服务这方面,许多业务都十分复杂因此该服务需要跨部门的参与。举例来说,保险公司对于检查他们是否会提供一项新的保险业务投入力度很 大。他们的决定从检查这个市场开始,分析客户以及之前的清算场景和潜在利润。这一研究的成果又会交给一个多方合作的小组,并对这一新服务从客户服务、会 计、财务管理和技术等角度提供反馈。最后,这个小组将会对有权力的运营执行官提供建议,由他们作出最终决定。

然而,被认为是部门内部的决定通常是由有限范围内的少数人决定的,通常是部门执行官,就算这样的决定将会影响其它部门的成果或能力也是一样。这就是说,如 果一个部门拥有整个服务供应,比如说 IT 部门,那么要扩展到其它的部门来对于将这一特定的服务提供给业务客户是否能为业务带来价值而作出决定就不太可能 了。当这发生在 SOA 中时,你最终得到的是狭隘的面向服务,很有可能不能满足业务的预期。

ITIL V3 对 SOA 的支持

首先,ITIL 关注于将 IT 作为服务交付,这抓住了 SOA 的经常缺失(或者被误解,被忽略)的真正本质之一。那就是,相对于那些将 SOA 看作是交付软件系 统的一种方法的人而言,ITIL 关注的是服务本身。在 ITIL 中,服务包括了软件、基础设施、帮助台和资产管理等等。因此,这可能是一个治理框架的最佳表 现形式,因为它纯粹是从以服务为中心的角度去关注服务,而不是从技术的角度。

ITIL V3 的核心是服务策略的概念,其重点是价值的创造。许多 SOA 的文献都推崇中间会合的 SOA 开发方法,以此不得罪任何一方特定的受众。中间会合的方法在设 计服务时,既关注自底向上,也关注自顶向下。然而,这样的自底向上是远远不够的,并且缺乏对业务质量的理解,因此如果包含这样的知识来开发实际上是对创建 新服务的一种损害。ITIL 对于价值创造的关注意味着服务交付的第一步,要从一个策略观点出发,而不限制于过去提供这一服务的尝试而产生的结果。

ITIL V3 同时还关注服务设计,它使用服务设计包的概念来封装所有的需求,处理依赖与延伸、架构、流程、衡量与矩阵。这一概念是思考如何组织一个 SOA 项目中产 出的所有工件的一种良好方式。 包含在服务设计中的是服务组合管理和服务目录管理的概念,这与 SOA 服务注册,服务目录,以及变更与授权的管理是一致的。

最后,服务转换,服务运营和服务提升,关注于将服务交付到市场的流程,保证它的运营性能并对服务进行持续的调整优化。那些通过技术的滤镜来看 SOA 的人们 会错失这些实践所带来的差别,因为这是在软件工程努力范围之外的。一个服务在部署后可以正确的得以管理的唯一方式就是支持与服务消费者的沟通和监控服务的 使用。再次强调的是,SOA 是一个战略计划并需要许多业务人员的努力,它不应当一蹴而就。这一观点在下面的大 SOA 和小 SOA 一节中将得到更多说明。

此外,开发者通常假设测试与度量能够得以完成,而且服务本身不需要包括对这些活动的支持。这些短视之处正是着重于以 SOA 构建软件服务的人们需要运用 ITIL V3 框架的原因,由它来保证服务开发不会因为软件工程的偏见而招致不好的后果。

ITIL V3 不关注如何构建服务,虽然它本身也很重要。关于交付 IT 服务方面,有后续的更细节的标准可以遵循,比如 TOGAF,ISO/IEC 20000,CMMI,COTIT 以及 Six Sigma。然而,V3 可以指导服务本身的生命周期,这正是我们对 SOA 的期望,一个统一的达成一致的框架,来定义和指导整个服务的生命周期,从摇篮到坟墓。

大 SOA,小 SOA 以及 SOA 治理

一个关于 SOA 治理的讨论如果不涉及关于大 SOA 和小 SOA 的争论的话就是不完全的。有一些人认为 SOA 可以通过一种战术的,IT 为中心的方式来实现,即 “小 SOA”这个术语的意义,而企业级的 SOA 就被称作“大 SOA”。我相信将 ITIL V3 应用于 SOA 治理问题上将会一劳永逸的解决这个争端——只有一种 SOA。就算一个组织决定实现以 IT 为中心的 SOA,ITIL V3 也证明了将 IT 作为一种服务交付仍然需要极大的努力和纪律来保证服务的消费者获得合理的服务,并且保证服务满足他们的需求。就算是比整个企业要小的一 个规模,它仍然要求业务实现遵循整个实践模型以确保成功。

任何小规模的 SOA 都把重点放在应用开发上,并换了一种说法用 SOA 来表示组件软件架构。最终,这将不是 SOA,因为它并没有关注服务的生命周期,而是关 注在定义软件组件间接口和支持模块化的方法。模块化与 SOA 不是同义的,而其结果与 ITIL V3 治理驱动下的 SOA 也是截然不同的。

总结

对于 SOA 治理解决方案的关注和投资一直都很火爆。在许多这样的情况中,业务都想要找到对于它们自身的 SOA 而言的最好的治理方法——其中一些疑惑仍然来 自于对 SOA 本身的疑惑。ITIL V3 提供了一个综合的方案来治理一个服务的创建、设计、开发、部署、运营、变更管理以及最后的终止。

关于作者

JP Morgenthal 是 QinetiQ North America 的 Misson System Group 的资深架构主任,为联邦民用事务提供 SOA 架构指导,同时也是一名独立的分析师。在加入 QinetiQ NA 以前,JP 创立了 Avorcor,开发基于 SOA 的零售 / 制造业 PaaS,这成为了三个获奖的业界解决方案的根基。他同时也经常写关于企业架 构,SOA,云计算等主题方面的博客和文章。Morgenthal 也是"企业信息集成:一种实用的方式"一书的作者,该书介绍了使用 SOA 和语义来简化集 成的方法论。

查看英文原文 Using ITIL V3 as a Foundation for SOA Governance


给 InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家加入到 InfoQ 中文站用户讨论组中与我们的编辑和其他读者朋友交流。

2010-03-31 09:322915
用户头像

发布了 133 篇内容, 共 39.2 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

关于 Git 重写历史的一些笔记

山河已无恙

12月月更

Ansible最佳实践之Playbook高级循环任务如何操作

山河已无恙

12月月更

OpenMLDB 社区月报 | 2022年10月

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

OpenMLDB 实时引擎性能测试报告

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

Ansible最佳实践之 AWX 启用facts缓存和模板问卷调查

山河已无恙

12月月更

教育部公布2022年第一批产学合作协同育人项目,千锋教育57个项目成功立项

千锋IT教育

创业者说丨云起无垠沈凯文:构建新一代开发安全基础设施 让Fuzzing技术为企业赋能

云起无垠

安全开发 开发安全 Fuzzing技术防护

华为云数据库GaussDB(for Influx)揭秘:数据分级存储

路过的憨憨

Ansible之Ansible Tower使用User和Team管理访问权限的笔记

山河已无恙

12月月更

数字化改变了什么?WeLink在实践中给出答案

路过的憨憨

让对外合作更高效,就用WeLink跨企业沟通

路过的憨憨

react源码中的协调与调度

flyzz177

React

演讲实录 | OpenMLDB 整合自动特征工程

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

专访 | 徐鹏程:开源,就是酷

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

镕铭微电子加入龙蜥社区,推动开源 OS 在音视频产业的应用

OpenAnolis小助手

操作系统 芯片 数据存储 龙蜥社区 镕铭微电子

OpenMLDB Meetup No.7 回顾 | OpenMLDB+AutoX:整合自动特征工程,拥抱高效机器学习

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

【Meetup 预告】OpenMLDB + MaxCompute:集成打通云上生态,高效构建 AI 应用

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

HIFIVE音加加 × 火山引擎:正版曲库+智能视频创作SDK,短视频全链路需求一站式解决!

曲多多(嗨翻屋)版权音乐

短视频 火山引擎 HIFIVE音加加 视频配乐 版权音乐

裸辞不慌!入职蚂蚁金服P6,掌握并发编程我是这样吊打面试官的

钟奕礼

Java java面试 java编程 程序员‘

教你用JavaScript实现乘法游戏

小院里的霍大侠

JavaScript 前端开发 编程实战 实战案例 初学者

专访 | 罗成:开源并非“只可远观”

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

ChaosBlade Java 场景性能优化,那些你不知道的事

阿里巴巴中间件

阿里云 云原生 ChaosBlade

初识华为云数据库GaussDB(for Cassandra

路过的憨憨

预告|2022 星策 Summit MLOps 分论坛议程公布!

星策开源社区

人工智能 机器学习 开源 AI MLOps

react源码分析:babel如何解析jsx

flyzz177

React

新变化新营销 这些知识点你得Get!(文末有PPT福利首次放送)

字节跳动数据平台

大数据 营销 12 月 PK 榜

黄东旭:开发者的“技术无感化”时代,从 Serverless HTAP 数据库开始 | PingCAP DevCon 2022

PingCAP

TiDB

Ansible最佳实践之 AWX 作业创建和启动

山河已无恙

12月月更

react源码中的生命周期和事件系统

flyzz177

React

互联网医疗领域月度观察——数字乡村建设加快,“互联网+医疗健康”带动乡村高质量发展

易观分析

数字化 互联网医疗

OpenMLDB v0.6 新版本运维功能增强

第四范式开发者社区

人工智能 机器学习 数据库 开源 特征

使用ITIL V3作为SOA治理的基石_SOA_JP Morgenthal_InfoQ精选文章