跳转至

轻量化地定制元模型

Turbo EA 的元模型完全是管理员可配置的——每个卡片类型、字段、子类型、关系和干系人角色都是数据,而非代码。您会忍不住想重新设计它。别这么做。

成功的团队只有在默认字段无法回答他们的问题时才会定制元模型。失败的团队会把第一个月花在把 Application 重命名为 Solution、添加 30 个自定义字段上,最终从未走到一份可用的报告。

元模型中已经包含了什么

在添加任何东西之前,先了解您已经拥有什么。内置的 Application 卡片类型开箱即带有以下字段(以及其他字段):

内置字段 类型 用途
businessCriticality single_select 关键任务 / 重要 / 有用 / 边缘
functionalSuitability single_select 完美 / 合适 / 不足 / 不合理
technicalSuitability single_select 完全合适 / 充分 / 不合理 / 不适当
timeModel single_select(必填) Tolerate / Invest / Migrate / Eliminate——经典的 Gartner TIME 处置
riskLevel single_select 低 / 中 / 高 / 关键
businessValue single_select 驱动组合报告的 Y 轴
costTotalAnnual cost 年度总成本
lifecycle.* 日期 计划 / 引入 / 活跃 / 退出 / 生命周期结束

应用组合合理化所需的一切都已经在那里了,TIME 模型也包含在内。您不需要再添加 TIME 字段——只需填入即可(手动填入或通过计算字段填入,参见您的首次分析)。functionalSuitabilitytechnicalSuitability 这两个传统上驱动 TIME 定位的适配性维度也同样是内置字段。

添加字段前的两问测试

当您真的发现自己需要一个确实不在元模型中的字段时,请自问:

  1. 我会用这个字段来过滤、分组或报告吗? 如果不是,它属于描述或标签——不是字段。
  2. 同一种类型的每张卡片都需要这个相同的答案吗? 如果不是,它是一个关系或附件,不是字段。

如果两个问题都不能回答「是」,就不要加这个字段。

如果您确实需要一个自定义字段

对于罕见的、确实需要全新字段的情况(例如 cloudReadiness 标志、监管分类、客户细分标记),工作流程是:

  1. 进入管理员 → 元模型,点击该类型,切换到字段标签页。
  2. 选择分区(或新建一个),点击 + 添加字段
  3. 填写:
    • 使用小驼峰命名(例如 cloudReadiness)——将成为 JSON 中和公式中的属性键。
    • 标签(并为您支持的每种语言添加翻译——否则非英语用户将看到原始的键)。
    • 类型——textnumbercostbooleandateurlsingle_selectmultiple_select
    • 权重——0 表示不计入数据质量,1+ 表示计入并加权。
    • 必填——首次上线时请保持关闭;一旦必填,会阻止所有现有卡片被批准。
  4. 对于选择类型,添加选项(键 + 标签 + 颜色)并翻译每个选项。
  5. 保存。

该字段会立即在资产清单(列、过滤器)、卡片详情和计算公式中以 <fieldKey> 形式可用。完整参考:管理员 → 元模型

选项:通过计算自动推导字段

除了让用户手动填写字段这种标准方式之外,Turbo EA 还可以使用计算功能,根据同一张卡片上的其他字段(包括内置字段)自动计算字段值。计算出的字段将变为只读并带有「calculated」徽章,使用户无法偏离规则。

最典型的示例是从业务适配维度和技术适配维度推导出 Application 上内置 timeModel 字段的 TIME 模型计算。当您在管理员 → 元模型 → 计算中新建计算时,它已作为公式参考面板中的条目之一提供,因此您可以直接从面板中选取。目标类型 = Application,目标字段 = timeModel;面板提供的公式收录在管理员 → 计算 → 示例公式中。

该公式假定存在两个名为 businessFittechnicalFitsingle_select 字段,选项为 excellent / adequate / insufficient / unreasonable。它们并不在内置元模型中——如果您希望使用此计算,请按上述自定义字段步骤在 Application 上添加它们。

Don't

计算出的 TIME 是一个起步假设,而不是裁定结果。要么在采信前与应用负责人逐项评审每个结果,要么在校验工作坊完成后关闭计算,依赖手动录入。

实践中行之有效的混合模式:在构建资产清单且您主要拥有适配性数据时保持计算开启;在校验工作坊期间关闭计算;之后让它保持关闭,使手动决策得以保留。

备选方案:改用标签组

如果该值是信息性而非可查询的,那么标签组(管理员 → 标签)比自定义字段更轻——无需更改元模型,无需迁移,更易演进。在以下情况使用标签组:

  • 该值是描述性的(「面向客户」、「仅内部」、「2024 年收购」)。
  • 您可能会频繁添加新选项。
  • 您不需要在过滤下拉框中使用它,能边输入边搜索的标签芯片即可。

在以下情况使用自定义字段:

  • 您需要把该值用在组合报告的轴上(X、Y、颜色)。
  • 您希望把它纳入数据质量的加权计算。
  • 它是一份不会频繁变化的受控词表。

应避免的反模式

以下是首次推广中最常见的元模型错误:

不要重命名内置卡片类型

Application 重命名为 Solution 看起来整洁,但会破坏能力热力图、组合报告和各类目录都依赖的概念映射。如果您的组织把它们称为「Solutions」,请设置标签的翻译——底层的 key 仍然保持为 Application

不要在第一天就添加 30 个自定义字段

每个自定义字段都会增加数据收集的摩擦,并稀释数据质量分数。先加一个字段,用一个月,再加下一个。

不要重复创建内置字段

在添加 timeDispositionfuncFittechFitappBusinessValue 之前,请检查已有的字段列表——很有可能已经存在等效的内置字段(timeModelfunctionalSuitabilitytechnicalSuitabilitybusinessValue)。重复字段会让数据分裂并破坏报告。

不要在第一天就让新字段成为 required

Required 会阻止每张没有该值的现有卡片被批准。等您为 80% 以上的卡片填好值之后,再把字段设为必填。

不要用自定义卡片类型替代自定义字段

「移动应用」应当是 Application 的一个子类型,而不是一个新卡片类型。新类型不会免费获得能力映射、组合报告或目录导入。

其他可能用到的轻量扩展

以下是常见的第二轮扩展,但只在真的需要时再添加

需求 添加位置 类型
云就绪度 Application single_select(就绪 / 需要重构 / 留在本地)
面向客户标志 Application boolean
监管分类 Application、DataObject multiple_select(GDPR、PCI-DSS……)
失稳风险类别 Application、IT Component single_select(单点故障等)
成本拆分 Application 额外的 cost 字段,例如 costRunTotalAnnualcostChangeTotalAnnual

每一项都通过了用于组合分析的两问测试。其中几项也很适合改成计算公式而非手动录入——这正是下一页的内容,并以 timeModel 本身作为完整示例。

下一步:您的首次分析:应用合理化