第二次团队作业

软件工程博客作业

作业所属课程 https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering24/
作业要求 https://edu.cnblogs.com/campus/gdgy/SoftwareEngineering24/homework/15656
作业的目标 根据上次作业的进度,我们已经完成了代码开发,本次作业是上次作业的延续,进行下一步的原型设计和概要设计。
团队名称 凑企鹅队
团队成员学号-名字 3124004637 徐永盛 3124004632 王睿智 3124004621 黄毓

1. 原型设计链接

https://modao.cc/proto/wXnWTsStesuguZtuLr43U/sharing?view_mode=device&screen=rbpVIjPz2SAMqD9Bf #未命名原型 5-分享 1
后台密码:654321


2.对话交互评分游戏 - 概要设计


一、系统总体架构

1.1 系统分层架构

graph TD UI[表现层 UI Layer] Core[业务逻辑层 Core] API[接口服务层 AI API] DB[数据持久层 Database] UI --> Core Core --> API Core --> DB
mindmap root((对话交互评分游戏)) 界面模块 主界面/场景切换 打字机文本效果 分数闪烁动画 视频预加载 游戏流程模块 场景加载/跳转 6关任务流程 胜负判定 返回主页 对话交互模块 玩家输入 AI 回复 对话记录 评分计算模块 6套独立评分规则 关键词加减分 总分统计 配置工具模块 全局配置 协程工具 场景参数传递

二、UML 设计

2.1 用例图

flowchart LR Player[玩家] System[系统] AI[AI接口] Player --> A(开始/退出游戏) Player --> B(选择游戏场景) Player --> C(输入对话内容) Player --> D(查看AI回复) Player --> E(完成关卡) System --> F(自动计算分数) AI --> G(提供对话回复)

2.2 活动图(业务流程)

flowchart TD A[开始] --> B[启动界面] B --> C[加载主界面] C --> D[选择关卡1-6] D --> E[进入游戏场景] E --> F[玩家输入对话] F --> G[发送请求至AI] G --> H[AI返回回复] H --> I[评分计算] I --> J[显示本轮分数] J --> K{轮次结束?} K -->|否| F K -->|是| L{总分达标?} L -->|是| M[游戏胜利] L -->|否| N[游戏失败] M --> O[返回主界面] N --> O

2.3 类图

classDiagram class UIController { -Config config +ShowDialog() +ShowScore() } class SceneLoad { -string sceneName +LoadScene() +LoadAsync() } class ScoreCalculator { +Calculate() } class DeepSeekAPIManager { +SendMsg() +ReceiveReply() } class Task1_ToWin { +CheckWin() +UpdateScore() } class Config { +string apiKey +string model } class BackToMain { +GoToMain() } UIController --> ScoreCalculator UIController --> DeepSeekAPIManager UIController --> SceneLoad Task1_ToWin --> ScoreCalculator

2.4 时序图(对话评分流程)

sequenceDiagram participant 玩家 participant UIController participant DeepSeekAPIManager participant ScoreCalculator 玩家->>UIController: 输入对话内容 UIController->>DeepSeekAPIManager: 发送AI请求 DeepSeekAPIManager->>AI接口: 调用API AI接口-->>DeepSeekAPIManager: 返回回复 DeepSeekAPIManager-->>UIController: 传递回复 UIController->>ScoreCalculator: 计算本轮分数 ScoreCalculator-->>UIController: 返回得分 UIController->>玩家: 显示回复与分数

2.5 对象协作图

graph LR UIController <--> SceneTransfer UIController <--> DeepSeekAPIManager UIController <--> ScoreCalculator TaskX_ToWin <--> ScoreCalculator TaskX_ToWin <--> SceneLoad All[所有对象] <--> Config

三、数据库设计

3.1 ER 图

erDiagram User { bigint user_id varchar user_name } GameScene { int scene_id varchar scene_name } GameRound { bigint game_id bigint user_id int scene_id } Dialogue { bigint dialogue_id bigint game_id } RoundScore { bigint score_id bigint dialogue_id } ScoreRule { int rule_id int scene_id } AIInteraction { varchar request_id bigint game_id } User ||--o{ GameRound : 参与 GameScene ||--o{ GameRound : 包含 GameRound ||--o{ Dialogue : 拥有 Dialogue ||--|| RoundScore : 对应 GameScene ||--o{ ScoreRule : 拥有 Dialogue ||--o{ AIInteraction : 产生

3.2关系数据模型

数据表名称 包含字段
用户表 用户ID、昵称、创建时间、是否删除
游戏场景表 场景ID、场景编码、场景名称、最大轮次、胜利分数、场景描述
游戏对局表 对局ID、用户ID、场景ID、总分数、当前轮次、是否结束、游戏结果
轮次对话表 对话ID、对局ID、轮次号、玩家消息、AI回复、发送时间
轮次评分表 评分ID、对话ID、本轮分数、评分规则、计算时间
评分规则表 规则ID、场景ID、规则类型、关键词、分值、规则描述
AI交互记录表 请求ID、对局ID、请求内容、响应内容、请求状态、请求时间

3.3 对象 - 关系映射(ORM

1. 用户类(User) ↔ 用户表(t_user)

  • userId ↔ user_id
  • userName ↔ user_name
  • createTime ↔ create_time

2. 游戏场景类(GameScene) ↔ 游戏场景表(t_game_scene)

  • sceneId ↔ scene_id
  • sceneName ↔ scene_name
  • maxRound ↔ max_round
  • winScore ↔ win_score

3. 游戏对局类(GameRound) ↔ 游戏对局表(t_game_round)

  • gameId ↔ game_id
  • userId ↔ user_id
  • sceneId ↔ scene_id
  • totalScore ↔ total_score

4. 对话类(Dialogue) ↔ 轮次对话表(t_dialogue)

  • dialogueId ↔ dialogue_id
  • gameId ↔ game_id
  • playerMsg ↔ player_message
  • aiReply ↔ ai_reply

5. 评分类(RoundScore) ↔ 轮次评分表(t_round_score)

  • scoreId ↔ score_id
  • dialogueId ↔ dialogue_id
  • roundScore ↔ round_score

6. 评分规则类(ScoreRule) ↔ 评分规则表(t_score_rule)

  • ruleId ↔ rule_id
  • sceneId ↔ scene_id
  • keyword ↔ keyword
  • scoreValue ↔ score_value

3. 团队协作记录

3.1 开发计划时间安排

时间 任务 任务
4.27-5.1 系统设计说明书 数据库设计说明书
5.2-5.10 原型设计 概要设计

3.2 开发计划分工安排

成员 系统设计说明书 数据库设计说明书 原型设计 概要设计
徐永盛 1 1
王睿智 1 1
黄毓 1 1

4. 项目资源链接

  1. Github 团队仓库链接:https://github.com/origisxu/CE
  2. 系统设计说明书:【金山文档 | WPS云文档】凑企鹅队_系统设计说明书_20260504204239 https://www.kdocs.cn/l/csyyHm8TZGJz
  3. 数据库设计说明书:【金山文档 | WPS云文档】凑企鹅队_数据库设计说明书 https://www.kdocs.cn/l/cqzZ4N7hqH4o
  4. 原型在线预览链接:https://modao.cc/proto/wXnWTsStesuguZtuLr43U/sharing?view_mode=device&screen=rbpVIjPz2SAMqD9Bf #未命名原型 5-分享 1
posted @ 2026-05-10 18:46  origisxu  阅读(13)  评论(0)    收藏  举报