团队作业3-需求改进&系统设计

这个作业属于哪个课程 计科23级12班
这个作业要求在哪里 团队作业3-需求改进&系统设计
这个作业的目标 改进需求与编写系统设计

一、需求 & 原型改进

1.1 针对课堂反馈的问题与修改

在上次的课堂展示中,老师提出了以下几点建议:

  • 问题1:分享链接功能相关的权限访问问题。
    修改1:在分享设置中增加“最大访问次数”和“最大下载次数”选项,默认不限制,用户可手动设置上限。

  • 问题2:未说明回收站机制是否支持恢复或永久删除。
    修改2:明确回收站支持“恢复原位置”和“彻底删除”两种操作,文件在回收站保留30天后自动清除。

  • 问题3:原型中缺少“上传进度可视化”细节(如速度、剩余时间)。
    修改3:在上传组件中增加实时网速显示、预计剩余时间、已上传百分比等信息,提升用户体验。


1.2 需求规格说明书完善

1.2.1 初稿主要不足

  • 缺少权限模型描述;
  • 回收站机制模糊;
  • 接口规范未提及;
  • 未定义非功能性需求(如并发支持、响应时间)。

本次改进

  • 新增分享链接的访问权限说明;
  • 明确回收站生命周期策略;
  • 新增API接口规范;
  • 增加非功能性需求:支持50人并发上传,单文件上传响应时间 < 2s。

1.2.2 User Story

作为项目经理小王,他在项目冲刺中需将分析报告分享给5位核心成员,系统允许他设置分享链接的访问次数(5次)和下载次数(3次),而非限制人员范围。团队成员通过链接下载时,系统实时统计次数:当第5次访问或第3次下载触发后,链接自动失效,既保障了文件安全又避免了外部滥用。误删文件后,他通过回收站的30天保留期一键恢复数据;同时,系统在50人并发上传时稳定保持单文件响应<2秒,让团队在高峰期高效协作——小王无需再为文件泄露风险或性能瓶颈分心,真正实现“安全可控、高效交付”。


1.3 功能分析四象限(基于优先级)

象限 功能类型 具体功能
第一象限(紧急且重要) 核心必备功能 单/多文件上传、分片上传、文件下载、文件夹管理、用户注册登录
第二象限(重要不紧急) 增强体验功能 分享链接权限限制
第三象限(紧急不重要) 辅助功能 上传进度条可视化、回收站自动清理(30 天)
第四象限(不紧急不重要) 拓展功能 第三方云存储同步(如阿里云 OSS)

1.4 WBS与进度计划调整

基于新需求,更新WBS如下:

阶段 模块 功能点
需求分析与设计(已完成) - 需求规格说明书编写、原型设计、技术预研、用户调研
架构设计与环境搭建(第11周) - 后端/前端架构设计、数据库/API接口设计、开发环境搭建
Alpha开发(第12-13周) 用户模块 注册/登录接口、个人信息管理页面、权限验证逻辑
Alpha开发(第12-13周) 文件上传模块 基础上传、大文件分片上传
Alpha开发(第12-13周) 文件管理模块 文件夹CRUD
Alpha开发(第12-13周) 分享模块 分享链接生成、权限设置
Alpha测试与优化(第14周) - 功能测试用例、Bug修复、性能测试
文档整理与验收(第15周) - 接口文档完善、测试报告编写、验收准备

二、系统设计

2.1整体系统架构

架构图

image

优势
前后端并行开发;
业务逻辑解耦,便于单元测试;
存储策略可配置,支持未来扩展。

2.2 数据库设计

2.2.1 表设计

tb_user:用户表,用于记录用户的各种信息,如账号密码等;
tb_recyclebin:回收垃圾箱,用于存放用户删除的文件;
tb_usersize:用户内存表,存放可用的最大内存及已使用内存;
tb_file:用户文件表,记录用户上传的各种文件与信息;
tb_emailregist:用户验证码表,存放用户验证码及生成时间。


2.2.1 架构图

4d5db2b3cd3a3caba6c924faa083534f


2.3 接口设计

2.3.1 接口示例图

image-1


2.3.2 接口示例说明

/regist/byemail:邮箱注册接口
/login:登录接口
/isLogin:验证是否登录接口
/resetPassword:重置密码接口
/createFolder:创建文件夹接口
/regist/sendEmail:发送邮箱验证码接口
/deleteBinFile:回收站永久删除文件接口
recoverFile:回收站回复文件接口


三、Alpha任务分配计划

3.1 任务选取

功能项 优先级 依赖
用户注册/登录 P0
基础文件上传 P0 用户模块
文件夹管理 P1 用户模块
分片上传 P1 基础上传
分享链接生成 P1 文件管理
回收站 P2 文件删除

3.2 Sprint Backlog

任务 预估工时 负责人 类型
设计用户表 & JWT认证 5h 杨梓城 后端
实现文件分片接收接口 6h 朱一凡 后端
开发上传组件(含进度条) 8h 曾添伟 前端
实现分享链接生成逻辑 5h 邹泓昊 后端
回收站前端页面 6h 黄炳城 前端
编写上传功能测试用例 2h 王彤德 测试

3.3 甘特图

5c03888e89a5f14aab82ceaadb1a4f86


四、测试计划

4.1 测试目标与原则

本项目采用 “测试左移” 原则,将测试活动嵌入整个开发周期,而非仅在开发完成后执行。测试目标包括:

  • 验证核心功能(用户认证、文件上传/下载、分享链接、回收站)的正确性与健壮性;
  • 确保系统满足非功能性需求(如50人并发上传时单文件响应时间 < 2s);
  • 及早发现并修复缺陷,降低后期修复成本;
  • 保障用户体验(如上传进度可视化、权限控制逻辑)。

4.2 测试范围

测试类型 覆盖模块 说明
功能测试 用户模块、文件管理、分享模块、回收站 验证需求规格说明书中的功能点
接口测试 所有 RESTful API 使用 Postman 或自动化脚本验证请求/响应格式、状态码、权限控制
性能测试 文件上传、并发访问 模拟50用户并发上传,监控响应时间、CPU/内存占用
UI/UX测试 上传组件、回收站页面、分享设置页 验证进度条、错误提示、交互流畅性
安全测试 分享链接权限、登录认证 验证访问次数限制、未授权访问拦截

不包含:第三方云存储同步(第四象限拓展功能,Alpha阶段暂不实现)。


4.3 测试时间安排(与开发并行)

时间 测试活动 关联开发阶段
第12周 用户模块单元测试 + 登录接口测试 Alpha开发 - 用户模块
第13周 文件上传/分片接口测试 + 前端组件测试 Alpha开发 - 文件上传模块
第13–14周 分享链接权限逻辑测试 + 回收站功能测试 Alpha开发 - 分享/回收站
第14周 全链路集成测试 + 性能压测 Alpha测试与优化
第15周 回归测试 + 编写最终测试报告 文档整理与验收

4.4 责任分工

角色 职责 对应成员
后端开发人员 编写单元测试、修复测试发现的Bug 杨梓城、朱一凡、邹泓昊
前端工程师 验证UI交互、上传进度可视化效果 曾添伟、黄炳城
测试专员 设计测试用例、执行接口/性能测试、记录缺陷 王彤德
posted @ 2025-11-22 21:32  angelie  阅读(0)  评论(0)    收藏  举报