研发数据迁移映射表覆盖范围评估应看哪些维度

评估研发数据迁移映射表的覆盖范围,实质是核对“应迁数据”是否都被纳入映射口径。建议从实体、字段、用户身份、附件与富文本、链接与层级关系、历史与时间信息六个维度逐项盘点,用“已映射项数÷应映射项数”计算覆盖率,并单独记录缺失、降级和待确认项。覆盖率说明范围完整性,迁移后数据是否可用仍需另行验证。



要点总览(TL;DR)


  • 覆盖范围评估的对象是映射表本身,回答“应迁数据是否都纳入了映射口径”,产出逐维度覆盖率与缺口清单,不判断迁移执行是否成功。
  • 建议按六类维度逐项盘点:实体范围、字段范围、用户身份、附件与富文本、链接与层级关系、历史与时间信息,每类维度单独核对判定要点。
  • 覆盖率=已映射项数÷应映射项数×100%;分母来自源系统盘点导出并固定时点与筛选条件,分子取完全映射项,降级与待确认项单独计数。
  • 缺失、空字段、系统内置项和分母为零的维度需事先约定统计规则:空字段计入分母,明确不迁移的项剔除并说明,分母为零标注为不适用而非100%。
  • 覆盖率只反映范围完整性,不能等同于迁移后数据可用;不同维度不宜加权平均,降级项需单独评估业务影响,并与迁移验证、切换管理的结果核验配合解读。


评估目标:覆盖范围要回答什么问题


覆盖范围评估的对象是映射表本身,回答一个具体问题:源系统中需要迁移的数据,是否都在映射表里有对应的目标位置和处理方式。评估的产出是一份逐维度的覆盖率结果和缺口清单,用来发现遗漏项、降级项和待确认项,为迁移方案补充和资源安排提供依据。


这项评估与另外两类工作有明确分工。工作流、插件行为、权限规则等配置类迁移,关注的是系统行为能否在新环境中复现,属于配置迁移评估;迁移结果核验关注数据落到目标系统后是否完整、可用、业务可继续,属于迁移验证与切换管理。覆盖范围评估处在两者之前,只判断“映射表有没有把该迁的东西纳进来”,不判断迁移执行是否成功。


明确这个边界可以避免两种误用:一是把覆盖率当作迁移成功的证明,二是把配置迁移的问题混入数据映射缺口。评估结论应当写成“某维度覆盖率为多少、缺口有哪些、降级项影响哪些业务”,而不是“迁移可以上线”。



覆盖维度清单:实体、字段、身份、附件与链接


维度划分的作用是让盘点有稳定的分类口径,避免遗漏,也避免同一类数据被重复统计。以下六类维度覆盖研发数据迁移中常见的应迁内容,实际项目可在此基础上增删,但增删需在评估说明中写明理由。


维度 盘点对象 判定是否覆盖的要点
实体范围 工作项类型、需求、缺陷、测试用例、迭代、版本、文档等 源系统中每一类实体是否有对应的目标实体类型;实体数量是否与盘点清单一致
字段范围 系统字段、自定义字段、状态与枚举值、必填与只读属性 每个字段是否有目标字段;字段类型是否兼容;枚举值是否逐项对应;必填与只读属性在目标端是否可满足
用户身份 账号、姓名、邮箱、所属组与角色 账号是否有唯一对应关系;同名或离职账号如何处理;组与角色归属是否在映射表中体现
附件与富文本 附件、图片、评论正文中的内嵌资源 附件是否按实体逐条登记;正文中的图片和嵌入资源是否有处理方式;文件大小与格式限制是否记录
链接与层级关系 父子层级、关联、依赖、跨实体引用 每类关系是否有映射规则;跨实体引用在目标端能否重建;关系两端实体都纳入映射时才计为覆盖
历史与时间信息 创建/更新时间、状态流转历史、评论时间线 时间字段是否保留原值;流转历史与评论时间线是否有承载方式;无法保留时是否登记为降级

实体维度是其他维度的基础。实体类型没有纳入映射,其字段、附件和关系通常也无从谈起,因此盘点时应先锁定实体清单,再逐类展开字段与关系。字段维度要特别关注自定义字段和状态枚举:这两类在源系统中往往由业务团队自行扩展,数量多、命名不统一,容易在映射表中被笼统带过。用户身份维度不能只统计账号数量,还要看组与角色归属,因为权限和通知往往依赖这层关系。附件与富文本维度需要区分独立附件和正文内嵌资源,两者的处理方式通常不同。链接与层级关系维度按关系类型逐类核对,关系两端都覆盖才算覆盖。历史与时间维度则要区分“保留时间值”和“保留变更过程”,后者对审计和追溯更关键。



