TOGAF架构开发方法(ADM)之架构变更管理阶段
TOGAF架构开发方法(ADM)之架构变更管理阶段
1.10 架构变更管理(Architecture Change Management)
企业架构开发方法各阶段——架构变更管理
1.10.1 目标
本阶段的目标是:
- 确保基线架构持续符合当前实际。
- 评估架构性能,并对变更提出建议。
- 评估在之前阶段制定的框架和原则的变化。
- 为实施治理阶段建立的新的企业架构基线建立架构变更管理流程。
- 将架构和运营的业务价值最大化。
- 运用治理框架。
1.10.2 方法
架构变更管里流程的目标是保证架构能够达成其目标业务价值,并且这一过程还着眼于将原本静态的企业架构建设成为一个动态的架构,使其具有足够的灵活性来对技术和业务环境的改变来进行快速地适应性演进。为了达成这些目标,架构变更管理过程往往针对治理请求、技术上的进步以及业务环境的变化进行持续的监督,同时当这些变更被识别出来后,这一过程还需要对是否启动一个新的架构演进循环而做出决定。由此可见,这一阶段的中心思想就是监督并明确企业所处环境的变更,并据此做出适当的架构变更决策。在变更的监督和明确过程中我们需要注意如下几个方面:
- 监督业务的消长是这一阶段的一个重要方面。针对企业架构的使用也是架构开发循环中的最重要的一环。在企业中,当前架构支持下的业务虽然能够满足当前的需要,但是对于未来的情况却不一定适用。并且在多数情况下,架构即便能够跟得上变化并始终保持适用,但各种用于对其进行实现的解决方案却不一定可以,因而针对他们的变更也是必要的。企业架构师需要了解这些变更需求,并把他们当作架构持续更新的一个重要组成部分来进行考虑。
- 容量评测和针对规划的建议是这一阶段的另外一个重要方面。虽然企业架构提供了一个稳定的业务架构,且此业务架构在企业架构生命周期中所提供的能力也是大家所共识的,但是对其使用的增加或减少还是需要被持续监督下去,从而保证最大业务价值的获取。例如,在企业当前状态下,当前的架构和解决方案能够满足需要,但是如果企业规模扩大一个量级后,其他的解决方案却可能更加经济有效。
需要注意的是,如果性能管理和汇报已经在之前的几个阶段中被加入到工作产品序列之中,那么在此阶段中,组织就需要保证其有效性,而如果还存在其他需要被监督和汇报的需求,那么这一阶段还需要对这些变化进行处理。
在架构变更管理阶段,治理机构还需要建立各种指标,用于判断对于一个变更请求来说,是采用架构更新措施,还是启动一个新的架构开发循环。在这些标准的制定过程中,企业需要注意避免“完美蠕行”(Creeping elegance)病症,并且治理机构也必须持续寻找与业务价值直接相关的各种变更。架构合规评估报告需要表明一个变更是否与当前架构相适应,如不适应则需要表述其理由,而如果这一变更对架构具有很大的影响,则一个用于管理其影响的策略需要被制定出来。就像不同的企业能够接受不同程度的风险一样,为这些评估标准的制定建立统一的实施指南是非常困难的,但随着架构开发方法的不断实践,治理机构的成熟度水平会日渐提高,这些标准也会根据特定的需求而逐渐清晰起来。
变更驱动力
架构开发的主要目标是将企业的战略目标经由企业架构和各实现项目的捏合最终实现企业自身能力的提升,但在这一过程中,起重要作用的企业架构并不是凭空产生的,在它的周围总是存在着一系列正在创造价值(也许效率不是最优)并等待被整合的基础设施和业务,而针对他们的整合变更,以及外界环境对他们的变更需求,都在企业架构的演进过程中充当了驱动力。一般来讲,有三种方式来对这些将要被整合的基础设施进行变更:
- 来自于战略层面自上而下的变更,用于增强或创建新的能力。
- 来自于下面的自下而上的变更,用于修正或更新运营管理中各基础设施的能力。
- 在项目进展过程中产生的经验。
这些变更在企业架构开发过程中一般以架构变更请求的形式进行提交,因而上面这些变更的将会形成一系列错综复杂的架构变更请求。对待这些变更请求,治理行为是必不可少的,并且一个吸取经验教训的过程也是必要的。这一吸取经验教训的过程的目标是避免已经发生错误的重犯,它将对在进展过程中发现的问题进行解决,并对目标架构进行更改,从而使企业架构一直处于正确的方向之上。
架构委员会(Architecture Board)需要对这些架构申请(RFC:Requests for Change)进行评估和批准,而在这一过程中,架构委员会所面临的一大挑战是判断一个变更请求是否需要被批准,并进一步引起针对架构规划的变更,或者这一申请是否可以由过渡架构中的某个实现项目来解决(即这一变更已经处在未来的规划之中)。
除了上面针对来源的区分,架构变更还可以从技术和业务两个角度来进行分类。技术相关的变更驱动力可以是新技术的产生、资产管理成本缩减、技术退出以及新标准的倡议等。业务相关的驱动力则可以是日常业务开发、业务异常、业务革新、业务技术革新和战略变更等。对于技术方面的驱动力,主要通过企业变更管理和架构治理流程来进行管理,而对于业务方面的驱动力,则往往会导致新一轮的架构开发,或者至少是针对架构开发循环某一部分的迭代。
企业架构变更管理过程
企业架构变更管理过程需要确定各个变更如何被管理,以及在此过程中所采用何种技术和方法。除此之外,这一过程还需要具备一个用于明确哪个架构开发阶段受到影响的过滤功能(例如,仅对迁移方面产生影响的变更就不需要影响到架构开发相关的各阶段)。在当前存在着多种管理变更的方法和技术,例如:
- 项目管理方法,例如PRINCE2。
- 服务管理方法,例如ITIL。
- 管理咨询方法,例如Catalyst。
除了这些方法,TOGAF还推荐了一种用于管理变更的方法。该方法对于架构变更按照如下原则进行了分类:
- 简化变更(Simplification Change):通常采用变更管理技术进行处理的变更。此种类型的变更通常来源于一个减少投资的需求。
- 增量变更(Incremental Change):一个增量变更可以通过变更管理技术来进行处理,也可能需要对架构进行部分重建。此种类型的变更通常来源于在现存投资中获得额外价值的需求。
- 重新架构变更(Re-architecting Change):此种变更需要通过架构开发循环对整个架构进行重建。此种类型的变更通常来源于为了创建新的价值而增加投资的需求。
为了分辨出一个变更属于上述哪种类型,组织可以借助于如下的步骤:
- 对所有可能影响架构的事件进行注册记录。
- 为各个架构任务进行资源分配和管理。
- 对架构资源进行负责的角色或流程需要对所做的事情进行评估。
- 对影响进行评估。
维护vs架构重新设计
如下的原则可以帮助企业来判断针对一个变更所要采用的处理方式是针对架构的维护还是对架构重新设计:
- 如果变更影响了两个或两个以上的干系人,那么这个变更很可能会需要一个架构的重新设计和新的架构开发循环。
- 如果变更只影响了一个干系人,那么这个变更很可能会成为变更管理的候选目标。
- 如果变更在一个特许之下能获得批准,那么这个变更很可能会成为变更管理的候选目标。
例如:
- 如果变更对业务战略有着很大的影响,那么整个企业架构可能会被重建。
- 如果一个新的技术或标准出现了,那么技术架构(而不是整个架构)可能会被要求进行刷新。
- 如果变更出现在一个基础设施层面,那么此物理层之上的架构将不会受到影响,但技术架构的基线描述将会受到影响。此种变更属于需要借助于变更管理技术的简化类型的变更。
除了上述原则,需要特别注意的是,在如下的情况中,组织需要针对部分或全部架构进行一个刷新循环(如果组织确定要进行该刷新循环,那么一个新的架构工作要求书需要被制定出来):
- 基础架构需要与业务战略相校准。
- 在架构的部署过程中所使用的组件和实施指南需要进行重大变更。
- 在产品架构中使用的重要标准需要进行变更,并且对用户有着很大的影响。
1.10.3 输入与输出
在当前阶段所需的输入材料以及此阶段输出的各种交付物归纳如下:
输 入 |
参考资料 |
架构参考资料 |
非架构性输入 |
架构工作要求书 |
|
架构性输入 |
企业架构组织模型,包括:
|
|
定制的架构框架,包括:
|
||
架构工作说明书 |
||
架构愿景 |
||
架构资源库,包括:
|
||
架构定义文档 |
||
架构需求说明,包括:
|
||
架构路线图 |
||
变更请求—技术变更:
|
||
变更请求—业务变更:
|
||
变更请求—来源于经验教训 |
||
过渡架构 |
||
实施治理模型 |
||
架构契约 |
||
合规评估 |
||
实施和迁移计划 |
||
输 出 |
架构的各种更新 |
|
架构框架和原则变更 |
||
新的架构工作要求书,用于转移到另一个架构开发循环 |
||
架构工作说明书(必要时更新) |
||
架构契约(必要时更新) |
||
合规评估(必要时更新) |
1.10.4 步骤
在当前阶段中所要执行的各个步骤归纳如下:
- 建立价值实现过程
- 部署监测工具
- 管理风险
- 为架构变更管理提供分析
- 开发变更需求来迎合性能目标
- 管理治理过程
- 激活实施变更的过程
TOGAF架构开发方法(ADM)之架构变更管理阶段的更多相关文章
- 企业架构研究总结(27)——TOGAF架构开发方法(ADM)之架构变更管理阶段
1.10 架构变更管理(Architecture Change Management) 企业架构开发方法各阶段——架构变更管理 1.10.1 目标 本阶段的目标是: 确保基线架构持续符合当前实际. 评 ...
- 企业架构研究总结(28)——TOGAF架构开发方法(ADM)之需求管理阶段
1.11 需求管理(Requirements Management) 企业架构开发方法各阶段——需求管理 1.11.1 目标 本阶段的目标是定义一个过程,使企业架构的需求可以被识别.存储并与其他架构开 ...
- TOGAF架构开发方法(ADM)之迁移规划阶段
TOGAF架构开发方法(ADM)之迁移规划阶段 1.8 迁移规划(Migration Planning) 企业架构开发方法各阶段——迁移规划 1.8.1 目标 本阶段的目标是: 确保实施和迁移规划与企 ...
- TOGAF架构开发方法(ADM)之需求管理阶段
TOGAF架构开发方法(ADM)之需求管理阶段 1.11 需求管理(Requirements Management) 企业架构开发方法各阶段——需求管理 1.11.1 目标 本阶段的目标是定义一个过程 ...
- 企业架构研究总结(26)——TOGAF架构开发方法(ADM)之实施治理阶段
1.9 实施治理(Implementation Governance) 企业架构开发方法各阶段——实施治理 1.9.1 目标 本阶段的目标是: 为每个实施计划给予建议. 对涵盖整个实施和部署过程的架构 ...
- 企业架构研究总结(25)——TOGAF架构开发方法(ADM)之迁移规划阶段
1.8 迁移规划(Migration Planning) 企业架构开发方法各阶段——迁移规划 1.8.1 目标 本阶段的目标是: 确保实施和迁移规划与企业中各种管理框架相协调. 通过对每个进行中的成本 ...
- 用VS2010创建三层架构开发模式及三层架构的研究
三层架构的研究 三层体系结构的概念 用户界面表示层(USL) 业务逻辑层(BLL) 数据访问层(DAL) BLL将USL与DAL隔开了,并且加入了业务规则 各层的作用 1:数据数据访问层:主要是对 ...
- Atitit.研发管理---TOGAF架构跟 (ADM开发方法)总结
Atitit.研发管理---TOGAF架构跟 (ADM开发方法)总结 1. TOGAF是在过去二十年间出现的企业架构框架 1 2. TOGAF内容结构 1 3. TOGAF 实现过程 2 4. 参考 ...
- INSPIRED启示录 读书笔记 - 第27章 合理运用瀑布式开发方法
瀑布式开发方法的基本原则 1.采用阶段式开发:软件开发过程被事先分成固定的几个阶段,撰写书面的需求说明文档.设计高层软件架构.设计低层细节.编写代码.测试.部署 2.采用阶段式评审:每个阶段结束后,对 ...
随机推荐
- datatables表格
datatables表格 并不是所有的后台开发都有美工和前端工程师来配合做页面,为了显示数据并有一定的美感,jQuery的DataTables插件对于像我这样的前端菜鸟来说真是雪中送炭,当然对于专业的 ...
- C++ AMP 介绍(两)
C++ AMP 介绍(两) 最后更新:2014-05-02 读前提:<C++ AMP介绍(一个)> 周边环境:Windows 8.1 64bit英文版,Visual Studio 2013 ...
- Asp.Net MVC路由调试好帮手RouteDebugger
Asp.Net MVC路由调试好帮手RouteDebugger 1.获取方式 第一种方法: 在程序包控制台中执行命令 PM> Install-Package routedebugger 安装成功 ...
- unity3d 血液
这里的人物头像和血条是在3d世界生成的,所以有真正的纵深感和遮挡关系,废话不多说,看我是怎么实现的. 第一步.先在UI Root里制作头像和血条. 这个制作步骤基本和我前面一篇文章介绍头像血条的制作步 ...
- GIMP也疯狂之动态图的制作(四)
本篇文章为gimp制作动态图的第四篇.在之前的基础上简单的拓展了下思路.就能做出蛮实用的动态图.本文将介绍两个动态图.第一个为在一张静态图上添加动态图,第二个图为修改部分渐变. 效果: 素材: 其实, ...
- 用lucene.net根据关键字检索本地word文档
目前在做一个winform小软件,其中有一个功能是能根据关键字检索本地保存的word文档.第一次是用com读取word方式(见上一篇文章),先遍历文件夹下的word文档,读取每个文档时循环关键字查找, ...
- leetcode[50] N-Queens
题目:给定一个n,那么在n*n的棋盘里面放国际象棋的皇后,皇后之间互不在攻击范围.(皇后的攻击范围是她所在位置的哪一行,那一列,和她的正负1的对角线) The n-queens puzzle is t ...
- Oracle数据库面试题
1.取出表中第31到40行的记录 mysql方案:select * from t order by id limit 30,10 oracle方案: select t2.* from (select ...
- Angularjs 与Ckeditor
Angularjs 与Ckeditor Angularjs 诞生于Google是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心的是:MVC.模块 ...
- 一步一步实现基于Task的Promise库(一)Promise的基本实现
如果我们现在有一个需求,大概是先读取一个文件的内容,再把得到的内容传给后台去解析,最后把解析后的结果再保存到那个文件,按照最原始的做法代码就是下面这个样子的: //读取文件的原始内容 var read ...