requirement_report.md 4.7 KB

社区活动报名小程序需求澄清与技术方案

1. 需求摘要

为社区居民和社区工作人员建设一个移动端活动报名小程序。首个版本聚焦活动浏览、居民报名、工作人员发布活动和查看报名名单,并以一个月内形成可上线版本为目标。

2. 已确认信息

  • 目标用户:社区居民、社区工作人员。
  • 居民侧能力:浏览活动、报名活动。
  • 工作人员侧能力:发布活动、查看报名名单。
  • 交付约束:希望一个月内上线,预算尽量低。
  • 使用环境:主要在手机上使用。
  • 容量线索:预计同时在线人数不超过 100 人。

3. 待确认问题

  1. 居民和工作人员分别采用什么方式登录,是否需要对接现有社区账号?
  2. 活动需要记录哪些字段,是否包含人数上限、报名截止时间和候补规则?
  3. 居民能否取消报名,工作人员能否手动调整名单?
  4. 报名信息需要保存哪些个人数据,保存多久,谁可以导出?
  5. “一个月内上线”的验收日期、审核流程和成功指标分别是什么?
  6. “预算尽量低”的可接受金额上限是多少?

4. 范围与优先级

Must(MVP 必须具备)

  • 活动列表与活动详情。
  • 居民提交报名并查看报名结果。
  • 工作人员创建、编辑和发布活动。
  • 工作人员查看活动报名名单。
  • 基础角色鉴权和输入校验。

Should(建议具备,待确认)

  • 报名人数上限和重复报名拦截。
  • 报名截止时间控制。
  • 居民取消报名。

Could(后续迭代)

  • 消息提醒、候补队列、名单导出和活动数据看板。

Won't(本期建议不做)

  • 复杂推荐、积分体系、多社区租户和原生 App。

5. 技术方案

以下均为建议方案,待确认

  • 客户端:使用目标小程序平台的原生能力实现移动端页面。
  • 服务端:采用单体 API 服务承载活动、报名和权限模块,以降低一个月交付周期内的复杂度。
  • 数据层:使用关系型数据库保存用户、活动和报名关系,并为“活动 + 用户”设置唯一约束以阻止重复报名。
  • 核心数据流:工作人员发布活动 → 居民浏览并报名 → 服务端校验身份、截止时间和名额 → 写入报名记录 → 工作人员查看名单。
  • 接口草案:活动列表、活动详情、创建/更新活动、提交/取消报名、查询报名名单。接口字段和鉴权方式需在待确认问题闭环后定稿。
  • 实施节奏:第 1 周完成需求确认与原型;第 2 周完成活动和身份模块;第 3 周完成报名闭环与测试;第 4 周完成验收、修复和上线准备。

6. 风险与对策

优先级 风险 触发条件与影响 概率 严重度 缓解措施 确认责任人
身份与权限未定义 无法区分居民和工作人员,可能造成越权发布或数据泄露 开发前确认登录方式和角色授权矩阵 业务负责人、技术负责人
报名规则不完整 并发报名可能超额,取消和候补行为不一致 明确名额、截止、重复报名和取消规则,并在服务端事务中校验 业务负责人
个人数据边界不清 收集或导出名单时产生隐私风险 遵循最小收集原则,确认字段、可见范围和保存周期 数据负责人
一个月范围蔓延 新增提醒、导出等功能导致延期 锁定 Must 清单,其余功能进入迭代池 项目负责人
预算没有上限 技术方案和云资源无法做成本取舍 在架构定稿前确认预算上限和已有资源 项目负责人

7. 验收标准

以下为建议验收标准,需由项目负责人确认

  1. 居民可以在手机端查看已发布活动并成功提交一次报名。
  2. 对同一活动的重复报名会被拒绝,并显示可理解的提示。
  3. 工作人员可以创建活动,并查看与该活动一致的报名名单。
  4. 普通居民不能访问工作人员的发布和名单管理功能。
  5. 在 100 个并发会话的约束场景下,核心报名请求无超额写入。
  6. Must 范围的自动化测试和人工验收用例全部通过。

8. 下一步行动

  1. 由业务负责人回答六个待确认问题并确定 Must 清单。
  2. 由技术负责人确认目标小程序平台、登录方式和现有基础设施。
  3. 由数据负责人确认个人信息字段、权限和保存周期。
  4. 根据确认结果更新接口契约和验收用例,再进入开发。