团队项目第一次作业

作业所属课程 https://edu.cnblogs.com/campus/fzu/202501SoftwareEngineering
作业要求 https://edu.cnblogs.com/campus/fzu/202501SoftwareEngineering/homework/13559
作业的目标 团队项目需求文档编写以及团队介绍
团队名称 YOROZUYA
团队成员学号-名字 102301323吴金超 102301413余思衡 102301420吴限 102301421翁思铖 102301317余佳兴 082300141吴昕昀 102301325王浩楠 102301433李响 102301423魏昀 102301415叶禹瞳 102301422翁俊龙

YOROZUYA 团队介绍

队名:YORZUYA(万事屋)

源自《银魂》中的万事屋

描述文字

项目规划

由于我们开发的项目在市场上已有一些成熟的对标产品(如知乎、稀土掘金等),产品功能需求相对明确且稳定。基于这一特点,团队决定采用瀑布模型作为核心开发方法,该模型的线性顺序和阶段划分能够确保开发过程的有序性和质量可控性。具体开发流程如下:

image-20251106145758676

其中,第 10 - 12 周过程中,前后端根据拟编写的接口文档同步开发,后端开发同时编写对应的单元测试,拟定在第 12 周进行最终的前后端对接。

在项目管理方面,我们团队将采用以下工具确保协作效率:

  • 任务分配与协作:使用飞书进行任务分发、进度跟踪和团队沟通,确保每位成员职责清晰、目标明确
  • 接口管理与调试:采用 Apifox 进行API接口的设计、调试与文档管理,保障前后端开发规范统一、协作顺畅

队员风采

吴金超

学号:102301323

职责:后端开发 & PM

🌟 技能与兴趣

  • 熟悉使用Java进行后端开发,能够开发一个完整的后端系统,熟悉 SpringBoot,MyBatis,Kafka 以及 Docker 等主流技术
  • 掌握 Linux 基本操作、Git 版本管理,能够使用 Git 熟练地管理我的项目。
  • 熟悉目前主流的 AI 算法,了解 MLSys 领域的知识
  • 热爱 Apex Overwatch 等 FPS 游戏

吴限

学号:102301420

职责:前端开发

🌟 技能与兴趣

  • 熟练使用 HTML5,CSS3前端技术,掌握常见的布局方式并能对页面进行高度还原。
  • 熟悉 Javascript 和 ES6 语法并能在项目中使用 ES6 进行实际开发,了解 Typescript。
  • 熟悉React框架的使用,了解 Vue 的框架的使用
  • 了解数据结构与算法、浏览器渲染原理以及前端工程化相关知识。
  • 熟练使用Tailwind CSS,Sass,Less等样式解决方案还原 UI
  • 了解WebPack,Vite等常见构建工具及其相关原理
  • 喜欢玩如 APEX 的 FPS 游戏

余思衡

学号:102301413

职责:后端开发

🌟 技能与兴趣

  • 熟悉Java基础知识,熟悉多线程并发。
  • 熟练使用 MySQL、PostgreSQL、Redis 及常见的优化手段。
  • 熟悉 Spring、MyBatis 等主流开发框架,并手写过 SSM 全家桶(icon:github 478320/SpringByHand), 了解 WebFlux 框架编写,了解Langchain4j,SpringAI,SpringAIMcp等主流 AI 开发框架,了解 WebSocket 协议, 了解 Sofa,Dubbo,Motan,Grpc 等一系列 Rpc 框架的使用,了解消息队列 RabbitMQ, Kafka 的使用和原理。
  • 了解分布式系统的设计与应用,微服务项目的分布式部署
  • 了解 MCP 的客户端使用,了解 SpringAI,Langchain4j 框架应用,Agent 智能编排等
  • 喜欢一些休闲类游戏

李响

学号:102301433

职责:PM

🌟 技能与兴趣

  • 熟练掌握C,C++
  • 初步掌握 Java, Python
  • 擅长制作PPT
  • fps重度爱好者,CS大地球

