团队作业2-《需求规格说明书》

一. 团队

1. 队名

同舟共济队

2. 团队组成

姓名 学号
黄峻声(组长) 3123001598
魏杰宗 3123004197
郑邦洲 3123004767
林佳俊 3123004748
蔡宜桓 3123004217
庄楷彬 3123004250
覃锴锋 3123004240
廖唯宇 3123004747

二. 需求规格说明书

1. 项目背景

当前市场上多数聊天软件功能复杂、占用内存高,导致低配置设备(如老旧手机、入门级智能设备)用户难以流畅使用。本项目旨在开发一款轻量级聊天工具,专注于核心功能(文字聊天、图片传输),优化资源占用,提升低端设备用户体验。

2. 项目概述

该项目是一个轻巧的聊天软件,在为低配置设备用户提供流畅的实时聊天及图片传输功能的同时,也为学习能力较弱的人群提供了简单易用的聊天服务。

3. 面向用户分析

用户类型 用户特征 用户需求
低端设备用户 使用老旧手机或低端智能机 在低配置下流畅聊天
老年用户 学习能力差 快速上手聊天软件

4. 功能性需求

  • 登录注册模块

注册:用户通过填写用户id,密码信息可完成注册。
登陆:用户需通过用户id和密码登录平台,不支持找回密码功能。
个人信息:用户在登陆后,可修改自己的昵称等个人信息。

  • 好友对话模块

用户可以选择好友进行一对 一聊天,实时发送和接收消息。可发送文字,单独发送图片。

  • 好友管理模块

用户可以查看自己的好友列表,添加好友、删除好友、查询好友状态等。

  • 聊天记录模块

在服务端保存所有的聊天记录。在客户端,可从本地或服务器请求聊天记录数据,查看历史聊天记录

5. 技术需求

后端服务实现基于以下技术:

  • 使用 Java + Spring Boot + Mybatis-Plus开发,基于maven构建
  • 基于 Spring Security 实现 SSO 登录方案
  • 前后端联合使用WebSocket 和Http协议进行通信,接口设计遵循 Restful 规范
  • 使用 MySQL 持久化存储数据,使用Navicat作为数据库管理工具
  • 利用Redis 实现缓存控制保存聊天记录
  • 利用log4j日志记录

前端服务实现基于以下技术:

  • 利用html,css,javascript构建项目基础页面
  • 使用webpack打包项目
  • 使用vue3优化页面构建

6. 性能需求

  • 响应时间:文字消息发送到接收延迟小于3秒,好友列表加载时间小于1秒
  • 内存占用:运行内存小于50MB

7. 可扩展性

模块化设计,方便后续语音、视频等模块的增加

8. 易用性

设计界面美观简洁,操作逻辑简单,三步操作内完成一个核心功能,如发送图片,文字。

9. 预期的用户数量

项目刚上线时,我们预计使用人数大概在1000人上下。随着后续的宣传推广和产品优化,我们预计使用人数能逐步增加到大约1万人。

10. 系统的真实性,可用性,有价值性

  • 真实性

本项目基于调研所得到的真实结果,希望为用户提供一个功能完善,轻量化的聊天工具。

  • 可用性

本聊天软件将采用简洁直观的设计,让用户三步完成操作即可开始对话。界面重点突出核心功能,新手首次使用也能在10秒内找到聊天入口,实现无门槛的即时通讯体验。

  • 有价值性

这款聊天软件主打轻量化,内存占用极小,老手机也能流畅运行。采用智能省电技术,同电量下比主流软件能收发更多的消息。

11. issues截图

前端

前端仓库链接

后端

后端仓库链接

三. 团队工作情况

1. 时间安排

原时间安排

周数 任务内容
第6周 1. 团队组队、团队博客
2. 团队介绍、成员展示、角色分配、选题确定
3. 制定团队计划安排,团队贡献分的规定
第7周 1. 需求规格说明书
2. 原型设计,队员估计任务难度并学习必要的技术
3. 编码规范完成、平台环境搭建完成、初步架构搭建
第8周 1. 原型改进(给目标用户展现原型,并进一步理解需求)
2. 架构设计,WBS,团队成员估计各自任务所需时间
3. 测试计划
第9、10周 1. 团队项目Alpha任务分配计划
2. 连续7天的Alpha敏捷冲刺,7篇每日Scrum Meeting博客+代码提交
第11周 1. 用户反馈+测试计划改进
2. 团队Alpha阶段个人总结
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理
第12周 1. 团队项目Alpha博客:事后分析

校正后的时间安排

周数 任务内容
第6周 1. 团队组队、团队博客
2. 团队介绍、成员展示、角色分配、选题确定
3. 制定团队计划安排,团队贡献分的规定
第7周 1. 需求规格说明书
2. 原型设计,队员估计任务难度并学习必要的技术
3. 编码规范完成、平台环境搭建完成、初步架构搭建
第8周 1. 原型改进(给目标用户展现原型,并进一步理解需求)
2. 架构设计,WBS,团队成员估计各自任务所需时间
3. 测试计划
第9、10周 1. 团队项目Alpha任务分配计划
2. 连续7天的Alpha敏捷冲刺,7篇每日Scrum Meeting博客+代码提交
第11周 1. 用户反馈+测试计划改进
2. 团队Alpha阶段个人总结
3. 团队项目Alpha博客:发布说明、测试报告、展示博客、项目管理
第12周 1. 团队项目Alpha博客:事后分析

校正计算方法
当前项目进展顺利,暂时不需要调整原定计划。

2. 团队分工

姓名 工作
黄峻声 项目管理,监督项目整体进度
庄楷彬、覃锴锋 前端开发与UI设计
郑邦洲、魏杰宗 后端开发,性能优化
林佳俊、蔡宜桓 产品测试
廖唯宇 文档管理

3. 成员感想

姓名 个人感想
黄峻声 作为项目经理,我主要负责安排项目计划、协调大家合作。在开始管理项目后,我发现管理做得好不好直接关系到项目能不能成功。
魏杰宗 作为后端开发,需要有清晰的架构思维,和规范的协作能力,需要关注性能优化。这次也明白了协作是成功的关键。
郑邦洲 本项目让我对后端开发有了更深入的理解和实践经验,同时也增强了我的问题解决能力。
林佳俊 通过本项目,我掌握了功能测试的方法和流程,也提升了自己的测试能力和团队协作能力。
蔡宜桓 经过本次项目,我了解到了各种测试方法和技术,学习了很多有关测试的流程,令我受益匪浅。并且通过小组合作,也提升了我的沟通能力。
庄楷彬 在这次项目开发中,我负责前端开发部分。这次项目能让我将我学习的内容转化为实际项目,锻炼我的代码编写能力,也能提高我对知识的理解。同时,在团队合作中也能提高我的团队协作能力。
覃锴锋 作为前端开发,我主要负责页面功能的实现与交互设计。通过这次项目,我提升了与后端协作和处理实时通信的能力,也更理解了前端在整个系统中的重要性。
廖唯宇 在本次项目中,我负责博客编写,在博客编写的过程中,与组员深入交流了项目的实现与优化,显著提升了自我的沟通能力和代码编写水平。
posted @ 2025-04-12 19:06  peter456963  阅读(59)  评论(0)    收藏  举报