团队作业3--需求改进&系统设计
团队作业3-《需求规格说明书》
这个作业属于哪个课程 | 班级的链接 |
---|---|
这个作业要求在哪里 | 作业要求的链接 |
这个作业的目标 | 通过团队协作开发系统,以满足用户需求,实践项目管理流程,培养合作能力。 |
目标
- 需求改进 & 系统设计
需求与原型改进
课堂反馈问题与改进
我们针对课堂上老师的意见进行了需求调整。以下列出具体问题和改进措施:
-
问题1:原型设计没有充分考虑移动端的用户体验。
- 改进1:增加了移动端适配的用户界面设计,优化了移动端视频浏览和互动流程。
-
问题2:缺乏个性化推荐和内容发现功能。
- 改进2:引入了基于用户历史行为和偏好的推荐算法,提供个性化的视频和用户推荐。
-
问题3:需求规格书中对一些模块描述不够详细。
- 改进3:补充了用户注册、登录、个人中心、视频投稿与审核等模块的详细功能描述,包括每个模块的用户交互流程。
用户调研与需求验证
我们通过与目标用户进一步沟通,了解用户需求的核心痛点。通过调查,我们确认了用户关注的主要功能:
- 视频推荐与搜索功能。
- 购物流程简洁,且能快速找到感兴趣的视频内容。
- 用户希望有个性化的视频推荐和个性化的个人空间。
功能定位与优先级分析
根据《构建之法》第5节中的功能优先级分析,采用四个象限来划分功能的优先级:
第一象限:紧急且重要
-
用户注册与登录模块:
-
注册功能后端开发
-
登录功能后端开发
-
会话管理与Token验证
这些功能是实现用户身份认证和会话管理的基础,对于确保系统的安全性和用户数据的完整性至关重要,且通常是用户首次接触系统时必须完成的步骤,因此属于紧急且重要的任务。
第二象限:重要但不紧急
-
视频推荐与展示模块:
-
前端界面设计
-
后端接口开发
-
Elasticsearch搜索集成
这部分功能是提升用户体验和增加用户粘性的关键功能,但它们通常不是用户首次使用系统时的必需功能。因此,虽然这些功能很重要,但可能在开发初期不是最紧急的任务,这些功能对于提升用户满意度和参与度很重要,但它们通常不是用户注册后立即需要的,因此可以归为重要但不紧急的类别。
第三象限:紧急但不重要
-
测试视频推荐模块(部分)
-
测试用户注册与登录模块(部分)
-
测试视频投稿与审核模块(部分)
-
测试消息系统模块(部分)
-
测试个人中心模块(部分)
虽然测试工作对于确保系统质量和稳定性至关重要,但在某些情况下,为了赶进度或满足某些紧急需求,测试工作可能会被暂时搁置或简化。这里的“紧急但不重要”并不是指测试本身不重要,而是指相对于其他开发任务而言,测试工作在特定时期内的优先级可能较低。然而,这并不意味着测试可以被忽视或省略。
第四象限:不紧急且不重要
-
视频筛选功能
-
个人中心与空间模块:
-
个人信息修改页面设计
-
个人作品管理功能
-
收藏夹功能
这部分功能,属于非核心功能、边缘功能或未来规划中的功能,它们在当前阶段可能被视为不紧急且不重要。主要包括一些额外的用户界面美化、非关键性能优化等。
系统设计
架构设计
为了实现需求,系统采用了分层式架构,主要包括以下几个部分:
- 前端层:使用Vue框架与移动端uni-app进行开发,提供响应式的用户体验,支持视频播放、评论互动、个人中心等功能。
- 业务逻辑层:基于Spring Boot实现,处理业务逻辑。
- 数据访问层:采用MyBatis与MySQL、MongoDB数据库进行交互,确保数据存储和访问的高效性。
- 搜索引擎:使用Elasticsearch提升视频搜索速度及推荐系统的准确性。
- 消息队列:通过RabbitMQ实现异步任务处理,例如视频审核、消息通知等。
数据库设计与ER图
数据库的核心表包括:
- 用户表:存储用户信息,支持用户注册、登录和个人信息修改。
- 视频表:存储视频的相关信息,支持视频投稿、查看和点赞。
- 评论表:存储用户对视频的评论内容。
- 消息表:支持用户之间的聊天和通知。
- 个人空间表:展示用户个人作品