王浩楠

学号:102301325

职责:后端开发

🌟 技能与兴趣

  • “精通”c/c++,"精通"java
  • 可以简单应用MySQL数据库,利用SQL语句使用数据库
  • 可以初步嵌入使用MySQL数据库
  • 了解JavaWeb的知识
  • 可以初步运用MyBatis,Spring框架

叶禹瞳

学号:102301415

职责:后端开发

🌟 技能与兴趣

  • 熟悉python基础知识,熟悉PyTorch、NumPy等科学计算与深度学习库。
  • 熟悉C/C++相关知识
  • 掌握HTML5/CSS3,了解响应式设计基础。
  • 了解CNN、RNN等经典网络模型原理,具备使用PyTorch框架完成模型搭建、训练、评估的经验。

余佳兴

学号:102301317

职责:后端开发

🌟 技能与兴趣

  • 掌握C/C++, Python, Java

翁俊龙

学号:102301422

职责:前端开发

🌟 技能与兴趣

  • 熟悉 Java 、 C/C++ 等基本知识
  • 具备良好的数据结构与算法基础,能独立实现常见算法和解决实际问题
  • 了解 Linux 常用命令,能在命令行下进行简单编译、运行与调试

翁思铖

学号:102301421

职责:前端开发

🌟 技能与兴趣

  • 初步掌握 Python、Java
  • 较为精通c++,从入门到入土
  • 具备良好的算法和数据结构基础

魏昀

学号:102301423

职责:前端开发

🌟 技能与兴趣

  • 熟练掌握 C/C++
  • 初步掌握 Java, Python
  • 对计算机网络、算法与数据结构有独特理解
  • 喜欢前端开发
  • 爱好玩火影忍者

吴昕昀

学号:082300141

职责:前端开发

🌟 技能与兴趣

  • 掌握 C/C++
  • 掌握 Java, Python
  • 对计算机网络、算法与数据结构有独特理解

团队的首次合照

下图是我们团队第一次线下讨论的合照

团队合照1 团队合照2

项目愿景

我们的团队愿景是:通过本次项目,全体成员不仅能系统巩固软件工程基础知识(如瀑布模型),更将深入实践CI/CD自动化部署与支付系统构建等现代技术。最终目标是打造一个公益性的知识分享平台,致力于促进用户间的友好交流,帮助 CS 学生更好的学习和就业,并通过持续迭代完善平台功能,实现技术成长与社会价值的双赢。

AwesomeCS 软件需求规格文档

1 引言

1.1 目的

本文档旨在定义计算机专业职业发展平台的功能性需求与非功能性需求。本规格说明书面向的读者包括项目管理人员、开发团队、测试团队以及相关利益相关者。通过本文档,各方可对软件产品的功能、性能、设计约束以及验收标准达成共识。本需求规格说明书的编制遵循GB/T 9385-2008国家标准

1.2 项目范围

本项目旨在开发一个面向计算机专业学生和技术求职者的全方位职业发展支持平台。平台核心功能包括博客系统AI学习路径推荐模拟面试付费咨询服务。项目范围涵盖前端用户界面、后端业务逻辑、数据库设计以及AI集成,但不包括第三方支付系统的自主开发,将采用经过认证的第三方支付接口实现支付功能。

1.3 定义、首字母缩写词和缩略语

  • SRS: 软件需求规格说明(Software Requirements Specification)
  • AI: 人工智能(Artificial Intelligence)
  • API: 应用程序编程接口(Application Programming Interface)
  • UI: 用户界面(User Interface)
  • UX: 用户体验(User Experience)
  • GB/T: 国家推荐标准(GuoBiao/TuiJian)

2 总体描述

2.1 产品背景

随着计算机专业学生数量快速增长(2024年全国招生约43.5万人)以及就业形势日益严峻,求职者面临学习路径不清晰缺乏职业指导面试准备不足等挑战。现有平台如知乎、知识星球、牛客和稀土掘金等均无法全面满足计算机专业学生的职业发展需求,存在内容分散、互动性弱或专业性不足等问题。

