Files
railwaysystem/docs/issues-v1/04_wave_plan.md
T

10 KiB
Raw Blame History

RailwaySystem Phase 3:开发批次计划 (Wave Plan)

规划目标: 按照依赖关系与业务闭环推进节奏,将 26 个 P0 Issue 分解为 8 个开发批次(Wave 0 ~ Wave 7),实现敏捷迭代、敏捷交付、敏捷验收。


1. Wave 推进总览表

批次 阶段主题 核心 Issue 清单 预估人日 前置准入条件 核心产出物
Wave 0 工程基线与外部准备 ISSUE-11-01, ISSUE-11-02, ISSUE-06-01 2.5 人日 Phase 3 方案审查通过 权限常量基线、字典分类方案、Adapter SPI 及 Mock 桩
Wave 1 基础主数据与计划立项 ISSUE-01-01, ISSUE-01-02, ISSUE-01-03, ISSUE-01-04, ISSUE-01-05, ISSUE-02-01 6.0 人日 Wave 0 权限与工程准备就绪 教师/学员/课程/教室/场地/宿舍基础档案、培训计划立项与生命周期
Wave 2 计划配课、参训与排课 ISSUE-02-02, ISSUE-03-01, ISSUE-03-02, ISSUE-04-01, ISSUE-04-02 7.0 人日 Wave 1 主数据与计划完成 本期课程引入、参训名单(含Excel导入)、排课并发四维冲突锁、完整课程表
Wave 3 住宿分配、门禁与报到 ISSUE-05-01, ISSUE-05-02, ISSUE-06-02, ISSUE-05-03 5.5 人日 Wave 2 参训名单与 Wave 0 SPI 完成 批量住宿智能分配防超卖、调房走读、门禁事务外下发与重试、学员报到时限控制
Wave 4 课次打卡考勤与修正 ISSUE-07-01, ISSUE-07-02 3.0 人日 Wave 2 排课与 Wave 3 报到完成 班牌刷脸签到/签退、INV-01 跨班防护、课次考勤花名册、人工修正留痕
Wave 5 成绩科目、台账与学习记录 ISSUE-08-01, ISSUE-08-02, ISSUE-09-01 5.0 人日 Wave 2 配课与参训名单完成 成绩项目权重 100% 校验(INV-04)、成绩录入上限(INV-05)与跨班(INV-02)校验、全班成绩台账大表、外部学习记录幂等三态接入(INV-03)
Wave 6 综合工作台与成效统计 ISSUE-10-01, ISSUE-10-02 3.0 人日 Wave 2~Wave 5 业务数据链路通畅 培训计划一站式驾驶舱 (PlanWorkbenchVO)、培训成效统计概览 (PlanStatisticsVO)
Wave 7 P0 端到端联调与闭环验收 ISSUE-12-01 2.5 人日 Wave 0 ~ Wave 6 全部 Issue 完成 17 个 P0 核心用例自动化串联测试、业务全生命周期闭环准入测试报告

2. 各 Wave 详尽实施方案

Wave 0:工程基线与外部准备 (Wave 0 - Baseline & Adapters)

  • 目标: 统一全系统的 RBAC 权限字符定义,梳理业务字典与系统配置归属,建立外部系统 Mock 桩,为后续各业务模块扫清底层支撑障碍。
  • 包含 Issue:
    • ISSUE-11-01: RuoYi RBAC 权限体系与按钮授权集成 (Gemini Flash)
    • ISSUE-11-02: 培训业务数据字典与参数配置初始化方案 (Gemini Flash)
    • ISSUE-06-01: 外部设备适配器 SPI 体系与 Mock 桩实现 (Gemini Flash)
  • 可并行 Issue: 本 Wave 的 3 个 Issue 彼此完全独立,可 100% 同步并行开发。
  • 进入条件: Phase 3 文档技术审查完成。
  • 退出准则:
    • 权限字符统一收敛至 train:* 前缀;
    • 字典分类方案清晰无歧义,静态字典与业务数据彻底隔离;
    • 3 大外部 SPI 接口及其 Mock 实现类完成并注入 Spring 上下文。

