1. 引言
如果不进行架构规划,会带来一系列严重问题。首先,系统建设可能会呈现烟囱式,即各个系统独立建设,缺乏统一规划,导致系统边界模糊,不同系统之间频繁出现扯皮现象。其次,由于缺乏统一标准,系统可能会重复建设,造成资源浪费。再者,系统之间可能无法集成,形成信息孤岛,导致数据无法共享,严重影响业务效率。最后,这种缺乏规划的做法会阻碍创新,使企业难以适应快速变化的市场环境。
TOGAF(The Open Group Architecture Framework)是一个广泛认可的架构框架,它提供了一个全面的方法来开发、计划、实施和管理企业架构。TOGAF的架构模型包括以下几个方面:
战略目标与业务动机:明确企业为什么要进行架构规划。
业务功能与能力:描述企业为了实现战略目标需要哪些业务功能和能力。
组织结构与业务角色:确定哪些组织或角色负责执行这些业务功能。
业务流程与规则:详细阐述业务如何运作,包括具体的流程和规则。
业务数据:识别并定义业务过程中涉及的数据。
应用系统:支持业务功能所需的应用系统。
技术设施:提供技术支持的基础设施。
2. 企业4A架构
4A架构包括业务架构、应用架构、技术架构和数据架构,它们之间相互关联,共同支持企业的战略目标。
业务架构
目的:
根据企业战略,通过价值链梳理分析业务开展流程,识别上下游依赖关系,从业务和产品的视角描述整个平台或产品的实现。
设计步骤:
识别战略,走访业务部门,进行问卷调查。
分析外部因素,如宏观背景、行业空间、竞争情况和上下游产业链。
考虑内部因素,如商业模式、技术壁垒和资源投入。
如何绘制业务架构图:
一理场景画流程:根据用户操作流程罗列功能模块。
二列页面和模块:形成功能矩阵。
三把功能来聚类:横向和纵向分层。
应用架构
目的:
支持业务和数据处理需要的应用系统,完成从业务到IT的转换。
设计步骤:
根据业务架构图,识别应用程序和组件。
优化应用程序和组件,进行拆分或聚合。
设计应用与业务功能、流程、数据的关系。
设计应用集成、交互和开发。
如何绘制应用架构图:
根据应用系统的功能和关系绘制架构图。
技术架构
目的:
支持应用系统所需的技术架构、技术组件和技术选型。
设计步骤:
根据应用架构进行技术支撑分析。
进行技术选型,包括开发架构、技术产品等。
分析技术影响,如成本、难易度等。
如何绘制技术架构图:
展示技术组件、技术栈和平台之间的关系。
数据架构
目的:
描述企业数据来源、数据资产管理、数据治理和数据共享开放。
设计步骤:
分析数据需求,识别数据类型并采集数据。
设计数据模型,包括概念模型、逻辑模型和物理模型。
进行数据治理,确保数据安全合规和质量。
实现数据共享开放,支撑业务决策和创新。
如何绘制数据架构图:
展示数据源、数据模型、数据治理和数据共享之间的关系。
通过4A架构的规划和实施,企业可以确保系统建设的统一性和规范性,提高业务效率和创新能力。同时,也有助于企业更好地应对市场变化和竞争挑战。
在TOGAF的世界里面,所有的架构思想都可以通过下面三种类型的图形进行表示。
目录(Catalogs)
矩阵(Matrix)
图 (Diagram)
其架构图的本质就是用来进行沟通交流,通过架构图和业务团队进行沟通交流;通过架构图和架构师之间进行沟通交流,通过架构图和开发测试团队进行沟通和交流,所谓的一图抵千言万语。
上面的三种类型,其实就对应了几何物理空间的三维,目录是列表,所以是一维的表达空间;矩阵是是表格是二维的表达空间,图的形式多种多样,其实是二维的延申让其可以表达三维的思想甚至更多的架构思想。
业务架构服务于业务目标,通过描绘业务上下层关系,梳理一整套完整、简单的业务视图,降低业务系统的复杂度,提高客户理解度,最终给客户最直观的业务体现。
1、什么是业务架构图?
业务架构图是一种表达业务层级和关系的工具,业务架构服务于业务目标,通过描绘业务上下层关系,梳理一整套完整、简单的业务视图,降低业务系统的复杂度,提高客户理解度,最终给客户最直观的业务体现。
2、业务架构图的三大核心要义
简单来说可以分为三个核心步骤:分层、分模块、分功能。
1)架构图核心要义之一:分层
指的是将业务按照层级区分,每个层级都属于独立的版块。下层更抽象,上层更具体。层级需要有逻辑上的关联,比如下层为上层服务,或者提供能力支撑。
2)架构图核心要义之二:分模块
分模块,是指在同一个层级中,有哪些独立模块,可以代表一个完整的产品或是同类型的业务聚合。每个模块之间都相对独立,且模块之间也会存在相互依赖关系、关联关系。
3)架构图核心要义之三:分功能
分功能,是指在同一个模块中,将独立的功能划分出来,该功能可以代表一个业务入口。简单理解就是将一个模块体系中的功能,比较具有代表性的,客户比较关注的,拎出来。
在画业务架构前,有必要对整个业务体系进行全量的思考,将所有涉及到的应用、功能、系统、能力、平台全部要罗列出来。然后进行提炼、归纳、分类,按照常用的分类模板,或是自建模板进行大体框架的构思。最后按照分层、分模块、分功能的维度将具体的内容补充进去。