前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >解构 TOGAF-3-用 ADM 如何打胜仗?

解构 TOGAF-3-用 ADM 如何打胜仗?

作者头像
rocket
发布2021-12-01 18:54:23
4640
发布2021-12-01 18:54:23
举报

介绍企业架构的历史已经好多次了,在《企业架构设计的本质》中介绍过三个重要的框架:Zechman,DoDAF 和 TOGAF。除此以外市面上还有各种各样的书讲架构设计方法和实践,所以我再想是不是可以为架构设计圈做一点有意义的小事,就是把这些架构框架,架构书籍,甚至架构工具都解读一遍。现在使用最多,影响力最大的就是 TOGAF 了,所以我打算就从这个有点重的块头开始,和庖丁解牛一样一点点拆解,所以这个小事有个标签:和坚解构

在《解构 TOGAF-1-整体全景图 》中介绍过,ADM 的全称是 Architecture Development Method,它负责回答 HOW 的问题,也就是如何操作才是使用 TOGAF 开发企业架构的正确姿势。

要理解 ADM 就必须要熟悉下面这个海星图:

但这个图第一眼看上去很复杂,一堆名词和概念,还有各种连接箭头,所以需要一些更好的方法才能有效理解 ADM。

人类处理复杂问题的最常用办法是分类和类比,所以第一个方法是给这 10 个圈圈分个类。如果把整个企业架构变革过程看成一场战争,可以按照战争的进行顺序划分成这样四个部分:

  • 进行战前动员:预备阶段,阶段 A 架构愿景
  • 战争部署准备:阶段 B 业务架构,阶段 C 信息系统架构,阶段 D 技术架构
  • 制定作战计划:阶段 E 机会和解决方案,阶段 F 迁移规划
  • 战争管控治理:阶段 G 实施治理,阶段 H 架构变革管理
  • 战争情报管理:需求管理

1 进行战前动员

企业架构变革在协作层面和战争一样,都是需要一群人在一起同心协力才能实现的复杂工程。这个过程需要解决两个核心问题

  • 预备阶段关注的问题是如何让大家对战争的基本认知达成一致,比如这场战争对于企业的意义是什么,要分成几个阶段,每个阶段的边界是什么?预备阶段的官方定义是: 为成功实施 TOGAF 架构项目做好准备,开展创建架构能力所需的准备和启动活动,包含定制 TOGAF,选择工具和定义架构原则。
  • 阶段 A 战略愿景关注的问题是如何让大家对战争的目标和战略达成一致,比如战争的目标是什么?战争的边界在哪里?要投入几个军团参战?明确谁会影响战争的走向?这些问题都要在企业核心决策层形成战略决议。阶段 A 战略愿景的官方定义是: 为 TOGAF 项目设定范围,约束和期望;创建架构愿景;定义利益相关者;验证业务场景,创建架构工作说明书;获得正式批准。

2 战争部署准备

企业架构的战争准备主要包括三个方面,业务架构,信息系统架构和技术架构。

  • 阶段 B 业务架构关注的问题是企业未来需要占领哪些地盘,也就是企业要发展哪些业务。什么是业务?白话说就是企业如何赚钱的东西。阶段 B 需要做好两个“战争准备”,一个是开发目标业务架构,用来描述企业如何运作以达成业务目标,另一个是基于基线业务架构和目标业务架构的差距,识别候选的架构路线图构件。
  • 阶段 C 信息系统架构关注的问题是占领地盘需要什么样的军队?空军,海军,还是陆军,也就是支撑业务架构需要什么样的信息系统。阶段 C 需要做好两个“战争准备”,一个是信息是如何在不同系统之间进行交互传递的,另一个是信息是如何存储管理的。所以,应用架构用来描述被部署的单个应用系统、系统之间的交互,以及系统与业务核心业务流程的映射关系蓝图。数据架构用来描述数据如何管理,数据如何迁移,以及数据如何治理。
  • 阶段 D 技术架构关注的问题是阶段 C 的军队需要如何组建,要多少人,角色如何划分,需要多少坦克,多少飞机。也就是应用系统如何实现,需要什么软件,需要什么硬件,以及如何进行通信。阶段 D 的“战争准备”需要包含硬件和网络基础架构,软件技术架构,中间件等落地实现的技术细节。

3 制定作战计划