Wave 1:基础主数据与计划立项 (Wave 1 - Master Data & Plan Creation)

  • 目标: 完成教师、学员(含脱敏与加密)、课程库、空间场地、宿舍基础房间维护,并打通培训计划的基本立项与状态生命周期。
  • 包含 Issue:
    • ISSUE-01-01: 师资主数据管理能力 (Gemini Flash)
    • ISSUE-01-02: 学员主档建档与安全脱敏管理 (Codex)
    • ISSUE-01-03: 课程库基础资料管理 (Gemini Flash)
    • ISSUE-01-04: 教学空间资源维护(教室与实训场地) (Gemini Flash)
    • ISSUE-01-05: 宿舍房间与楼宇基础数据维护 (Gemini Flash)
    • ISSUE-02-01: 培训计划全生命周期创建与管理 (Codex)
  • 可并行 Issue: ISSUE-01-01 ~ ISSUE-01-05 5 个主数据任务可完全并行;ISSUE-02-01 可同步启动。
  • 进入条件: Wave 0 权限与字典基准确定。
  • 退出准则:
    • 各主数据表单能正常录入与检索;
    • 学员身份证号落库已使用安全散列查重且密文存储,查询列表脱敏,日志无明文;
    • 培训计划能成功创建、编辑和执行结训状态流转。

Wave 2:计划配课、参训与排课 (Wave 2 - Plan Configuration & Scheduling)

  • 目标: 围绕培训计划开展本期选课、学员进班(支持单增与 Excel 批量导入)、课次排课及稳定主资源行级排他锁冲突检测,生成完整课程表。
  • 包含 Issue:
    • ISSUE-02-02: 本期培训课程引入与配置 (Gemini Flash)
    • ISSUE-03-01: 本期参训名单维护与单条录入 (Codex)
    • ISSUE-03-02: 参训人员 Excel 批量导入与防重校验 (Codex)
    • ISSUE-04-01: 课次编排与多维度排课并发冲突检测 (Codex)
    • ISSUE-04-02: 培训计划完整课程表聚合展示 (Gemini Flash)
  • 可并行 Issue:
    • ISSUE-02-02 (配课) 与 ISSUE-03-01 (名单) 可并行推进;
    • ISSUE-03-02 在 ISSUE-03-01 完成后推进;
    • ISSUE-04-01 在 ISSUE-02-02 完成后推进;ISSUE-04-02 紧随其后。
  • 进入条件: Wave 1 基础主数据与培训计划立项完成。
  • 退出准则:
    • 课程成功引入计划生成 plan_course_id;
    • 学员成功入班生成 enrollment_id;
    • Excel 批量导入支持容错并反馈错误行;
    • 排课并发压测下杜绝教师/教室/场地/班级重叠穿透,完整课表 VO 正确呈现。

Wave 3:住宿分配、门禁与报到 (Wave 3 - Accommodation, Door Auth & Report)

  • 目标: 解决学员现场报到与在校住宿生活保障,落实宿舍并发预分配防超卖、单人调房、走读退宿、门禁事务外解耦同步与失败重试,以及报到时限告警控制。
  • 包含 Issue:
    • ISSUE-05-01: 批量住宿智能预分配与防超卖控制 (Codex)
    • ISSUE-05-02: 住宿人工调房、走读设置与住宿安排查看 (Codex)
    • ISSUE-06-02: 门禁授权事务后解耦下发与失败手工重试 (Codex)
    • ISSUE-05-03: 学员报到确认与生命周期时限控制 (Codex)
  • 可并行 Issue:
    • ISSUE-05-01 (住宿分配) 与 ISSUE-05-03 (报到确认) 均依赖名单,两者可完全并行开发;
    • ISSUE-05-02 与 ISSUE-06-02 在 ISSUE-05-01 完成后开展。
  • 进入条件: Wave 2 参训名单已就绪、Wave 0 门禁 Mock 桩就绪。
  • 退出准则:
    • 宿舍分配严格性别隔离,SELECT FOR UPDATE 彻底杜绝超卖;
    • 门禁下发失败不回滚住宿事务,支持界面一键重试;
    • 学员报到状态顺利流转,逾期报到准确提示并支持管理员强制放行。

