112
社区成员
发帖
与我相关
我的任务
分享| 这个作业属于哪个课程 | 软件工程实践-W班 |
|---|---|
| 这个作业要求在哪里 | 团队作业——概要设计与数据库设计 |
| 这个作业的目标 | 完善用况图和类图,并且正式开始开发之前设计好系统和数据库、制定好计划和分工 |
| 其他参考文献 | 《系统设计说明书》国标规范文本、《数据库设计说明书》国标规范文本 |
系统采用分层微服务架构,分为若干层级与组件:
• 前端展示层:学生端 (Vue.js)、管理员端 (Vue.js)
• API网关层:Gateway (Nginx + Lua)
• 业务服务层:上传服务、识别服务、审核服务、通知服务
• AI服务层:CLIP模型、OCR引擎、LLM服务、向量检索服务
• 数据存储层:MySQL、Elasticsearch、Redis、MinIO
设计思路:
• 采用微服务架构,便于模块化开发与独立部署;
• 引入独立的 AI 服务层,用于奖状的智能识别与分类;
• 多存储引擎组合满足结构化数据、全文检索、缓存、文件存储等不同需求。


设计思路:
• 主外键约束 保证数据完整性,防止孤立或错误记录;
• ENUM 枚举字段 规范任务状态与用户角色;
• JSON 字段 存储奖项别名与关键词,增强灵活性;
• 索引优化 提升高频查询性能,如 student_id、status、task_id;
• 时间戳与日志字段 支持操作追溯与系统审计;
• 适度冗余(如任务表中的推荐分值与最终分值)减少跨表查询,提高性能。
类图:

数据流图:

泳道图:

• 网络安全层:HTTPS/TLS 加密、WAF。
• 身份认证层:接入学校 SSO;系统颁发 JWT;支持多因素认证。
• 权限控制层:基于 RBAC 的细粒度权限控制与动态权限验证。
• 数据安全层:传输加密(TLS1.3)、存储加密(AES-256)、密钥管理、敏感信息脱敏、备份恢复。
• 操作审计层:记录操作日志、异常行为监控、安全事件响应(AuditLogs 与日志体系)。
• 身份认证与授权(流程)
身份认证与授权(流程)
->用户通过学校 SSO 登录;
->验证成功后系统颁发 JWT;
->每个 API 请求携带 JWT,网关/服务验证;
->基于 RBAC 验证访问权限;
->会话信息存储于 Redis。
文档还给出 JWT 示例结构
Q:类图上那个为什么要用LLM,和传统只用OCR的有什么区别?
1.OCR 主要负责从奖状或证书图片中识别出文字(如姓名、奖项名称、日期等)。它不了解语义,只会“抄写”图片里的文字。无法判断该奖项的真实类别、等级、或与标准奖项库的对应关系。
2.LLM在这个系统中的主要作用,是作为智能语义判断层。
• LLM 可以“理解”奖项名称的语义,实现奖项标准化,例如匹配系统里有一个标准奖项数据库,包含学校认可的各种奖项,OCR识别出: “大学生数学建模省级一等奖”,标准库里: “全国大学生数学建模竞赛·省赛一等奖”,LLM将两者匹配起来,判断两者是否同一类型。
• 方便用于智能分类与评分,基于奖项级别和类别,为其赋分或确定等级(比如国家级 > 省级 > 校级 一等奖 > 二等奖 > 三等奖)。
• 此外还能实现错误纠正与模糊容忍,能处理格式混乱、部分缺字的证书。
3.类图中对LLM使用的具体部分
AIService.extractText() → 用 OCR 提取文字;
AIService.classifyAward() / compareAwards() → 调用 LLM 进行语义判断与标准匹配;
SubmissionService.processTask() 调用 AIService,最终产出结构化、标准化的奖项数据。
这些函数不是OCR能完成的,而是LLM的职责

| 学号姓名 | 工作内容 | 贡献度 |
|---|---|---|
| 102300431 张宝仁 | 负责确定系统分层微服务架构,完成总体结构设计说明与服务划分;编写系统架构说明文档。 | 30% |
| 132302136 韩冰晨 | 负责上传、识别、审核、通知等业务服务的接口设计与流程图整理;并制作ppt 。 | 14% |
| 102300435 王盛明 | 绘制实体关系图(ER 图),检查表间关系完整性;提出索引优化与字段约束设计建议;制作数据库设计文档。 | 12% |
| 102300428 何振坤 | 依据系统需求完成 Users、Tasks、Awards、AuditLogs 等表结构设计;定义主外键关系与索引策略;制作系统概要设计文档。 | 11% |
| 102300424 曾诗皓 | 设计 CLIP 预判、OCR 提取、LLM 分类、向量检索的调用流程与服务接口;答辩。 | 11% |
| 102300427 黄俊平 | 负责安全架构层次设计(SSO、JWT、RBAC、加密策略);编写权限控制与审计方案。 | 11% |
| 092300303 池博洋 | 负责学生端、管理员端页面结构与交互流程设计;绘制功能模块层次图。 | 11% |
设计阶段的类图最好给出不同功能实现的相关类图;数据流图那边的图不符合数据流图的规范;