数据口径:分母、分子与缺失值怎么定


覆盖率要可复算,前提是分母和分子都有固定来源。分母来自源系统盘点导出,导出时需固定时点、筛选条件和导出人,例如“某项目全部未关闭工作项及其字段清单,导出日期为某日”。分子来自映射表的实际条目,按维度逐条计数。两者用同一套键值匹配,才能保证分子分母口径一致。


维度 分母来源 分子来源 缺失与特殊项处理
实体范围 源系统实体类型清单及各类数量 映射表中已登记的目标实体类型 源系统存在但映射表未提及的实体类型计为缺失
字段范围 源系统字段清单(含自定义字段、枚举值) 映射表中逐字段登记的目标字段 空值字段仍计入分母;系统内置且不迁移的字段需在说明中列明并剔除
用户身份 源系统账号、组、角色清单 映射表中的账号对应关系与组角色归属 离职或重复账号单独列出,不直接计入缺失
附件与富文本 按实体统计的附件数量与含内嵌资源的正文条目 映射表中登记的附件处理方式与正文资源处理方式 超出大小限制的附件登记为降级,不计为完全映射
链接与层级关系 源系统关系类型清单及各类关系数量 映射表中逐类关系规则 关系一端实体未纳入映射时,该关系计为待确认
历史与时间信息 需保留的时间字段与历史类型清单 映射表中对应承载方式 仅保留时间值、不保留变更过程的登记为降级

分子需要区分三类结果:完全映射、降级映射、待确认。完全映射指源项在目标端有明确对应且属性可完整承载;降级映射指有对应但部分属性丢失或转换;待确认指映射规则尚未定论。覆盖率的主口径使用完全映射项数,降级与待确认单独列出,避免用“有登记就算覆盖”抬高数字。


缺失值和空字段的处理规则要事先约定。字段在源系统中大量为空,不代表可以不盘点,空字段仍计入分母,因为目标端字段结构需要承载它。系统内置且明确不迁移的项,应在分母中剔除并在评估说明中列明剔除清单。某个维度在源系统中确实不存在,例如项目没有附件,则该维度标注为“不适用”,不按100%计入汇总,也不参与平均。



计算与评估步骤:从盘点表到覆盖率结论


以下步骤按顺序执行,每一步都留下可复核的中间产物,便于他人复算或在下一次评估中对比。


  1. 按维度导出源系统盘点清单并冻结版本。每个维度一份清单,记录导出时点、筛选条件、导出人和数据量。冻结后如需更新,另存新版本并注明差异。
  2. 将映射表条目与盘点清单做键值匹配。为每类对象确定匹配键,例如实体用类型编码、字段用“实体类型+字段标识”、用户用账号。匹配结果标记为已匹配、未匹配、多对一或一对多。
  3. 按维度计算覆盖率并标注降级与待确认。公式为:覆盖率 = 已映射项数 ÷ 应映射项数 × 100%。已映射项数取完全映射项,降级与待确认项在覆盖率之外单独计数。
  4. 汇总缺口清单并给出处置优先级。缺口按影响面排序,例如影响全部工作项的字段缺失优先于个别项目的附件超限;待确认项指定确认人和确认时限。

计算时保持维度独立,不把六个维度的覆盖率直接相加或平均。若需要向上汇报一个总览数字,可以按维度分别列出,并注明各维度分母规模,让读者自行判断权重。评估结果建议形成一张表:维度、应映射项数、完全映射项数、降级项数、待确认项数、覆盖率、主要缺口。这张表既是结论,也是后续补充映射表的工作清单。


在盘点清单和映射表需要多人协作维护时,可以把清单和映射表作为文档或工作项放在同一协作平台中管理,按维度分配负责人、记录确认状态和变更历史。ONES 的迁移方案覆盖项目、工作项、状态、字段、附件和历史记录等内容,迁移用户、用户组与系统配置,问题数据包含属性、属性值、附件和评论;这些迁移范围可以作为映射表盘点的对照参考,具体字段级对应关系仍需在项目评估中逐项确认。



示例:一张映射表覆盖率的计算过程


以下为演示情景,数字用于说明计算方法,不代表任何真实项目。


设定某项目需迁移“缺陷”这一类工作项,盘点清单显示:缺陷共 1,200 条,涉及字段 42 个(系统字段 18 个、自定义字段 24 个),涉及用户账号 86 个,附件 340 个,缺陷间关联关系 210 条,需保留的状态流转历史 1,200 条。


字段维度:映射表登记了 38 个字段的对应关系,其中 35 个为完全映射,3 个自定义字段因目标端类型不兼容登记为降级。覆盖率 = 35 ÷ 42 × 100% ≈ 83.3%,另有降级 3 项、缺失 4 项。缺失的 4 个字段需补充映射规则或确认不迁移。


