Jira 分批迁移时,跨批次需求关联最容易出现“对象已到新系统、关系还留在旧系统”的断档。处理思路是把关联从 Jira 的链接关系转成迁移台账里的稳定标识:每批迁移前冻结关联清单,用源端问题键与目标端新键建立映射表,指向未迁移批次的关联先落占位记录,待对方批次完成后回填并核验。ONES 的 Jira 迁移方案覆盖项目、工作项、状态、字段、流程、附件和历史记录,可作为替代目标承接这一过程。
要点总览(TL;DR)
- 跨批次关联的处理核心是把 Jira 链接关系转成迁移台账里的稳定标识:每批迁移前冻结关联清单,用源端问题键与目标端新键建立映射表。
- 指向未迁移批次的关联先落占位记录或迁移备注,保留源键、关联类型和方向,待对方批次完成后按映射表回填。
- 关联状态统一为已迁移、待回填、已回填、已核验四类,占位记录清零才可收尾该批次。
- 核验以源端冻结清单为基准逐条比对,并抽样检查方向、类型和目标对象;出现映射冲突或方向错误时暂停该批次并限定回退范围。
分批迁移的源、目标与关联范围怎么界定
先固定迁移方向:源端是 Jira,目标端是选定的替代系统,问题键、关联类型和关联方向都以 Jira 导出结果为准。方向一旦写反,映射表会把目标端新键当成源键使用,后续回填和核验都会失去基准。批次划分通常按项目、团队、需求域或时间窗口进行,选择哪种维度取决于关联的密集程度:按项目分批时,跨项目链接会成为主要跨批次对象;按需求域分批时,父子关系和史诗归属更容易被切开。批次划分方案应在迁移启动前定稿,并说明每个批次包含哪些项目或需求域。
纳入本阶段范围的关联类型需要逐项列出,常见包括需求之间的链接关系、父子与史诗关系、依赖与阻塞关系,以及跨项目引用。每类关联都要记录它在 Jira 中的名称、方向和目标对象类型,避免不同团队对“关联”“链接”“依赖”使用不同叫法。评论中提到的其他问题、外部文档链接、邮件或聊天记录里的引用,可以列为本阶段不处理的关联,单独登记,等主体迁移完成后再评估。范围清单的交付物是一张表:批次编号、包含项目或需求域、关联类型、关联方向、是否跨批次、责任人。
跨批次关联迁移需要哪些输入与前置依赖
执行前需要拿到四类输入。第一是源端关联清单,从 Jira 导出问题键、关联类型、关联方向、目标问题键和关联创建时间,按批次拆分。第二是目标端承载方式确认,明确替代系统中用哪种字段或关联类型表达需求链接、父子关系和依赖阻塞,并确认双向链接在目标端是存一条关系还是两条。第三是批次顺序与批次间依赖表,标出哪些批次的关联指向后续批次,哪些批次互为上下游。第四是映射表模板、责任人和变更审批方式,规定谁有权修改映射关系、修改后如何通知核验人。
输入缺失时有对应的处理方式:源端关联类型无法完整导出,就先按问题键导出全部链接再人工归类;目标端暂无对应关联类型,就在映射表中标记“待确认承载方式”,该批次的关联迁移暂缓,不先用自由文本替代。批次依赖表缺失时,不应启动涉及跨批次关联的批次,因为无法判断哪些关联应落占位。映射表建议至少包含源问题键、目标问题键、关联类型、关联方向、对方批次、关联状态、占位记录编号、回填时间和核验人,状态统一为已迁移、待回填、已回填、已核验四类。
跨批次需求关联的映射与占位方法
映射表是唯一对照依据,所有关联重建和回填都以它为准。每批迁移前先冻结该批对象的关联清单,冻结后不再接受源端新增关联,新增部分进入下一批处理。迁移执行时按以下顺序操作:
- 为该批次每个工作项生成目标端新键,写入映射表,源键与新键一一对应。
- 处理两端都已迁移的关联,直接按映射表把源键替换为目标键,在目标端重建关联,状态记为已迁移。
- 处理指向未迁移批次的关联,在目标端建立占位记录或迁移备注,保留源问题键、关联类型和关联方向,状态记为待回填。
- 对方批次完成迁移后,按映射表找到占位记录,替换为目标端新键,状态更新为已回填。
- 核验通过后状态改为已核验,占位记录归档。
关联方向和类型需要对应规则。Jira 中的双向链接在目标端如果只存一条关系,重建时只建一次,避免两个方向各建一条造成重复;如果目标端按方向分别存储,则按源端方向逐条重建,并在映射表中记录方向字段。父子与史诗关系属于层级关系,回填时要确认目标端父工作项已存在,否则保持待回填。依赖与阻塞关系带有方向语义,A 阻塞 B 与 B 依赖 A 是同一关系的两种表达,映射时选定一种表达方式并全批统一,防止同一关系被记两次。
| 关联状态 | 含义 | 允许的下一步 |
|---|---|---|
| 已迁移 | 两端对象均已在新系统,关联已重建 | 进入核验 |
| 待回填 | 对方批次尚未迁移,已落占位记录 | 等待对方批次完成 |
| 已回填 | 占位记录已替换为目标端新键 | 进入核验 |
| 已核验 | 方向、类型、目标对象均比对通过 | 批次可收尾 |
在替代系统侧,关联关系和迁移台账需要有稳定的承载位置。ONES 的 Jira 迁移方案围绕项目、工作项、状态、字段、流程、附件和历史记录进行迁移,问题数据包含属性和属性值、附件、评论等信息,项目与系统配置包含问题类型、工作流、字段配置和权限配置。迁移负责人可以把映射表作为独立台账维护,把已回填的关联落到工作项关联上,使每条跨批次关系在目标端有对应记录、在台账中有状态可查。关联链接类型是否在迁移工具覆盖范围内,需要在正式迁移前逐项确认,未覆盖的部分按占位与手工回填处理。
如何核验跨批次关联的完整性与一致性
核验以源端冻结的关联清单为基准,逐条比对映射表,统计已迁移、待回填、已回填、已核验四类数量,并核对总数与源端清单一致。数量对得上只说明没有漏记,还需要抽样检查关联方向、关联类型和目标对象是否正确:从每个批次抽取一定比例的跨批次关联,在目标端打开对应工作项,确认链接指向的对象、方向和类型与源端一致。父子与史诗关系要额外确认层级没有错挂,依赖与阻塞关系要确认方向语义没有反转。
占位记录清零是批次收尾条件。一个批次内仍存在待回填记录时,该批次不能标记完成,也不能关闭对应的迁移任务。核验记录建议保留三类证据:源端关联清单快照、映射表当前版本、差异清单。差异清单逐条记录源键、目标键、差异类型、处理人和处理结果,处理完成后由核验人签字确认。差异分为可当场修正和需回退重做两类,前者如方向填反、类型选错,后者如目标对象映射错误导致关联挂到错误工作项。
分批迁移中的回退与暂停条件
出现以下情况应暂停当前批次:映射表出现同一源键对应两个目标键的冲突;关联方向在目标端与源端相反且无法通过修改单条记录纠正;占位记录无法对应到任何源端关联;核验抽样中发现关联挂错对象的比例超出事先设定的阈值。暂停后先冻结该批次的新增迁移操作,保留现场,由迁移负责人判断是修正映射表还是回退。
单批次回退的范围应限定在该批次已迁移和已回填的关联,不回退其他批次已核验的关联。回退时按映射表逐条撤销目标端关联,恢复占位记录或标记为待回填,已回填关联回退后重新进入待回填状态。回退完成后设置检查点:映射表版本、源端清单快照、目标端关联现状三方对齐,再重新执行该批次。跨批次关联未闭环前不关闭该批次,也不把该批次计入迁移完成率,避免后续批次基于不完整的关联继续推进。
ONES 建议把迁移工具、原厂服务和分阶段切换结合起来,并在正式迁移前确认数据范围、功能匹配和系统适配。对跨批次关联而言,这意味着在第一批迁移前就把关联类型、方向和占位规则确认清楚,把映射表作为贯穿各批次的台账,而不是等迁移中途再补规则。
常见问题
如果某个批次的关联类型在目标系统中找不到对应承载方式,应该先迁还是先等?
建议先等。在映射表中把该关联标记为“待确认承载方式”,该批次的关联迁移暂缓,不要用自由文本或备注字段临时替代,否则后续回填时无法区分正式关联和临时记录。等目标端关联类型确认后,再按映射表统一重建,避免同一类关联出现两种存放方式。
分批迁移过程中源端 Jira 又新增了跨批次关联,怎么处理?
每批迁移前冻结该批对象的关联清单,冻结之后源端新增的关联不进入当前批次,统一登记到下一批处理。冻结时点、冻结范围和新增关联的登记人要写进迁移台账,避免冻结后新增的关联被遗漏,也避免同一关联在两个批次里重复迁移。
双向链接在目标端只存一条关系,回填时会不会漏掉一个方向?
不会,前提是映射表中记录清楚源端的关联方向和目标端的存储方式。目标端只存一条关系时,重建只做一次,并在映射表中注明该关系覆盖两个方向;目标端按方向分别存储时,按源端方向逐条重建。两种方式不能混用,同一批次内要统一规则。
占位记录一直等不到对方批次完成,这个批次能先关闭吗?
不能。占位记录清零是批次收尾条件,存在待回填记录时该批次不计入迁移完成率。如果对方批次因故延期,可以在台账中记录延期原因和预计完成时间,但该批次保持未完成状态,后续批次也不应基于这条未闭环的关联继续推进。
回退一个批次时,已经回填到其他批次的关联要不要一起撤销?
不需要。单批次回退的范围限定在该批次已迁移和已回填的关联,其他批次已核验的关联保持不动。回退后按映射表逐条撤销目标端关联,恢复占位记录或标记为待回填,等映射表、源端清单快照和目标端关联现状三方对齐后再重新执行该批次。
