5.1 概述
本节旨在解释和说明架构中构建块的概念。在此概述之后,有两个主要部分:
构建块介绍(见第5.2节),讨论构建块的一般概念,并解释ABB和SBB之间的区别构建块和ADM(见第5.3节)总结了TOGAF ADM中构建块设计和规范发生的阶段
5.2 构建块入门
本节介绍构建块的概念。
5.2.1 概述
本节介绍构建块的特点。ADM中构建块的使用在第5.3节中单独描述。
5.2.2 一般特征
构建块具有以下通用特征:
■ 构建块是为满足整个组织的业务需求而定义的一组功能 ■ 构建块通常具有与元模型对应的类型(如参与者、业务服务、应用程序或数据实体) ■ 构建块有一个明确的边界,通常被领域专家识别为“事物” ■ 构建块可以与其他相互依赖的构建块互操作。 ■ 一个好的构建块具有以下特征: — 它考虑了实施和使用,并不断发展以利用技术和标准
— 它可以由其他构建块组装而成 — 它可能是其他构建块的子组件 — 理想情况下,构建块是可重复使用和可替换的,并且指定得当构建块的边界和规范应与其实现松散耦合;即应该可以在不影响构建块的边界或规格的情况下以几种不同的方式实现构建块。资产和功能组装成构建块的方式在各个架构之间会有很大差异。每个组织都必须自己决定哪种构建块的安排最适合自己。选择好构建块可以改善遗留系统集成、互操作性和创建新系统和应用程序的灵活性。
系统是由构建块的集合构建的,因此大多数构建块必须与其他构建块互操作。只要这是真的,重 要的是,构建块的接口是公开的,并且相当稳定。
根据架构开发的哪个阶段,可以在不同的细节级别定义构建块。
例如,在早期阶段,构建块可以简单地由名称或大纲描述组成。稍后,一个构建块可以分解为多 个支持构建块,并可能附有完整的规范。
构建块应指定的详细程度取决于架构的目标,在某些情况下,更少的细节可能更有价值(例如, 在展示企业能力时,一张清晰简洁的图片比100页的密集规范更有价值)。
对象管理组织®(OMG®)已经制定了可重用资产规范(RAS)的标准,1 该标准为如何正式描述和管理构建块提供了一个很好的例子。
5.2.3 架构构建块
架构构建块(ABB)与架构连续体有关(见第6.4.1节),并根据ADM的应用进行定义或选择。
5.2.3.1 特点
ABB:
捕获架构需求;例如,业务、数据、应用和技术要求指导SBB的发展
5.2.3.2 规范内容
ABB规范至少包括以下内容:
基本功能和属性:语义明确,包括安全能力和可管理性接口:已选择的集合,已提供互操作性和与其他构建块的关系具有所需功能和命名用户界面的依赖构建块映射到业务/组织实体和政策
5.2.4 解决方案构建块
解决方案构建块(SBB)与解决方案连续体有关(见第6.4.2节),可以采购或开发。
5.2.4.1特点
SBB:
■ 定义哪些产品和组件将实现该功能 ■ 定义实施 ■ 满足业务要求 ■ 产品或供应商是否了解
5.2.4.2 规范内容
SBB规范至少包括以下内容:
特定功能和属性接口;已实施的集合与所需功能和所用接口名称一起使用的所需SBB从SBB到IT拓扑和操作策略的映射跨环境共享的属性规范(不要与功能混淆),如安全性、可管理性、可本地化性、可扩展性性能、可配置性设计驱动因素和约束,包括物理架构SBB和ABB之间的关系
5.3 构建块和ADM
5.3.1 基本原则
本节重点介绍ADM中构建块的使用。第5.2节描述了构建块的一般考虑因素和特征。
5.3.1.1 架构设计中的构建块
架构是架构模型中描述的一组构建块,以及如何连接这些构建块以满足业务总体需求的规范。架构中的各种构建块指定了用于解决特定业务问题的范围和方法。在特定架构的设计中使用构建块有一些一般原则:
架构只需要包含与架构试图解决的业务问题相关的构建块构建块之间可能存在复杂的关系,一个构建块可以支持多个构建块,也可以部分支持单个构建块(例如,“投诉处理”的业务服务将由许多数据实体和可能的多个应用程序组件支持)积木应符合与其类型、企业原则和企业标准相关的标准
5.3.1.2 架构模块设计
识别构建块的过程包括寻找相互作用的能力或资产的集合,然后将它们组合在一起或使它们不同:
■ 考虑三类构建块: — 可重复使用的构建块,如遗留项目 — 作为开发主题的构建块,如新应用程序 — 作为购买对象的构建块;即商用现货(COTS)应用 ■ 使用所需的集成级别将功能绑定或组合到构建块中;例如,可以将遗留元素视为大型构建块,以避免将其分解在早期阶段和最高级别企业的视图中,构建块通常保持在广泛的集成定义中。在这些练习中,通常可以最好地查看服务定义。随着实施考虑的解决,构建块的更详细视图通常可用于解决实施决策,关注关键的战略决策,或帮助评估通用性和可重用性的价值和未来影响。
5.3.2 ADM中的构建块规范过程
随着ADM的遵循,构建块定义的过程逐渐发生,主要在阶段A、B、C和D。这是一个渐进和迭代的过程,因为随着定义的进行,所需功能的详细信息、对架构的约束以及产品的可用性可能会影响构 建块的选择和内容。
下图总结了ADM的关键阶段和步骤,在这些阶段和步骤中,构建块被开发和指定。这些步骤中的 主要工作包括确定实现业务目标和目的所需的ABB。然后,在迭代过程中对选定的ABB集进行细化,得出一组SBB,这些SBB可以现成购买或定制开发。