用户身份维度:86 个账号中 80 个有明确对应,4 个为离职账号待确认归属,2 个因邮箱重复需人工合并。覆盖率 = 80 ÷ 86 × 100% ≈ 93.0%,待确认 6 项。


附件维度:340 个附件中 322 个登记了处理方式,18 个超出目标端大小限制登记为降级。覆盖率 = 322 ÷ 340 × 100% ≈ 94.7%。


关联关系维度:210 条关联中 150 条有映射规则,60 条因关联对象属于未纳入本次迁移的实体类型而计为待确认。覆盖率 = 150 ÷ 210 × 100% ≈ 71.4%,是本次评估中最低的维度,应优先处理。


从结果读出的结论是:字段与关联关系是主要缺口,前者影响缺陷信息的完整表达,后者影响追溯链路;用户身份的待确认项集中在离职账号,需业务方确认归属后再定。降级项单独列出,交由业务方评估可接受程度。



解读与限制:覆盖率能说明什么、不能说明什么


覆盖率反映的是映射表在范围上的完整性,即应迁数据被纳入口径的比例。它不能说明迁移后数据在目标系统中是否可用、字段值是否正确转换、业务流程能否连续运转。覆盖率高的维度仍可能在执行阶段出现转换错误,覆盖率低的维度也可能因为缺口项业务价值低而影响有限,因此覆盖率需要与迁移验证的结果配合解读。


不同维度的覆盖率不宜简单加权平均。实体、字段、用户、附件、关系、历史六类维度的分母规模和业务影响不同,一个总平均数字会掩盖关键缺口。汇报时按维度并列呈现,并标注分母规模,比给出单一总分更有决策价值。


降级映射需要单独评估业务影响。降级项在覆盖率计算中不计入分子,但它们并非全部不可接受,例如部分历史时间线只保留时间值可能满足审计要求。评估时应为每类降级项写明影响范围和业务方的接受结论,而不是统一按缺失处理。


覆盖范围评估的结论应与迁移验证、切换管理的结果核验配合使用。前者回答“映射表是否纳全了”,后者回答“迁移后是否真的可用”。两者都完成,才能对迁移准备程度形成完整判断。对于映射表中尚未明确的链接关系、历史记录保留程度等细节,应在具体项目的迁移评估中逐项确认后再更新覆盖率。



常见问题


源系统里大量字段是空的,盘点时能不能跳过这些字段?


不建议跳过。字段在源系统中为空,目标端的字段结构仍然需要承载它,因此空字段通常仍计入分母,只是不产生实际数据迁移量。真正可以从分母中剔除的是“系统内置且明确不迁移”的字段,剔除时要在评估说明中列出清单和理由,便于他人复核。把空字段直接排除,会让字段维度的覆盖率偏高,掩盖目标端字段结构是否够用的问题。


某个维度在源系统中不存在,覆盖率应该记100%还是0?


两者都不合适,应标注为“不适用”。例如项目本身没有附件,附件维度的分母为零,此时覆盖率没有计算意义。把它记成100%会抬高整体观感,记成0%又会制造并不存在的缺口。处理方式是单独标注不适用,并在汇总时排除该维度,不参与任何平均或加权计算,同时在评估说明中写明判断依据。


降级映射项在覆盖率里算不算已覆盖?


建议不计入覆盖率主口径。覆盖率分子取完全映射项,降级映射和待确认项在覆盖率之外单独计数并列示。降级项并非全部不可接受,例如部分历史时间线只保留时间值可能满足审计要求,因此需要为每类降级项写明影响范围和业务方的接受结论。这样处理可以避免“有登记就算覆盖”抬高数字,也保留了降级项的业务判断空间。


映射表在评估过程中还在补充,覆盖率怎么保证可复算?


关键是固定分母并给映射表留版本。分母按维度从源系统导出后冻结版本,记录导出时点、筛选条件、导出人和数据量;映射表后续补充时另存新版本并注明差异。计算时用同一版本的盘点清单与同一版本的映射表匹配,结论中注明所用版本。这样他人在下一次评估时可以复算,也能对比两次评估之间覆盖率的变化来自哪些补充项。


覆盖率评估做完,是不是就可以安排迁移上线了?


还不能。覆盖范围评估只回答映射表是否把应迁数据纳全了,迁移后数据在目标系统中是否可用、字段值是否正确转换、业务流程能否连续运转,需要由迁移验证与切换管理的结果核验来回答。两类工作都完成,才能对迁移准备程度形成完整判断。评估结论宜写成“某维度覆盖率为多少、缺口有哪些、降级项影响哪些业务”,并据此补充映射表、安排验证重点。