关于作战计划,最有名的作战计划莫过于第一次世界大战时德国的施利芬计划,它决定了德国以什么方式进入大战的,虽然这个作战计划并没有让德国最终赢得一战,但是它让德国在一战开始的时候进展非常顺利,这就是作战计划的价值,所以后续的战争都会有一个详尽的作战计划。

前面已经进行了战前动员,也做好了充分的战争部署准备,下面要开打了。在执行层面的作战计划需要包含两个东西,一个是战斗级别的解决方案,也就是实现目标业务架构需要执行哪些“战斗”(解决方案)。另一个是整个军队如何发展如何行军的迁移规划。

  • 阶段 E 机会及解决方案关注的问题是要进行多少场战斗,哪些是歼灭战,哪些是包围战,哪些是狙击战,也就是如何实施才能交付目标业务架构。阶段 E 的“作战计划”需要对比目标架构和基线架构的差距,并在逻辑上把因差距引发的变革分组到企业的工作包中。这个过程需要基于目标架构判断是否需要增量方法,如果需要,识别可以持续交付商业价值的过渡架构。
  • 阶段 F 迁移规划关注问题是战争的行军路线,先打哪里,再打哪里,什么时候打散敌军,什么时候形成包围圈。阶段 F 的“作战计划”需要包含详细的实施与迁移计划,阐述如何从基线架构达成目标架构。

4 战争管控治理

前面介绍的施利芬计划虽然一开始很顺利,但是最终并没有成功赢得战争,主要原因就是战争启动以后出现了一些作战计划意料意外的变数,施利芬计划里面把德国70%以上的部队集中到所谓的决定性右翼,在理论上可以,在现实中不可能。这么多部队集中在这么窄的地方通过,当时的后勤条件根本保障不了,所以后来的总参谋长才调整了兵力配比。另外一个变数是俄国更早的参与了战争,这就导致德国需要双线作战 ,没法按照作战计划专心从西线进攻法国。

这种问题是执行作战计划的常见问题,前面动员做的再全面,准备做的再充分,计划做的再详尽都无法避免战争开始后遇到的两种问题,战场发生计划之外的变化和无法按照计划执行。架构变革也会有类似的两类问题,所以需要实施治理和架构变更管理。

  • 阶段 G 实施治理关注的问题是如何确保作战部队达成的结果和计划的目标一致,比如在战争中签署军令状就是一种有效的治理方法。阶段 G 定义了如何通过架构来约束各个实施项目,在创建项目的同时对其进行监控,并产生一份经过签署的架构契约(军令状)。
  • 阶段 H 架构变更管理关注的的问题是让部队能够以可控的方式应对变化,比如如果需要占领的目标改变了如何变更作战计划。阶段 H 进行持续的监控并建立变更管理流程,以确保架构能对企业的需要快速响应,使架构对业务的价值最大化。

5 战争情报管理

最后还有一个要素贯穿整个战争,这就是情报,有的时候一个关键情报能直接决定一场战争的结果。情报对应企业架构变革来说就是需求,所以在海星图中最中间的那个大圆圈就是需求管理。

  • 需求管理关注的问题是如何对企业的需求进行识别、存储,以及将这些需求输入到相应的 ADM 阶段并输出。管理架构需求的流程适用于 ADM 周期的所有阶段。处理需求中的变化的能力对于整个ADM 过程来说是非常关键的,因为架构本身处理的就是不确定性和变化,在利益相关者的愿望和实际方案交付成果的差距间建立桥梁。

6 ADM 小结

这篇解构主要目的是能够帮助你快速地理解 ADM 的 10 个圈圈,以后在项目中如果需要使用 ADM 进行企业架构开发,就可以把自己想象成是架构变革这场战争的总司令。

为了确保战争的胜利,第一步先要进行战前动员(准备阶段 ,架构愿景),第二步是战前部署准备(业务架构,信息系统架构,技术架构),第三步是制定作战计划(机会和解决方案,迁移规划),最后是战争管控治理(实施治理,架构变更管理),还有贯穿整个战争的情报管理 (需求管理)。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-11-21,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 馔玉阁 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
消息队列 TDMQ
消息队列 TDMQ (Tencent Distributed Message Queue)是腾讯基于 Apache Pulsar 自研的一个云原生消息中间件系列,其中包含兼容Pulsar、RabbitMQ、RocketMQ 等协议的消息队列子产品,得益于其底层计算与存储分离的架构,TDMQ 具备良好的弹性伸缩以及故障恢复能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档