也谈“业务架构”
共 3890字,需浏览 8分钟
·
2021-03-01 04:03
“架构”一词,仿佛是“熟悉的陌生人”,系统架构、硬件架构、企业架构、缓存架构...... 林林总总, 某种技术只要加上“架构”一词,就好像变得“高大上”起来。
然而,讨论问题的基础应该是,澄清概念和明确问题的领域边界。随着所谓“中台”的兴起,业务架构被再次推到了前台,那么,什么是业务架构?业务架构与软件架构有什么区别和联系呢?业务架构在整个IT体系中处于怎样的位置呢?
什么是业务架构?
先让我们试图澄清一下概念的内涵与外延。OMG 的业务架构工作组(BAWG)给了如下定义:
A Business Architecture is a formal blueprint of governance structures,business semantics and value streams across the extended enterprise.
业务架构是企业治理结构、商业能力与价值流的正式蓝图。
It articulates the structure of an enterprise in terms of its capabilities, governance structure, business processes, and information. The business capability is what the organisation does, the business processes are how the organisation executes its capabilities.
业务架构明确定义企业的治理结构、业务能力、业务流程、业务数据。其中,业务能力定义企业做什么,业务流程定义企业怎么做。
一般地,我们谈及的架构大都是面向软件系统自身的,指的是软件系统自身的体系结构以及实现的流程与方法。业务架构虽然与软件系统自身有着紧密的联系,但更多指的是企业架构的一部分,是面向企业或组织的。
也就是说,软件架构和业务架构的核心关注点不同,业务架构是为企业的整体目标服务的,由企业战略所驱动。
基于TOGAF的企业架构
在明确了领域边界之后,会发现“业务架构”这个词并不新,它隐藏在企业架构中。企业架构是上世纪 80 年代的产物,其标志就是 1987 年 Zachman 提出的企业架构模型,该模型按照“5W1H”,即 what(数据)、how(功能)、where(网络)、who(角色)、when(时间)、why(动机)六个维度,结合了目标范围、业务模型、信息系统模型、技术模型、详细展现、功能系统等六个层次。
进而在笔者大学毕业的那一年,TOGAF,这个在企业架构市场中据说占了半壁江山的架构模型明确提出了业务架构的概念。TOGAF 将企业定义为有着共同目标集合的组织的聚集,强调基于业务导向和驱动的架构来理解、分析、设计、构建、集成、扩展、运行和管理信息系统,复杂系统集成的关键是基于架构体系的集成,而不是基于组件的集成。
完整的TOGAF,是以ADM 为核心的一系列方法和工具的集合。我们也常把“方法和工具的集合”叫做架构框架——即Architecture Framework,AF。这里的ADM 就是架构开发方法,是Architecture Development Method 的缩写,是创造TOGAF的专家们网罗了业界大量最佳实践构建的一个闭环的、迭代化的架构设计/实现/维护过程。TOGAF 9.2 原版的ADM 过程模型如下:
各种架构之间的关系
企业架构(Enterprise Architecture)包含如下四种架构,这是被广泛认同的:
业务架构。Business Architecture,BA。
数据架构。Data Architecture,DA。
应用架构。Applications Architecture,AA。
技术架构。Technology Architecture,TA。
目前,TOGAF 9.2 是企业架构实际上的标准,在全球有着广泛的实践。TOGAF 9.2 中的BA/DA/AA/TA 内容模型,如下图所示:
BA 属于现实世界,DA/AA/TA 都属于IT 世界。前者是后者的缘起,后者是前者的支撑, 模型可以简化为:
为什么干——战略目标、业务动机
干什么——业务功能、业务能力
谁来干——组织结构、业务角色
怎么干——业务流程、业务规则
用到的数据——业务数据
用到的应用——应用系统
用到的技术——技术设施
业务架构师是由企业战略驱动的,进而看这些架构体系的关系是这样的:
战略是公司高层的设计,却是业务架构师的需求。业务架构师的工作是“战略进,业务架构出”,业务架构是BA 架构师的设计,却是DA/AA/TA 架构师的需求,环环相扣,上层驱动下层,下层支撑上层。
业务架构的实践
TOGAF 9.2 的业务架构部分,是按照目标/输入/步骤/输出的方式展开的,业务架构有两点目标:
设计目标业务架构(Target Business Architecture,TBA)
借助差距分析,识别业务架构能力增量
前者是后者的基础,后者是前者的延伸。目标业务架构,就是企业想要实现、想要达成的业务蓝图。业务架构=业务功能+组织结构+业务流程+业务数据,则目标蓝图也应包含这四方面。
业务架构的实践同样取决于企业战略的制定和规划,并非每个工程师都有落地实践的机会。本文中所有对业务架构的理解,都来自于温昱老师的新书——《业务架构·应用架构·数据架构实战》,相关信息如下:
第一篇 大局观
第1章 架构实践全景图
战略/BA/DA/AA/TA五者的关系
BA/DA/AA/TA的实际工作内容
从战略、到架构、到实施的实际过程
业务驱动——小试业务流程驱动的DA/AA/TA设计
盘点收获
第2章 TOGAF理论全景解读
解读TOGAF 9.2的BA/DA/AA/TA内容模型
解读TOGAF 9.2的启动/蓝图/实施整体过程
盘点收获
第二篇 架构篇
第3章 战略驱动的业务架构设计
什么是业务架构(BA)
跨系统规划——业务架构在全球出现的背景
信息孤岛——业务架构在国内火起来的契机
数字化转型——这次业务架构大有普及之势
解读TOGAF的业务架构方法
实践攻略:业务架构的实际工作内容
实践攻略:战略驱动的业务架构设计步骤
实践案例:12306——2011项目背景
实践案例:12306——确定Driver,开展调研
实践案例:12306——确定BA目标与策略
实践案例:12306——定义BA目标蓝图
盘点收获
第4章 业务驱动的应用架构设计
什么是应用架构(AA)
应用程序/应用功能/业务场景/业务流程四者的关系
解读TOGAF的应用架构方法
实践攻略:业务驱动的应用架构设计步骤
实践攻略:应用架构的实际工作内容
实践案例:12306——业务场景分析+业务流程定义
实践案例:12306——流程分布设计+应用服务识别
实践案例:12306——流程分布设计+应用组件识别
实践案例:12306——Gap分析,识别应用开发工作包
关键技能:Archimate建模
关键技能:如何穷尽穷举业务流程分支场景
关键技能:如何决定服务划分的粒度
盘点收获
第5章 业务驱动的数据架构设计
什么是数据架构(DA)
数据架构在全球的快速发展
解读TOGAF的数据架构方法
实践攻略:数据架构的实际工作内容
实践攻略:业务驱动的数据架构设计步骤
实践案例:12306——分析数据需求,识别数据类型
实践案例:12306——设计数据模型,定义生命周期
实践案例:12306——规划数据存储,设计数据分布
实践案例:12306——数据流/数据沿袭/数据交换格式设计
盘点收获
第6章 双轮驱动的技术架构设计
什么是技术架构(TA)
技术浪潮与生态变迁
解读TOGAF的技术架构方法
实践攻略:技术架构的实际工作内容
实践攻略:双轮驱动的技术架构设计步骤
实践攻略:用Gartner Hype Cycle评估技术趋势
实践攻略:如何基于评估来做技术选型
实践案例:12306——技术选型
实践案例:12306——分布设计
盘点收获
第三篇 文档篇
第7章 业务架构文档
战略/BA/DA/AA/TA/Project对应的文档
《业务架构文档》的内容主线
《业务架构文档》模板
第8章 技术方案文档
《技术方案文档》的位置
《技术方案文档》的内容主线
《技术方案文档》模板
附录 A 《业务架构》文档模板
附录 B 《技术方案》文档模板
和温昱相识十数年,他的《软件架构设计》、《一线架构师实践指南》以及译作《SQL语言的艺术》《应用框架的设计与实现》等书帮助了大量的程序员。更为难得的是,他一直专注于系统架构这一领域,《业务架构·应用架构·数据架构实战》更是多年实践水到渠成之作,这本书为业务架构及企业架构的具体实践,带来了诸多真知灼见和实践探索。
早在2015 年Gartner 预测说:在2020-2025 年,大数据/DevOps/业务架构等技术都会进入成熟期。
五年后的今天,我们看到了什么,又做到了什么呢?
【关联阅读】