2.2 产品功能

本平台将采用模块化设计,主要功能模块包括:

  • 用户认证与账户管理模块
  • 博客与内容管理模块
  • AI学习路径推荐模块
  • 模拟面试与反馈模块
  • 付费咨询与交易模块

2.3 用户特征

本平台主要面向三类用户群体:

  • 计算机专业学生(主要用户):需要清晰的学习路径和面试准备指导,缺乏实战经验。
  • 技术求职者(核心用户):希望提升技能、获取面试反馈并建立专业人脉。
  • 已就业专业人士(内容贡献者):可提供付费咨询、分享经验,需要便捷的内容创作工具。

3 具体需求

3.1 功能需求

3.1.1 用户认证与账户管理模块

需求标识 需求描述 优先级 前端交互描述 后端实现逻辑
AUTH-001 用户应能通过邮箱/手机号注册账户 提供输入框以及获取验证码选项。 提供注册、登录、发送验证码接口,并具备基本的校验功能。
AUTH-002 系统应提供密码重置功能,通过邮箱或手机验证码实现。 提供“忘记密码”入口,引导至验证身份(邮箱/手机)和设置新密码的页面。需输入新密码并确认11。 1. 验证用户提交的验证码是否正确且有效。
2. 验证新密码是否符合安全规则。
3. 验证两次输入的密码是否一致。
4. 更新数据库中对应用户的密码字段。
AUTH-003 用户应能编辑个人资料(姓名、职业目标、技能标签等)。 提供个人资料编辑页面,包含表单和提交按钮。支持实时预览头像上传效果。技能标签可采用输入框添加并展示为标签样式。 1. 提供用户信息查询接口。
2. 提供用户信息更新接口,处理表单数据。
3. 头像图片上传至对象存储服务(如OSS)并返回链接

3.1.2 博客与内容管理模块

需求标识 需求描述 优先级 前端交互描述 后端实现逻辑
BLOG-001 用户应能使用支持markdown的编辑器创建、编辑和删除博客文章。 集成Markdown编辑器(如Vditor、TOAST UI Editor),提供编辑和预览模式。 1. 提供文章的增、删、改、查接口。
2. 文章内容以原始Markdown文本形式存储,便于编辑和展示。
BLOG-002 系统应支持文章标签及全文检索功能。 页面顶部提供搜索框,支持输入关键词后实时显示搜索结果列表或跳转到搜索结果页。 后端数据库中文档应有标签和分类两个字段来对博客进行分类
BLOG-003 用户应能对他人文章进行评论、点赞。 在文章详情页底部显示评论列表和评论框。为点赞和收藏按钮设计点击后的状态变化(如颜色改变)。 1. 提供评论的增删接口(删除权限需校验)。
2. 提供点赞/取消点赞,需处理重复提交问题。
3. 提供获取用户点赞/收藏列表的接口。

3.1.3 AI模块

需求标识 需求描述 优先级 前端交互描述 后端实现逻辑
AI-001 系统应能通过AI聊天框与用户交互,分析学习需求。 设计类聊天软件的界面,包含对话框和消息输入区。 1. 封装与大型语言模型(LLM)的对话接口。
2. 可能需要维护对话上下文会话(Session)以支持多轮对话。
AI-002 系统应根据用户目标、技能评估结果生成个性化学习路径。 支持实时显示AI回复过程中的打字机效果(流式输出)。 后端应能使用 MCP 等工具获取用户的喜好和目标岗位等信息,来定制化地为用户生成学习路线信息。
INTERVIEW-001 系统应提供多种面试模式(技术面试、压力面试等)。 提供面试模式选择界面。在面试时应提供麦克风访问,同时前端应输出 AI 返回的语音消息。 根据建立不同类型面试的类型建立不同的 LLM。
后端应集成语音合成,对话,语音识别等 AI 技术
后端应与前端保持 WebSocket 通信

3.1.5 付费咨询与交易模块

