团队作业3

项目 详情
这个作业属于哪个课程 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience/
这个作业要求在哪里 https://edu.cnblogs.com/campus/gdgy/Class12Grade23ComputerScience/homework/13473
这个作业的目标 对项目进行设计和需求&原型改进,进行Alpha任务分配

团队三:需求改进、系统设计与 Alpha 计划

基于现有文档(docs/dev-guide.mddocs/SRS.mdREADME.md)与已实现功能(预约/冲突校验、报修流转、JWT 登录、前端界面、核心接口测试)。

1. 需求与原型改进

  • 课堂/同行反馈 → 修订
    • 仅有“待审核/处理中”二态,缺少管理员可见性与拒绝路径 → 预约新增 approved/rejected/cancelled,报修新增 in_progress/completed,按角色限制操作(已落地)。
    • 冲突规则含糊 → 明确同房间同日期、时间段重叠且状态为 pending/approved 拒绝创建(已实现并有用例)。
    • 用户可见性不足 → 学生仅看自己的预约/报修,管理员看全部(已实现)。
    • 错误提示缺失 → 前端统一错误提示区域,后端返回字段校验详情。
    • 备份指引缺失 → README 补充 SQLite 备份=复制 data/app.db
  • 目标用户再次访谈要点(加分):痛点=冲突不透明/报修流转不透明;场景=期末高峰预约、夜间灯坏报修;期望=移动端校验、状态清晰、管理员批量处理。
  • SRS 改进(已同步 docs/SRS.md):补状态枚举、冲突规则、角色可见性,补非功能(校验/异常/备份)。
  • 功能优先级(MoSCoW,驱动 WBS):Must=登录/JWT、预约创建+冲突+取消/审批、报修提交+状态、列表可见性、基础校验;Should=前端提示/错误提示、默认账号;Could=签到/违规、图片占位、角色细分;Won’t(本阶段)=复杂审批、富媒体上传。

2. 系统设计(简要)

  • 架构:前后端分离;后端 Express+TS+SQLite(better-sqlite3)分层:路由→JWT 中间件→校验→数据;前端 React+Vite 单页,代理 /api
  • 核心数据表(server/src/db.ts 自动建表):users;bookings(含状态枚举);repairs(含状态枚举)。
  • 关键接口:Auth 登录/当前用户;预约列表/创建/状态更新/删除;报修列表/创建/状态更新。
  • 设计要点:冲突校验 SQL(同房间/同日/时间段重叠且 pending/approved);角色鉴权(管理员审批/他人修改,学生仅改自己);扩展预留签到/违规表。

3. Alpha 任务分配计划

  • Product Backlog(Alpha):鉴权;预约 CRUD+冲突;报修提单+流转;管理员视图;前端校验/提示;备份说明;关键接口测试。
  • Sprint Backlog(2–10h/项示例):
    1. JWT 登录与中间件(后端)
    2. 预约表 + 冲突校验 + 审批接口
    3. 报修表 + 状态更新接口
    4. 前端登录/状态保持 + 预约表单/列表
    5. 前端报修表单/列表 + 管理员按钮
    6. .env.example、README 运行/备份说明
    7. Supertest:登录、预约成功/冲突、报修状态更新
    8. 手工测试清单与截图
  • 甘特/节奏示例(Alpha 一周):D1 环境/鉴权/预约接口;D2 冲突/审批+前端登录预约;D3 报修接口+前端报修;D4 管理视图联调;D5 测试与文档;D6-D7 修缺陷与演示准备。
  • 工具:leangoo/Scrum 看板;任务认领按优先级与依赖。

4. 测试计划

  • 自动化(Supertest):登录成功/失败;预约创建成功、冲突失败、审批/取消;报修提交、管理员更新、学生确认完成。
  • 手工场景:未登录访问受限接口 401;表单必填/时间顺序校验;管理员看全部/学生看个人;备份还原(替换 data/app.db 后可启动)。
  • 节奏与责任:开发同步自测;Alpha 末汇总测试结果/截图;发布说明附运行与默认账号。
  • 资源:server/tests/api.test.ts;运行指引 README.md;需求与接口 docs/SRS.mddocs/dev-guide.md
posted @ 2026-01-07 01:37  何俊朗  阅读(4)  评论(0)    收藏  举报