“有效的企业架构(Enterprise Architecture,EA)画出美好蓝图,对企业的生存和成功具有决定性的作用,是企业通过IT获得竞争优势的不可缺少的手段。”,作为目前应用度最为广泛的企业架构框架理论—TOGAF,提供了完善且不断优化迭代的知识体系以支持EA高效落地。
00 企业架构,IT与业务对准的桥梁
EA方法一直强调对组织的业务、应用、数据和技术架构进行全面、正向的设计,从而实现组织战略和业务对准,以及业务和IT的对准。但是项目实践中很难真正做到这一点,原因有以下三点:
1、对架构的理论掌握不到位。学习TOGAF有助于建立架构思维,但TOGAF仅仅提供了方法论支撑,即阐述了What,并未告知How。需要通过具体的项目实施并加以剪裁和补充才能逐步形成具体的架构项目实施方法。
2、缺乏合适的落地方法和工具。架构强调正向设计,这就要求在架构项目开始之初,就要规划出架构项目完整的技术路径,设计并明确相关工具和模板,通过工具和模板保证各个架构之间的逻辑关系,确保各个架构域之间的承接落到实处。
3、需要项目实施顾问较高的能力。无论架构项目的边界和范围是何种程度,都要求架构实施顾问具有全局思维,即业务与IT的融合能力,既能高屋建瓴搭建逻辑蓝图,也能深入细节挖掘问题。有些还需要有项目所处行业的背景知识和技能经验。
架构师的能力体系无法通过一篇文正或考取认证就能短时间内完善具备。事实上,对架构理论的升华和个人能力的提高,都需要在实践中不断磨练,踩得坑越多,避坑的能力就越强。但并不代表无依可遵,在架构正向设计过程中有相对成熟的方法和工具,对各行各业都有参考借鉴作用。
为了更清晰的阐述,以实际项目为切入点进行贯穿梳理。我们在项目论证阶段就规划了各架构域之间的联系,具体可见下图。
01 业务架构(Business Architecture,BA)
业务架构定义了业务策略、治理、组织和关键业务过程。是企业架构的核心内容,承接了企业战略,直接决定企业战略的实现能力,是其他架构领域工作的前置条件。主要目标是根据企业战略愿景,分析业务现状,识别现有业务能力及问题,提出业务改进需求,设计目标业务架构。项目在梳理AS-IS业务架构时,采用5W1H调研表调研信息,结合管理程序文件,依据业务组件归集原则,进行现状的组件梳理。同时在梳理业务组件的前提下,通过业务组件的串联形成流程图。
在设计TO-BE业务架构时,通过业务需求分析,并参考外部标杆,识别需要完善或新增的业务组件,形成未来业务组件总体视图。对于发生变化的业务组件,具体变化要求将在业务架构差距分析部分进行详细描述。
在业务架构设计过程中,使用的工具方法包括《5W1H表》、《业务架构差距分析矩阵》等,为其他架构管理要素提供输入。
02 应用架构(Application Architecture,AA)
应用架构为要部署的单个应用系统、它们之间的交互和它们与组织的核心业务流程之间的关系提供蓝图。工作主要目标是根据企业现状应用架构需求及业务架构中的数据流分析结果,设计目标应用架构。应用架构的设计起源于5W1H业务调研表中的信息化需求,结合业务组件的五要素定义等,以及现有信息系统的建设情况梳理IT应用现状,通过分析得出现状应用架构。业务架构和应用架构的设计联系见下图。
为了进一步了解应用对业务的支撑情况,需将梳理出来的AS-IS应用架构与AS-IS业务架构做出对应关系分析,了解当前信息化支持情况,和尚无信息化条件支撑的情况,为设计TO-BE应用组件的输入。
设计TO-BE应用架构时,需要对信息化需求进行归集并进行功能分析整理,同时利用业务/数据UC矩阵进行应用边界划分和数据流转设计。
在应用架构设计过程中,使用的工具方法包括《业务/数据UC矩阵》、《应用架构差距分析矩阵》等,为数据架构、技术架构和机会及解决方案、迁移规划提供输入。
03 数据架构(Data Architecture,DA)
数据架构描述了企业逻辑物理数据资产和数据管理资源的结构。工作主要目标是根据企业现状数据架构需求及业务架构中的数据流转,设计目标数据架构。
确定AS-IS数据架构有四个步骤,包括对现有业务调研,整理业务涉及到的指标,形成主题分析数据;通过业务/数据UC矩阵中数据类,确定AS-IS数据架构中业务数据;基础数据中以主数据为核心,根据主数据特征,确定主数据。分析主数据的属性,确定主数据的元数据。根据主数据的编码规则,确定编码数据;最后形成AS-IS数据架构图。
设计TO-BE数据架构也分为有四个步骤,包括根据指标体系,定义TO-BE主题分析数据类别;根据5W1H调研中对业务数据的需求,结合AS-IS数据架构中业务数据确定TO-BE数据架构中业务数据;在没有业务数据重大变化的前提下,基础数据保持相对稳定;最后推导TO-BE数据架构图。
在确定TO-BE数据架构和AS-IS数据架构的基础上,运用差距分析矩阵,比对AS-IS数据架构和TO-BE数据架构,确定差距,为机会及解决方案、迁移规划提供输入。
04 技术架构(Technology Architecture,TA)
技术架构描述了需要支持业务、数据和应用服务的部署的逻辑软硬件能力,包括IT基础设施、中间件、网络、通信、流程、标准等。工作主要目标是基于现状技术架构、技术标准、业务/应用/数据架构要求,设计目标技术架构。梳理AS-IS技术架构,形成平台分解图和技术谱系目录。
平台分解图主要描述支持信息系统架构运行的技术平台,该图涵盖基础设施平台的各个方面,并提供组织技术平台的概述。技术谱系目录是识别和维护复杂组织体在用的所有技术的列表,包括硬件、基础设施软件和应用软件。
设计TO-BE技术架构时,在AS-IS技术架构基础上,重点考虑新增业务场景或应用支撑,所需的制定技术解决方案(软硬件、网络等)、基础设备到达运行周期后所需的备选方案(删除数据或新增设备)等,设计TO-BE技术架构。
05 机会解决方案及迁移规划
机会解决方案及迁移规划工作主要目标是分析业务架构、信息系统架构和技术架构提出的差距分析,设计工作包,并识别工作包相互影响和资源需求,确定优先级,设计迁移规划路线。
根据差距分析结果定义工作包,将业务架构、应用架构、数据架构、技术架构的差距分析结果进行归集汇总,并考虑实施约束(包括企业战略、资源约束、变革阻力等),然后对差距分析结果进行审查和合并,形成一个个工作包。
确定迁移规划时,需要先进行依赖性分析,并进行工作包资源评估。按照迁移规划模板,在迁移规划方案中,需要明确工作包的责任人、前置条件及具体实施路径。作为未来实施治理的输入。
本项目按照TOGAF理论方法完成了架构设计的全过程,为架构实践提供了有力的实践案例。在项目中完成的TOGAF中定义的架构制品见下图。
06 几个架构之间的关系
1、业务架构
业务架构是企业治理结构、商业能力与价值流的正式蓝图,明确定义企业的治理结构、业务能力、业务流程和业务数据。业务架构脱胎于跨系统规划,重视跨系统需求,目标是设计目标业务架构并借助差距分析识别业务架构能力增量。
业务架构输入主要有三,战略驱动因素(为什么启动业务架构设计?是因为国家政策的要求还是对标友商的需要);影响范围(业务架构将覆盖哪些部门?涉及本公司哪些部门?涉及哪些客户供应商以及合作伙伴);业务目标(业务架构要达到哪些目标?是强化管理还是建新渠道?是扩展业务还是做精业务?)
业务架构步骤包括确定架构模型、视点和工具,开发基线业务架构,开发目标业务架构,进行差距分析,识别能力增量,架构影响评估,干系人评审,敲定业务架构,创建架构文档。
业务架构输出为目标业务架构,重视业务目标、组织结构、业务功能/业务服务、业务流程与业务规则、业务数据及商业模式,其中商业模式揭示的是企业产品、企业核心资源、客户伙伴渠道、成本和利润之间的本质关系,涉及业务渠道和价值链(对一个企业所有生产经营活动的总体描述)。业务流程等于主干流程+分支流程+业务规则。商业模式借助商业模式画布中的9个小格子,构建了简洁高效的系统化思维环境,包括合作伙伴、关键活动、关键资源、价值主张、客户关系、渠道通路、客户细分、成本结构和收入来源。
总之,业务架构设计是由战略驱动的,确定国家政策、对标友商和企业战略,通过管理层访谈、战略来龙去脉和可借鉴案例等方式调研,进而明确战略驱动因素,分解业务架构目标,设计业务架构策略,之后定义业务架构蓝图,包括业务功能、业务流程、组织结构、业务规则、业务数据和商业模式等。
2、应用架构&数据架构&技术架构
数据架构的核心是数据类型和来源。应用架构的核心是识别出应用功能并映射到应用项目。技术架构的核心是识别出技术需求并映射到技术选型。
应用架构是一组应用系统及其相互关系的描述,其中的每个应用系统都是一个“逻辑功能组”,为支撑业务功能管理数据资产。
应用架构的目标是定义知识业务和处理数据需要哪些应用系统以及这些应用系统需要执行哪些操作才能管理数据并将信息呈现给企业人员,不需要指出应用的具体实现技术。
开发应用架构的过程包括:根据业务架构范围识别应用程序和应用组件,优化应用程序和应用组件粒度,避免应用程序和应用组件的重叠,确定需要的应用系统,考虑应用与业务系统、业务流程和数据的关系,考虑应用的运行、集成迁移、开发和操作。
数据架构描述企业的主要数据类型及其来源、逻辑数据资产、物理数据资产、数据管理资源的结构和交互。数据架构设计内容包括定义业务数据模型、逻辑数据模型、确认数据满足业务、定义数据交互格式、规定数据管理过程以及编写相关架构文档。
数据架构设计过程包括分析业务与应用需要,定义合理的数据需求,数据模型设计,数据生命周期,数据流、数据接口、数据存储设计,可分为静态设计、动态设计和数据管理。静态设计包括数据模型设计、数据生命周期设计、数据存储策略设计和数据分布策略设计等,动态设计等于数据流+数据沿袭+数据接口,其中数据沿袭指明确数据和数据源头之间的追踪关系,数据管理等于数据标准+数据质量+数据安全。
技术架构描述需要哪些技术服务、选择哪些技术组件来实现技术服务以及这些技术服务及组件之间的交互关系,意味着一份强制规定了应该选择哪些厂商的哪些产品的核准清单。技术组件包括技术平台、技术框架和技术产品等。技术服务是IT系统所需的硬件能力\网络能力和软件能力等。
技术架构的设计内容包括技术选型、技术架构设计和优化。技术选型包括技术组件选择、技术平台选择以及硬件与网络规格。技术架构设计包括网络结构设计和部署结构设计。技术架构优化包括负载均衡设计等。
技术架构设计的步骤包括分析技术需求(识别所需的技术服务、明确技术部署的位置)、确定技术选型(盘点现有技术、进行差距分析、选择技术产品、明确技术指标)、相关影响分析(识别成本、规模、安装、移植、规划、治理影响)。
技术评估模型包括13项评估指标:需求满意度、受认可程度、周边产品支持度、使用广泛性、合法合规性、文档可获得性、产品完整性、技术成熟性、系统稳定性、可测试性、遗留系统兼容性、国际化支持以及缺陷数量等。
07 结语
一名出色的企业架构师需要通过不断的项目历练逐步完善自身的技能体系,包括战略能力、架构视角等逐步完善知识框架,不断提升自身的业务-IT一致性匹配构建能力,在实践中反思,在自我否定中成长。