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

班级 19网络工程4班
要求 点击查看
目标 完成需求规格说明书

需求规格说明书

一、团队信息

队名:冲
队员信息:

  • 队长 郑耿松 3119005396
  • 潘伟钲 3119005392
  • 蔡君福 3119005362
  • 郑耿桐 3119005397
  • 陈松坤 3119005366

二、需求规格说明书

项目名称:EasyChat

设计思想:

  整个通信系统以Tomcat作为核心服务器运行,其下另开一个线程运行Netty WebSocket服务器,Tomcat服务器主要处理客户登录、个人信息管理等的HTTP类型请求(通常的业务类型)。
  用户通过浏览器登录后,浏览器会维持一个Session对象(有效时间30分钟)来保持登录状态,Tomcat服务器会返回用户的个人信息,同时记录在线用户,根据用户id建立一条WebSocket连接并保存在后端以便进行实时通信。
  当一个用户向另一用户发起通信,服务器会根据消息内容中的对话方用户id,找到保存的WebSocket连接,通过该连接发送消息,对方就能够收到即时收到消息。当用户注销或退出时,释放WebSocket连接,清空Session对象中的登录状态。

系统功能模块:

包括登录模块和聊天管理模块。

  • 登录模块:使用Session方式维持登录状态,有对应的注销功能,但这里的注销除了清空Session对象,还要释放WebSocket连接,否则造成内存泄露。
  • 聊天管理模块:核心模块,使用Netty框架实现,功能包括信息、文件的单条和多条发送,也支持表情发送。
  • 其他模块:如好友管理模块、聊天记录管理、注册模块等(看具体情况选择实现)

开发环境:

  IDE:idea2021 JDK版本:1.8.0_121
  浏览器:谷歌浏览器、360浏览器(极速模式)(涉及网页前端设计,后端开发表示很苦闷)
  后端:Spring MVC + Spring
  前端:JQuery + Bootstrap 3 + Bootstrap-fileinput
  其中涉及技术:Netty 4 WebSocket + HTTP

系统结构:

  系统采用B/S(Browser/Server),即浏览器/服务器的结构,主要事务逻辑在服务器端(Server)实现。
  借鉴MVC模式的思想,从上至下具体又分为视图层(View)、控制层(Controller)、业务层(Service)、模型层(Model)、数据访问层(Data Access)

其他:

  * 预期用户量:500
  * 真实性:面向各类聊天人群,真实有效
  * 可用性:简单易用

三、项目地址:GitHub地址


四、团队计划

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

五、团队分工

任务 成员
系统设计 全体成员
前端开发 郑耿桐、郑耿松
后端开发 潘伟钲、蔡君福、陈松坤
posted @ 2021-11-09 00:35  ,桐  阅读(111)  评论(0编辑  收藏  举报