Wave 4:课次打卡考勤与修正 (Wave 4 - Attendance & Rectification)

  • 目标: 支撑教学过程中按课次组织的出勤打卡,落实 INV-01 跨班一致性硬校验,提供考勤名单实时查看与人工修正留痕。
  • 包含 Issue:
    • ISSUE-07-01: 课次班牌打卡签到签退与跨班不变量防护 (Codex)
    • ISSUE-07-02: 课次考勤名单查看与人工考勤状态修正 (Gemini Flash)
  • 可并行 Issue: ISSUE-07-02 依赖 ISSUE-07-01,为串行推进。
  • 进入条件: Wave 2 课次排课已完成、Wave 3 学员已完成报到。
  • 退出准则:
    • 班牌签到/签退成功落库;
    • INV-01 跨班签到拦截测试 100% 阻断;
    • 人工修改考勤结论必须强制标记 manual_flag = 1 留痕。

Wave 5:成绩科目、台账与学习记录 (Wave 5 - Assessment & Ingestion)

  • 目标: 完成本期考核科目与权重配置,支持成绩单条/批量录入,落实 INV-02、INV-04、INV-05,输出动态列成绩台账大表,并提供外部实训自主学习流水的三态幂等接入 (INV-03)。
  • 包含 Issue:
    • ISSUE-08-01: 本期成绩考核项与权重配置 (Codex)
    • ISSUE-08-02: 学员成绩录入、上限校验与全班成绩台账大表 (Codex)
    • ISSUE-09-01: 外部实训系统自主学习流水幂等接入 (Codex)
  • 可并行 Issue:
    • ISSUE-08-01 (科目配置) 与 ISSUE-09-01 (学习记录) 可并行开发;
    • ISSUE-08-02 在 ISSUE-08-01 完成后推进。
  • 进入条件: Wave 2 课程配置与参训名单已就绪。
  • 退出准则:
    • 成绩项目总权重严格校验 100% (INV-04);
    • 打分录入严格限制在 [0, fullScore] 内 (INV-05) 且严禁跨班打分 (INV-02);
    • 全班台账大表准确输出加权总分 weightedTotalScore,无及格线硬阻断;
    • 外部学习记录实现 accepted / duplicate / invalid 三态幂等响应与跨班阻断 (INV-03)。

Wave 6:综合工作台与成效统计 (Wave 6 - Workbench & Statistics)

  • 目标: 将前面各业务阶段汇聚沉淀的数据进行跨表只读聚合,输出培训计划综合工作台驾驶舱与全景成效统计概览。
  • 包含 Issue:
    • ISSUE-10-01: 培训计划综合工作台聚合服务 (Gemini Flash)
    • ISSUE-10-02: 培训计划综合成效统计概览 (Codex)
  • 可并行 Issue: ISSUE-10-01 与 ISSUE-10-02 可完全并行开发。
  • 进入条件: 报到、考勤、成绩与学时业务链路皆已走通。
  • 退出准则:
    • 工作台展示开班全景、今日课表与关键待办,响应时间 < 300ms;
    • 统计概览计算报到率、出勤率、加权平均分与学时,安全防护除以零异常。

Wave 7:P0 端到端联调与闭环验收 (Wave 7 - End-to-End Acceptance)

  • 目标: 串联 17 个 P0 核心用例(UC-01 ~ UC-29),构建端到端自动化测试流水线,作为 Phase 3 研发交付的最终质量关卡。
  • 包含 Issue:
    • ISSUE-12-01: 智慧培训全生命周期主链路端到端集成测试与验收 (Codex)
  • 进入条件: Wave 0 ~ Wave 6 全部 25 个 Issue 开发完成并通过独立单测。
  • 退出准则:
    • 自动化端到端测试用例 100% 绿灯通过;
    • 5 大跨表硬不变量在链路测试中均通过破坏性用例校验;
    • 生成最终《P0 业务主链路准入验收报告》。