丁 茜, 王跃利, 曹冠平, 葛 亮
(1. 军事科学院研究生院, 北京 100091; 2. 特警学院职业教育中心, 北京 100020;3. 军事科学院评估论证研究中心, 北京 100091)
统一体系架构框架(Unified Architecture Framework,UAF)[1]是对象管理组织(Object Management Group,OMG)于2017年11月发布的体系架构标准,是其接手国防体系架构框架研制后发布的第一个通用标准,标志着体系架构技术进入了全新的发展阶段。UAF兼容美国国防部体系架构框架(Department of Defense Architecture Framework,DoDAF)、英国国防部体系架构框架(Ministry of Defense Architecture Framework,MoDAF)、北约体系架构框架(NATO Architecture Framework,NAF)等多种体系架构框架,并可与开放组体系架构框架(The Open Group Architecture Framework,TOGAF)融合使用,是基于模型的系统工程(Model-Based Systems Engineering,MBSE)领域的创新性方法。
UAF能够认识、构建、分析包括人员、业务(作战)、政策制度、软硬件资源等各类要素在内的复杂组织体,提供从战略目标、业务支撑到技术实现的一体化解决方案,并提供统一的架构语言、规范和方法,解决了现有各体系架构框架中概念不能完全互通、元模型难以匹配及架构工具无法无缝沟通的问题,并保证了全周期可评估、全要素可验证、全体系可追溯,改进了美、英等国传统架构方法设计、验证、运行相脱节的问题,能够确保战略构想最终实现。
架构开发程序(Architecture Development Procedure,ADP)是开发、管理复杂组织体全生命周期架构的程序方法,其提供一系列明确、有序的架构开发步骤。DoDAF的 “六步法”、MODAF的“六步骤”、NAF及TOGAF的架构开发方法(Architecture Development Method,ADM)[2]均为架构开发人员提供了通用的标准化程序指导和全面、实用的工作指南。而UAF提供的视图矩阵是抽象的Zachman框架结构,没有提供具体的架构开发程序[1,3-5]。由此,笔者在研究UAF应用方向的基础上,提出既符合体系架构通用规范及方法论,又符合视图矩阵中各领域内在逻辑关系的UAF架构开发程序,并指出应关注的关键点。
UAF以贯穿系统全生命周期的需求管理为驱动,以域元模型为支撑,利用统一建模语言(Unified Modeling Language,UML)/系统建模语言(Systems Modeling Language,SysML)进行面向对象的顶层设计,综合考虑系统、能力、人力、业务、资源、制度、安防等要素及其之间的相互关系,提供更细致合理、逻辑关系更紧密的面向对象分解的视图矩阵,以及约80个域元模型,与DoDAF的12组元模型相比,不管在数量上还是在完备性上都有了很大的提升。
图1为UAF提供的视图矩阵,其从2个维度(纵向领域、横向视角)上对复杂组织体进行分解建模。在纵向领域中,从战略目标、业务支撑到技术实现3个层面,将复杂组织体划分为元数据、战略、业务、服务、人力、资源、安防、项目、标准、现实实际资源、需求、总结和概述、字典13个领域;在横向视觉上,每个领域可从静态结构、动态交互、标准支撑等方面进行多角度的细化描述,从分类、结构、联系、流程、状态、交互场景、信息、参数、约束、路线图、可追溯性11个视角进行分析[2]。矩阵内的每个视图都有一个或一组域元模型来支撑、规范相应的建模活动[3]。
基于UAF的体系架构体现了多视图的分析思路,不仅将复杂体系简单化,从各个方面分别进行建模,对各特征进行详细刻画,以准确、全面地描述系统;且通过“分而治之”,可将复杂组织体分解为反映不同领域人员要求和愿望的相对独立的视图,兼顾不同利益攸关者[6]。
UAF具有很强的实用性、通用性和扩展性,主要应用于以下3个方面:
1) 认识复杂组织体。复杂组织体的多样性、复杂性及整体特征的涌现性,使科学、全面地认识复杂组织体变得极为困难。应用UAF面向对象的复杂组织体分解方法,依据视图矩阵,从纵向的13个领域,逐层深化对复杂组织体各层级子系统的认识,每一领域再从横向的11个视角细化分析,形成对复杂组织体全面、深刻的认知。
2) 构建复杂组织体。在深度剖析复杂组织体架构需求的前提下,采用面向对象的方法实现多领域、多视角的视图模型的构建设计以及模型间的集成和导航,实现从战略目标、业务支撑到技术实现协同一致的一体化架构,并通过建模平台实现模型的一致性、完整性检验,确保模型质量。从0到1的构建、设计满足特定目标的复杂组织体,其有价值的体系架构成果也可作为资产进行复用,进而实现从1到n的复杂组织体复制、扩展。
3) 分析复杂组织体。UAF采用了全体系、工程化建模方法贯穿战略筹划、需求分析、业务设计、仿真评估和系统开发等各层级,保证了全周期可评估。通过建立基于UAF的协同仿真环境,利用UAF中带有参数的视图,可进行以下4方面的分析:
(1) 成本分析。提供整个架构中各对象的成本分布情况,找出高消耗的问题所在,从而降低体系的费效比。
(2) 周期分析。针对“时间”这一关键指标,区分流程中的增值时间(如政策编制时间、装备研发时间等)与非增值时间(如政策落实时间、装备故障排除时间等),从而提高体系效率。
(3) 能力分析。通过构建指标体系,评估分析体系的整体性能。
(4) 瓶颈分析。找出影响整体性能提升的关键部分,发现体系瓶颈所在,进一步变更优化体系结构,实现体系的持续性革新。
UAF的视图矩阵采用了抽象的Zachman框架结构,但OMG发布的4个UAF文档均未涉及具体的架构开发程序。为了提高UAF的实用性、可操作性及架构工作的规范性,笔者结合应用UAF的架构实践,借鉴TOGAF的架构开发方法,提出包括预备阶段、需求管理、架构愿景、业务架构、数据架构、标准架构、专业架构、实现方案、验证仿真和架构变更10个阶段的UAF架构开发程序,通过迭代、标准化及贯穿架构全生命周期的需求管理,对复杂组织体实现基于UAF的架构设计、验证仿真及变更优化。
UAF的架构开发流程如图2所示,其是一个以需求管理为中心的循环迭代过程,图中也包括了各阶段需构建的UAF领域。
预备阶段的目标是为复杂组织体的架构工作做好准备,确保有充足的资源推进后续的活动。具体工作包括:分析架构工作的需求、战略意图、文化渴求、业务需求、财务需求等;建立架构团队,明确职责分工;识别利益攸关者,明确其专注点;明确架构原则,制定一套一般性的架构规则和指南;剪裁UAF,包括架构开发方法剪裁及视图矩阵剪裁;选择架构工具,搭建仿真分析平台;开始字典(即术语集)编制工作,并在架构过程中不断迭代完善,这对应着视图矩阵的“字典Dc”。
需求管理是UAF架构开发方法的核心,贯穿于架构开发整个过程,开发的各个阶段都需要与需求管理进行交互,确保各领域的构建均在需求牵引之下,并随着各阶段的开发完善不断更新需求状态。需求管理表示的不是一组静态需求,而是动态流程,并充分考虑实际变更的影响。
与之前的体系架构框架相比,UAF增加了“需求Rq”,强调系统架构过程中需求分析的重要性,充分考虑需求的假设、约束、标准、规范、驱动需求的特定领域原则及组织指南。UAF利用SysML需求图对复杂组织体的架构需求进行分析,将顶层需求分解为细化的子需求,再将子需求具体转化为复杂组织体应具备哪些能力、需进行什么业务(作战)活动、配置哪些人员及资源等。分析时可自顶向下分解需求,也可自底向上收集用户实际需求,经过多轮迭代分析,构建符合实际并可转化为能力的需求体系,其中包括功能需求、非功能需求、业务需求及技术需求等。
架构愿景阶段在需求管理的牵引下,充分考虑利益攸关者的关注点和业务范围、业务约束、业务原则,勾勒出复杂组织体的未来架构,并构建“战略St”(在UAF标准文档中这一领域的英文名称为“Strategic”,描述的是复杂组织体在需求牵引下应具备的能力,其与“战略方针”“战略目标”是不同概念),描述复杂组织体的能力体系如何满足业务目的和战略目标。
主要工作包括:1)识别利益攸关者及其关注点,明确业务能力需求,界定架构工作的影响范围;2)总体概述业务场景(对应于“总结和概述Sm-Ov”),概括描述高层级的业务背景、概念及其相互关系;3)将需求转化为具体的能力,构建“战略St”,设计复杂组织体应具备的能力体系,并在“参数Pm”中定义能力的定量评价指标。
业务架构是复杂组织体的主干框架,涉及UAF视图矩阵中的“业务Op”、“人力Pr”和“资源Rs”。构建支持架构愿景实现的业务模型,是根据架构愿景对业务场景进行的逻辑扩展,以便架构能够从高层级架构需求向下映射至更详细的业务行为。描述复杂组织体如何运行以达成能力目标,是将复杂组织体的能力转化为日常运作的渠道。架构内容包括业务活动如何支撑所需能力的实现,由哪些组织、岗位、人员完成业务活动,以及配置怎样的软硬件资源。
主要工作包括:1)构建业务体系(对应于“业务Op”),分析复杂组织体应具备的能力需要由哪些业务(作战)活动支撑,描述业务活动的内容、结构、流程、状态转换、约束以及可追溯性等;2)业务领域构建完毕后,构建人力体系(对应于“人力Pr”),即由哪些组织、岗位、人员完成各业务活动,各自担负的职责是什么[7-9];3)构建资源体系(对应于“资源Rs”),进行软、硬件及网络资源的配置;4)定义目标架构价值参数(对应“参数Pm”),用于评价业务能力、组织架构的效率及软、硬件资源配置的合理性等。
当大规模架构复杂组织体时,进行数据架构是非常重要的[10]。通过定义数据的概念结构、逻辑结构和物理结构,使数据作为一种资产能够在各应用间无边界地流动,从根本上解决复杂组织体的数据共享问题,数据的结构化及综合性的应用能有效利用数据,积累竞争优势。
主要工作包括:1)构建“元数据Md”,提供与整个体系架构相关的元数据,为体系架构提供支持信息;2)构建纵跨各领域的“信息If”,可在不考虑具体问题的情况下对架构信息和数据定义进行分析,构建概念数据模型(Conceptual Data Model,CDM)、逻辑数据模型(Logical Data Model,LDM)和物理数据模型(Physical Data Model,PDM)。
标准架构确定适用于体系结构部分或整体的协议、标准、规则、指导和政策,既包括网络协议、通信协议等技术标准,也包括操作原则、行业流程等非技术标准。标准架构是架构元素安排、交互和相互依赖的规则。
主要工作包括:架构“标准Sd”,说明架构技术相关标准和惯例,操作标准、业务标准和惯例的分类、结构关系、预期变化以及各标准的适用元素等。
专业架构是相对独立的架构领域,但需要完全整合在复杂组织体整体架构内,主要涉及“服务Sv”及“安防Sc”。
“服务Sv”创建面向服务的体系结构(Service Oriented Architecture,SOA),随着业务环境日渐复杂,复杂组织体所面临的挑战正从效率和自动化问题向管理复杂性和业务敏捷性问题转移。SOA的概念提供了一种架构风格,专门用于简化业务及互操作。将能力结构化为服务,快速识别组织的功能性能力,避免能力的重复建设,利于快速聚合新能力。
主要工作包括:1)构建“服务Sv”,架构直接支持业务领域所需的服务,提供基于服务的解决方案,规范并对服务类型和要求进行分级,设计更高级别的服务组合,描述服务规范对业务活动的映射以及服务规范如何实现系统功能;2)在“参数Pm”中定义服务策略的计算参数。
安防问题在全部架构领域和所有架构开发阶段是普遍存在且极其重要的,但因安防是基础且对业务功能几乎不可见而被单独提出,其根本目的是保护复杂组织体的信息、系统、资产、组织的安全。UAF特别提出了“安防Sc”,以提高整体架构的质量,既可以与其他领域交互,又不干扰体系功能和运行。
主要工作包括:1)架构“安防Sc”,定义安全资产和资产所有者的层次结构、安全约束(策略、法律和指导)、安全控制、安全措施、安全领域及安全策略改进等;2)在“参数Pm”中定义安全风险评估参数。
实现方案阶段直接关注复杂组织体的架构实施,构建“项目Pj”,通过工程化的项目管理方式提供一个实现架构的整体规划和具体的行动计划,明确具体的实施项目和项目里程碑,使架构内容明确,从而提高架构工作的效率。
主要工作包括:构建“项目Pj”,描述项目类型、项目组合、项目依赖关系、项目活动的顺序,确立项目里程碑,描述从当前状态到目标状态的演变过程,并明确在项目的生命周期中如何获得能力、资源和资产。
为了验证架构的合理性、完整性,并为架构变更优化提供定量化依据,在复杂组织体架构建立或实施过程中均需要进行持续的验证评估,使其具有能迅速演进响应能力和业务环境变化的柔性。通过在“实际资源Ar”对组织、软件、硬件及网络资源等进行实际的配置,结合约束模块及约束值属性合理设计评估指标,可通过仿真对重要指标进行分析研究,如关键绩效指标(Key Performance Indicator,KPI)、效率测量(Measures Of Effectiveness,MOE)和真实性能指标(True Performance Indicator,TPI)等分析。
主要工作包括:1)构建“实际资源Ar”,可设计不同的资源配置方案,用于权衡评估,说明资源配置的预期效果;2)完善“参数Pm”中的各领域约束值属性,补全约束模块约束表达式与约束值属性的绑定连接关系,创建约束组合;3)结合架构需求,合理设置能力、业务、服务、人力、资源、项目、安防等各领域的定量分析性能指标,设计并实施静态验证及迭代仿真方案,为下一步的架构优化提供定量化依据。
体系架构是一个能够对技术发展、外部环境变化、内在需求变更及验证评估结果进行快速响应的动态过程,以确保复杂组织体在全生命周期具有足够的活力以及不断优化升级的能力,使架构产出的价值最大化。
主要工作包括:对技术、环境、需求等方面进行持续监控,对验证仿真结构进行分析判断,明确变更的驱动因素(常规业务开发、业务异常、业务创新、技术创新、战略变革),以确定变更的类别(简化变更、增量变更、重新开发架构的变更)及层级(架构领域或视角的变更、架构框架或原则的变更),进而对架构实施变更。
需求管理贯穿于架构开发的全生命周期,并指导、约束各开发阶段的架构。由此,科学、合理、全面地生成需求体系是架构开发成功的关键。需求管理指导复杂组织体从更高层面出发,自上而下,围绕复杂组织体的架构需求、愿景能力,开发业务体系、人力体系及资源体系等架构,实现战略与业务的对准、业务与技术的对准。
通过自顶向下地进行多层级、多角度的需求分析,经过需求捕获、需求分析、需求结构化、从需求到各领域架构设计的转化、需求优先排序等标准化步骤,明确复杂组织体架构的愿景目标,并向下转化为业务设计、服务设计、资源配置及技术实现,确保描述统一,形成能被各类人员共同理解的多视角大图像,并进行科学的结构化表达,使模型和数据完备一致。
多轮迭代体现在架构开发的整个过程中,科学、合理的多轮次迭代是架构开发的重点。架构开发过程中,每当一个新的决定产生,就会出现一次迭代,可能是一次具有完整的架构开发生命周期的迭代,也可能是嵌套在另一个迭代过程中的迭代。迭代包括整体迭代、开发阶段间的迭代和单个开发阶段的迭代3种形式,具体如下:
1) 整体迭代。UAF的架构开发过程以循环方式表示,一个阶段形成的架构产品直接为下一阶段所用,形成一个完整的闭环。
2) 开发阶段间的迭代。UAF的架构开发方法支持跨阶段的迭代,如:标准架构完成后,可随着认识的深入再返回完善业务架构。
3) 单个开发阶段的迭代。为了深化、细化架构内容,UAF的架构开发过程支持单个阶段内架构活动的循环迭代(如:业务架构中对“业务Op”“服务Sv”“人力Pr”“资源Rs”等的开发可以进行循环迭代),以构建更合理完善的映射关系,保证设计的完备性。
UAF是体系架构领域的创新性方法,其具备强大的兼容性、开放性及可扩展性,在复杂组织体架构领域具有广阔的应用前景。笔者提出的UAF架构开发程序为复杂组织体的架构工作提供了通用的开发方法,提高了架构工作的标准化程度,为实现和执行复杂组织体架构提供了较完整的指导,随着架构实践的深入,该方法也应不断变更完善,以具备更强的指导作用。