需求标识 需求描述 优先级 前端交互描述 后端实现逻辑
PAY-001 专家用户应能自主设置咨询服务价格及可咨询领域。 在“专家个人中心”提供表单,用于编辑和设置咨询价格、可咨询的时间段、擅长领域标签等。 提供专家服务信息的新增、修改和查询接口。
PAY-002 普通用户可浏览专家资料与咨询价格,并直接发起即时付费咨询。 1. 提供专家列表和详情页,展示资料、评价和价格。
2. 提供“立即咨询”按钮,点击后引导用户完成支付并启动咨询(如跳转至实时聊天或视频通话界面)。
1. 创建订单时需预扣款或生成待支付订单。
2. 支付成功后,更新订单状态,并建立用户与专家间的连接(如创建一对一聊天室)。
3. 设计订单状态机(待支付、已支付、咨询中、已完成、已取消等)。
PAY-003 系统应集成微信支付等第三方支付接口。 根据后端返回的支付参数,调用支付SDK发起支付。监听支付结果并通知后端。 1. 封装与支付宝、微信支付等平台的对接逻辑,生成支付参数。
2. 提供支付结果异步通知(Callback)接口,用于验证支付结果并更新业务数据(如订单状态)。
3. 支付相关接口需进行签名验证,防止重放攻击。

3.2 非功能需求

3.2.1 性能需求

  • 响应时间:页面加载时间不超过3秒,AI对话响应时间不超过3秒
  • 并发支持:系统应支持至少5000用户同时在线,核心功能支持100并发访问
  • 数据精度:用户数据录入准确率应达到99.9%,支付交易准确率100%

3.2.2 安全性需求

  • 数据加密:用户密码、支付信息等敏感数据需加密存储
  • 漏洞防护:定期进行安全扫描,防范SQL注入、DDos 等常见攻击

3.2.3 可扩展性需求

  • API设计:采用RESTful架构,便于第三方系统集成

  • 前后端通信格式:前后端响应 Body 必须遵循如下格式,统一开发规范

    {
        "code": 0,
        "info": "",
        "data": "type"
    }
    
  • API接口格式:后端提供的 API 接口统一以 /api 开头,方便对接

3.3 外部接口需求

3.3.1 用户界面

  • 采用响应式Web设计,支持Chrome、Firefox、Safari等主流浏览器
  • 色彩设计:主色调为蓝色,体现科技感与专业性

3.3.2 硬件接口

  • 支持云端部署,适配主流云服务平台(阿里云、腾讯云)

3.3.3 软件接口

  • 支付接口:支付宝API v2、微信支付API v3
  • AI服务:MiniMax语音生成, DeepSeek,DeepSpeech
  • 数据库:MySQL 8.0(主数据库)、Redis 6.0(缓存)

3.3.4 通信接口

  • 采用HTTPS协议进行数据传输,确保通信安全
  • 支持WebSocket实现实时聊天和面试功能

3.4 验收标准

  • 所有功能模块按需求规格实现并通过单元测试

  • 用户界面在浏览器上显示正常

  • 系统响应时间符合性能指标(页面加载<3秒,AI响应<3秒)

  • 安全测试通过,无高危漏洞

  • 完成100人次的用户验收测试,满意度达90%以上

  • 文档齐全(包括接口文档、技术文档)

4 附录

4.1 迭代记录表格

迭代版本 起止时间 主要功能 负责人 状态
V1.0 第 10 周 用户认证、博客系统 MADAO WIP
V1.5 第 11 周 AI学习路径推荐、基础UI优化 未开始
V2.0 第 12 周 模拟面试、付费咨询 未开始
V2.5 第 13 周 性能优化、部署 未开始

4.2 思维导图

下图为我们团队项目初期拟定的思维导图。

image

4.3 ER图

AwesomeCS | DrawSQL

image-20251106171347583

4.4 类图

uml

posted @ 2025-11-06 17:23  shaoxiawjc  阅读(7)  评论(0)    收藏  举报