赛博厨神——项目系统设计与数据库设计

赛博厨神队 2025-10-20 22:04:38
这个作业属于哪个课程2501_CS_SE_FZU
这个作业要求在哪里团队作业——概要设计和数据库设计
这个作业的目标完成系统,数据库,类图、系统安全和权限设计,进行改进分析并展示团队绩效
其他参考文献无

目录

  • 1. 主要文件链接
  • 1.1 GitCode团队仓库链接
  • 1.2 食悟_系统设计说明书
  • 1.3 食悟_数据库设计说明书
  • 1.4 食悟_系统设计和数据库设计答辩PPT
  • 2. 系统和数据库设计
  • 2.1 体系结构设计
  • 2.2 功能模块层次图
  • 2.3 ER分析
  • 2.3.1 ER图
  • 2.3.2 核心实体及其关系
  • 2.4 表结构设计
  • 2.4.1 用户表
  • 2.4.2 食谱表
  • 2.4.3 步骤表
  • 2.4.4 食材表
  • 2.4.5 分类表
  • 2.4.6 标签表
  • 2.4.7 关联表
  • 2.4.7.1 食谱-食材关联表
  • 2.4.7.2 食谱-分类关联表
  • 2.4.7.3 食谱-标签关联表
  • 2.4.8 评论表
  • 2.4.8.1 食谱评论表
  • 2.4.8.2 帖子评论表
  • 2.4.9 帖子表
  • 2.4.10 点赞表
  • 2.4.11 收藏表
  • 2.4.12 关注关系表
  • 2.4.13 消息通知表
  • 2.4.14 邀请码表
  • 2.4.15 步骤耗时记录表
  • 2.4.16 草稿表
  • 2.4.16.1 食谱草稿表
  • 2.4.16.2 帖子草稿表
  • 2.5 设计思路概述
  • 2.5.1 系统设计思路
  • 2.5.2 数据库设计思路
  • 2.6 uml用况图
  • 3. 类图、系统安全和权限设计
  • 3.1 设计类图
  • 3.2 系统安全和权限设计
  • 3.2.1 密码加密
  • 3.2.2 鉴权机制
  • 3.2.3 权限控制
  • 3.2.4 数据访问限制
  • 3.3 设计思路概述
  • 4. 改进分析
  • 4.1 业务目标
  • 4.2 用户需求
  • 4.3 功能需求
  • 4.4 用户体验
  • 4.5 技术约束
  • 4.6 需求完整性
  • 4.7 资源可行性
  • 4.8 风险分析
  • 4.9 mvp范围
  • 5. 团队绩效
  • 5.1 工作流程
  • 5.2 组员分工与贡献度

1. 主要文件链接

1.1 GitCode团队仓库链接

GitCode团队仓库链接

1.2 食悟_系统设计说明书

食悟_系统设计说明书

1.3 食悟_数据库设计说明书

食悟_数据库设计说明书

1.4 食悟_系统设计和数据库设计答辩PPT

食悟_系统与数据库设计说明书

2. 系统和数据库设计

2.1 体系结构设计

食悟的体系结构设计:系统采用经典的 MVC 分层架构,具体情况如以下表格所示:

层级职责技术栈
表现层(Frontend)用户交互、界面展示、请求发起前端框架(如 Vue/React)、Axios、HTML/CSS/JS
业务逻辑层(Backend - Service Layer)核心业务处理、权限控制、事务管理Spring Boot 3.x + Java 17 + Spring Security + JWT
数据持久层(Data Layer)数据存储、查询、索引、事务PostgreSQL 15+、JPA/Hibernate、JSONB 存储复杂结构

2.2 功能模块层次图

具体结构如下(因为图片太长分成了两个部分):

img

img

2.3 ER分析

2.3.1 ER图

img

2.3.2 核心实体及其关系

1.User(用户)
主键:id
属性:username, password_hash, email, avatar, invite_code, follow_count, fan_count, like_count, created_at, updated_at
关系:
1:N → Recipe(一个用户可发布多个食谱)
1:N → Post(一个用户可发多个帖子)
1:N → Comment(评论)
1:N → Like(点赞)
1:N → Favorite(收藏)
M:N → UserFollow(关注关系)
1:N → InviteCode(管理员生成邀请码)
2. Recipe(食谱)
主键:id
属性:title, description, cover_image, difficulty, difficulty_avg, servings, user_id, created_at, updated_at
关系:
N:1 ← User
1:N → Step(步骤)
M:N → Ingredient(通过中间表 recipe_ingredient)
M:N → Category(通过 recipe_category)
M:N → Tag(通过 recipe_tag)
1:N → RecipeComment
1:N → Favorite
3. Step(步骤)
主键:id
属性:recipe_id, step_order, description, method, recommended_duration, avg_duration, min_duration, max_duration, tips
关系:
N:1 ← Recipe
4. Ingredient(食材)
主键:id
属性:name, image_path, unit
关系:
M:N → Recipe(通过 recipe_ingredient)
5. Category(分类)
主键:id
属性:name
关系:
M:N → Recipe(通过 recipe_category)
6. Tag(标签)
主键:id
属性:name
关系:
M:N → Recipe(通过 recipe_tag)
7. Post(帖子)
主键:id
属性:user_id, recipe_id, content, created_at, updated_at
关系:
N:1 ← User
N:1 ← Recipe(可选关联)
1:N → PostComment
8. Comment(评论)→ 拆分为两个表更清晰
recipe_comment:食谱评论
post_comment:帖子评论
共同属性:id, user_id, content, parent_id(用于嵌套回复), root_id, reply_to_user_id, like_count, created_at
关系:
N:1 ← User
N:1 ← Recipe / Post
9. Like(点赞)
主键:id
属性:user_id, target_type('recipe', 'comment', 'post'), target_id, created_at
关系:
N:1 ← User
多态关联 → Recipe, Comment, Post
10. Favorite(收藏)
主键:id
属性:user_id, recipe_id, created_at
关系:
N:1 ← User
N:1 ← Recipe
唯一约束:(user_id, recipe_id) 防止重复收藏
11. UserFollow(关注关系)
主键:id(或复合主键 (follower_id, following_id))
属性:follower_id, following_id, created_at
关系:
自关联:User ↔ User
12. Message(消息通知)
主键:id
属性:user_id, from_user_id, type, reference_id, content, read_flag, created_at
关系:
N:1 ← User(接收者)
N:1 ← User(发送者)
13. InviteCode(邀请码)
主键:code(字符串唯一)
属性:creator_id, usage_limit, used_count, expires_at, created_at
关系:
N:1 ← User(创建者)
用户注册时校验并递增 used_count
14. StepTimeRecord(步骤耗时记录)
主键:id
属性:user_id, recipe_id, step_id, start_time, end_time, duration_seconds
关系:
N:1 ← User
N:1 ← Recipe
N:1 ← Step
15. Draft(草稿)
recipe_draft & post_draft 表,使用 JSONB 存储未发布的结构化内容

2.4 表结构设计

核心数据库表:
• 用户表:users
• 食谱表:recipe
• 步骤表:step
• 食材表:ingredient
• 食谱-食材关联表:recipe_ingredient
• 分类表:category
• 标签表:tag
• 食谱-分类表:recipe_category
• 食谱-标签表:recipe_tag
• 帖子表:post
• 帖子评论表:post_comment
• 帖子图片表:post_image
• 食谱评论表:recipe_comment
• 食谱评论点赞表:recipe_comment_like
• 收藏表:favorite
• 点赞表:likes
• 用户关注/粉丝表:user_follow
• 用户消息表:user_message

表之间存在外键关联,支持 ON DELETE CASCADE 操作。

所有表均含有 created_at、updated_at 时间戳字段,部分表含有 JSONB 字段用于存储复杂数据(如草稿信息)。

以下是详细信息:

2.4.1 用户表

CREATE TABLE users (
id BIGSERIAL PRIMARY KEY,
uid VARCHAR(20) UNIQUE, -- 自动生成 Uxxx
username VARCHAR(50) UNIQUE NOT NULL,
password_hash TEXT NOT NULL,
email VARCHAR(100),
avatar VARCHAR(255),
invite_code VARCHAR(20),
follow_count INT DEFAULT 0,
fan_count INT DEFAULT 0,
like_count INT DEFAULT 0,
created_at TIMESTAMPTZ DEFAULT NOW(),
updated_at TIMESTAMPTZ DEFAULT NOW()
);

2.4.2 食谱表

CREATE TABLE recipes (
id BIGSERIAL PRIMARY KEY,
title VARCHAR(100) NOT NULL,
description TEXT,
cover_image VARCHAR(255),
difficulty INT DEFAULT 3 CHECK (difficulty BETWEEN 1 AND 5),
difficulty_avg DECIMAL(3,2) DEFAULT 0,
servings INT,
user_id BIGINT NOT NULL,
created_at TIMESTAMPTZ DEFAULT NOW(),
updated_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
);

2.4.3 步骤表

CREATE TABLE steps (
id BIGSERIAL PRIMARY KEY,
recipe_id BIGINT NOT NULL,
step_order INT NOT NULL,
description TEXT NOT NULL,
method INT,
recommended_duration INT DEFAULT 0,
avg_duration INT DEFAULT 0,
min_duration INT DEFAULT 0,
max_duration INT DEFAULT 0,
tips TEXT,
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE CASCADE
);

2.4.4 食材表

CREATE TABLE ingredients (
id BIGSERIAL PRIMARY KEY,
name VARCHAR(100) NOT NULL,
image_path VARCHAR(255),
unit VARCHAR(50)
);

2.4.5 分类表

CREATE TABLE categories (
id BIGSERIAL PRIMARY KEY,
name VARCHAR(50) UNIQUE NOT NULL
);

2.4.6 标签表

CREATE TABLE tags (
id BIGSERIAL PRIMARY KEY,
name VARCHAR(50) UNIQUE NOT NULL
);

2.4.7 关联表

2.4.7.1 食谱-食材关联表

CREATE TABLE recipe_ingredients (
recipe_id BIGINT NOT NULL,
ingredient_id BIGINT NOT NULL,
amount DECIMAL(10,2) NOT NULL,
PRIMARY KEY (recipe_id, ingredient_id),
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE CASCADE,
FOREIGN KEY (ingredient_id) REFERENCES ingredients(id) ON DELETE CASCADE
);

2.4.7.2 食谱-分类关联表

CREATE TABLE recipe_categories (
recipe_id BIGINT NOT NULL,
category_id BIGINT NOT NULL,
PRIMARY KEY (recipe_id, category_id),
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE CASCADE,
FOREIGN KEY (category_id) REFERENCES categories(id) ON DELETE CASCADE
);

2.4.7.3 食谱-标签关联表

CREATE TABLE recipe_tags (
recipe_id BIGINT NOT NULL,
tag_id BIGINT NOT NULL,
PRIMARY KEY (recipe_id, tag_id),
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE CASCADE,
FOREIGN KEY (tag_id) REFERENCES tags(id) ON DELETE CASCADE
);

2.4.8 评论表

2.4.8.1 食谱评论表

CREATE TABLE recipe_comments (
id BIGSERIAL PRIMARY KEY,
recipe_id BIGINT NOT NULL,
user_id BIGINT NOT NULL,
content TEXT NOT NULL,
parent_id BIGINT,
root_id BIGINT,
reply_to_user_id BIGINT,
like_count INT DEFAULT 0,
created_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE CASCADE,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (parent_id) REFERENCES recipe_comments(id) ON DELETE SET NULL,
FOREIGN KEY (root_id) REFERENCES recipe_comments(id) ON DELETE SET NULL,
FOREIGN KEY (reply_to_user_id) REFERENCES users(id) ON DELETE SET NULL
);

2.4.8.2 帖子评论表

CREATE TABLE post_comments (
id BIGSERIAL PRIMARY KEY,
post_id BIGINT NOT NULL,
user_id BIGINT NOT NULL,
content TEXT NOT NULL,
parent_id BIGINT,
root_id BIGINT,
reply_to_user_id BIGINT,
like_count INT DEFAULT 0,
created_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (post_id) REFERENCES posts(id) ON DELETE CASCADE,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (parent_id) REFERENCES post_comments(id) ON DELETE SET NULL,
FOREIGN KEY (root_id) REFERENCES post_comments(id) ON DELETE SET NULL,
FOREIGN KEY (reply_to_user_id) REFERENCES users(id) ON DELETE SET NULL
);

2.4.9 帖子表

CREATE TABLE posts (
id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
recipe_id BIGINT,
content TEXT,
created_at TIMESTAMPTZ DEFAULT NOW(),
updated_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE SET NULL
);

2.4.10 点赞表

CREATE TABLE likes (
id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
target_type VARCHAR(20) NOT NULL CHECK (target_type IN ('recipe', 'recipe_comment', 'post', 'post_comment')),
target_id BIGINT NOT NULL,
created_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
UNIQUE (user_id, target_type, target_id) -- 防止重复点赞
);

2.4.11 收藏表

CREATE TABLE favorites (
id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
recipe_id BIGINT NOT NULL,
created_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE CASCADE,
UNIQUE (user_id, recipe_id) -- 防止重复收藏
);

2.4.12 关注关系表

CREATE TABLE user_follows (
follower_id BIGINT NOT NULL,
following_id BIGINT NOT NULL,
created_at TIMESTAMPTZ DEFAULT NOW(),
PRIMARY KEY (follower_id, following_id),
FOREIGN KEY (follower_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (following_id) REFERENCES users(id) ON DELETE CASCADE
);

2.4.13 消息通知表

CREATE TABLE messages (
id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
from_user_id BIGINT,
type VARCHAR(50) NOT NULL CHECK (type IN ('like', 'comment_reply', 'follow')),
reference_id BIGINT,
content TEXT,
read_flag BOOLEAN DEFAULT FALSE,
created_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (from_user_id) REFERENCES users(id) ON DELETE SET NULL
);

2.4.14 邀请码表

CREATE TABLE invite_codes (
code VARCHAR(32) PRIMARY KEY,
creator_id BIGINT NOT NULL,
usage_limit INTEGER DEFAULT 1,
used_count INTEGER DEFAULT 0,
expires_at TIMESTAMPTZ,
created_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (creator_id) REFERENCES users(id) ON DELETE CASCADE
);

2.4.15 步骤耗时记录表

CREATE TABLE step_time_records (
id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
recipe_id BIGINT NOT NULL,
step_id BIGINT NOT NULL,
start_time TIMESTAMPTZ DEFAULT NOW(),
end_time TIMESTAMPTZ,
duration_seconds INT DEFAULT 0,
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE CASCADE,
FOREIGN KEY (step_id) REFERENCES steps(id) ON DELETE CASCADE
);

2.4.16 草稿表

2.4.16.1 食谱草稿表

CREATE TABLE recipe_drafts (
id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
title VARCHAR(100),
description TEXT,
cover_image VARCHAR(255),
difficulty INT DEFAULT 3,
servings INT,
ingredients_json JSONB,
steps_json JSONB,
categories_json JSONB,
tags_json JSONB,
created_at TIMESTAMPTZ DEFAULT NOW(),
updated_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE
);

2.4.16.2 帖子草稿表

CREATE TABLE post_drafts (
id BIGSERIAL PRIMARY KEY,
user_id BIGINT NOT NULL,
recipe_id BIGINT,
content TEXT,
images_json JSONB,
created_at TIMESTAMPTZ DEFAULT NOW(),
updated_at TIMESTAMPTZ DEFAULT NOW(),
FOREIGN KEY (user_id) REFERENCES users(id) ON DELETE CASCADE,
FOREIGN KEY (recipe_id) REFERENCES recipes(id) ON DELETE SET NULL
);

2.5 设计思路概述

2.5.1 系统设计思路

架构设计:采用三层架构(表现层、业务逻辑层、数据持久层)
表现层:负责用户交互与界面展示,前后端分离,前端通过 RESTful API 与后端通信。
业务逻辑层:基于 Spring Boot 3.x 构建,使用 Java 17,集成 Spring Security 和 JWT 实现用户认证与权限控制。
数据持久层:使用 PostgreSQL 数据库,支持事务、复杂查询和 JSONB 类型的半结构化数据存储。

功能模块化
用户模块(注册、登录、关注、消息)
食谱模块(创建、编辑、分类、标签、评论、点赞、收藏)
社区模块(帖子、评论、点赞)
推荐与统计模块(个性化推荐、步骤耗时统计)
安全与权限
密码加密:BCrypt
鉴权机制:JWT Token
权限控制:普通用户与管理员角色分离,用户只能操作自己的资源

2.5.2 数据库设计思路

数据库选型:PostgreSQL
支持复杂查询、事务、JSONB 类型,适合社交类应用的多变数据结构。
表结构设计:遵循第三范式(3NF)
核心表包括用户、食谱、步骤、食材、分类、标签、评论、点赞、收藏、帖子、草稿、消息等。
使用外键约束确保数据一致性,支持级联删除(ON DELETE CASCADE)。
所有表含 created_at、updated_at 时间戳字段,部分表使用 JSONB 存储复杂结构(如草稿)。
索引与性能优化
针对高频查询字段建立索引(如食谱ID、用户ID、评论父ID等)
使用视图汇总统计信息(如食谱步骤耗时总览)
数据完整性保障
使用触发器自动维护计数器(如点赞数、评论数、难度评分均值)
使用函数封装复杂逻辑(如生成UID、更新统计信息)
扩展性与维护性
支持未来分表分区(如按用户ID分区高频表)
使用 Flyway 等工具管理数据库版本迁移
定期备份、VACUUM、ANALYZE 等维护策略

2.6 uml用况图

img

img

img

img

img

img

img

img

img

3. 类图、系统安全和权限设计

3.1 设计类图

img

img

3.2 系统安全和权限设计

3.2.1 密码加密

所有用户密码在注册/修改时,强制使用 BCrypt 加密存储。
盐值由框架自动生成,不可逆
数据库字段:users.opassword_hash VARCHAR(255) NOT NULL

3.2.2 鉴权机制

用户登录成功后,服务器生成 JWT Token,包含:
sub(用户唯一标识,如 UID)
username
role(USER / ADMIN)
iat(签发时间)
exp(过期时间,默认7天)
客户端每次请求携带 Authorization: Bearer 头部。
使用 Spring Security + JWT Filter 实现无状态鉴权。

3.2.3 权限控制

使用RBAC(基于角色的访问控制)
具体情况如下:

角色可执行操作
普通用户注册、登录、发布食谱/帖子、评论、点赞、收藏、关注他人、查看公开内容
管理员拥有全部权限,可管理用户、生成邀请码、审核内容、封禁账户、查看系统日志等

3.2.4 数据访问限制

核心原则:用户只能操作自己创建或拥有的资源

典型场景:

资源类型访问规则
食谱(recipe)只允许创建者编辑/删除;其他人仅可浏览、评论、收藏
草稿(recipe_draft/post_draft)仅创建者可编辑/删除,其他用户不可见
评论(recipe_comment/post_comment)只允许作者删除自己的评论;回复他人评论需指定目标用户
收藏/点赞(favorite/likes)可自由切换状态,但数据归属明确(user_id 关联)
用户信息(users)仅允许本人修改头像、邮箱、密码;管理员可重置密码或封禁账户

3.3 设计思路概述

本系统安全与权限设计遵循以下原则:
纵深防御:从认证 → 授权 → 数据访问 → 审计,层层设防。
最小权限:用户只能访问必要资源,数据库账号权限严格受限。
自动化审计:关键操作留痕,支持问题回溯与责任划分。
用户体验平衡:安全措施不影响正常使用(如Token自动刷新、无需频繁验证)。
可扩展性:权限模型支持未来扩展角色(如编辑、版主),审计模块可对接SIEM系统。

最终目标:构建一个安全可靠、权限清晰、操作可追溯的食谱社交平台,让用户放心分享美食,同时开发者可以安心迭代功能。

4. 改进分析

我们小组主要通过以下几个方面进行了总结以及改进分析:

4.1 业务目标

评审维度评审内容问题描述评审结果改进建议优先级
业务目标问题识别准确性准确识别年轻群体外卖依赖和食谱技术壁垒问题通过保持当前问题分析方向高
业务目标目标用户覆盖度仅覆盖3类基础用户,缺失家庭主妇、健身人群等不完整补充至少2个典型用户画像,完善用户群体覆盖高

4.2 用户需求

评审维度评审内容问题描述评审结果改进建议优先级
用户需求烹饪小白需求步骤详细、时间明确等需求分析完整真实通过保持当前需求分析,纳入核心功能高
用户需求特殊饮食需求健身、素食等特殊饮食需求完全缺失缺失新增特殊饮食用户画像和对应功能中

4.3 功能需求

评审维度评审内容问题描述评审结果改进建议优先级
功能需求降低烹饪门槛详细步骤指导需求明确合理通过作为核心功能优先开发实现高
功能需求学习交流需求社区功能需求存在但具体互动形式模糊需细化明确社区互动具体形式和功能模块设计中
功能需求内容创作需求菜谱发布需求明确但用户激励机制缺失需完善制定用户创作激励方案和等级体系中

4.4 用户体验

评审维度评审内容问题描述评审结果改进建议优先级
用户体验学习成本控制新用户上手时间要求和使用引导需求缺失未分析补充新手引导流程设计中
用户体验情感化设计成就感和愉悦感等情感需求完全缺失未考虑补充情感化设计需求和用户激励体系低

4.5 技术约束

评审维度评审内容问题描述评审结果改进建议优先级
技术约束多端策略移动端优先策略符合用户使用场景通过保持移动端优先的开发和推广策略高
技术约束图片依赖大量图片使用可能影响加载速度和流量需优化制定图片压缩、缓存方案中

4.6 需求完整性

评审维度评审内容问题描述评审结果改进建议优先级
需求完整性用户角色覆盖重要用户群体缺失,覆盖不全面部分覆盖补充家庭主妇、健身人群等用户画像高
需求完整性业务规则定义内容审核、用户等级等核心规则缺失严重缺失制定完整的业务规则和运营规范文档高
需求完整性数据需求分析统计分析、个性化推荐等数据需求缺失部分覆盖补充数据统计分析和智能推荐需求低

4.7 资源可行性

评审维度评审内容问题描述评审结果改进建议优先级
资源可行性开发人力资源移动端和Web端并行开发资源紧张资源紧张优先开发移动端,Web端分期实施高
资源可行性内容审核资源人工审核工作量大,运营成本压力大资源不足等待后续完善高

4.8 风险分析

评审维度评审内容问题描述评审结果改进建议优先级
风险分析需求理解风险需求理解偏差可能影响产品方向高风险进行多轮用户测试验证高
风险分析需求范围风险需求范围过大影响开发成本和周期高风险控制需求范围高

4.9 mvp范围

评审维度评审内容问题描述评审结果改进建议优先级
MVP范围(最基础需求)菜谱浏览搜索核心功能纳入MVP作为核心功能优先开发高
MVP范围详细步骤展示核心差异化功能纳入MVP作为特色功能重点开发和优化高
MVP范围用户注册登录基础功能,开发成本低,必要性高纳入MVP作为基础功能纳入首版开发高
MVP范围社区互动功能用户价值中等但开发复杂度高排除MVP在基础功能稳定后考虑开发中
MVP范围时间统计功能特色功能但需求待验证,开发成本高排除MVP需求验证后考虑后续版本实现低

5. 团队绩效

5.1 工作流程

如图所示:

img

5.2 组员分工与贡献度

学号姓名工作内容贡献度
102300102肖窈撰写博客随笔9.95%
102300101许云湘撰写博客随笔9.95%
222200334季致涵系统设计说明书后端,数据库部分撰写,以及数据库设计说明书撰写10.16%
222200402王成桢系统设计说明书与数据库设计说明书排版10.06%
102300204黄子妍系统设计说明书,数据库设计说明书整理攥写9.95%
102300105郭晶晶系统设计和数据库设计答辩PPT制作10.16%
102300108陈茜蕾系统设计和数据库设计答辩PPT制作10.06%
102300303梁佳参与系统设计以及数据库设计答辩PPT制作9.95%
102300304林琬茗答辩人(概要设计与数据库设计答辩)9.86%
102300302侯晴宇填写并提交《系统设计和数据库设计评审表》9.86%
...全文
288 回复 打赏 收藏 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
内容概要:本文围绕基于电感电容电流环PI与前馈补偿矩阵构造的跟网型储能变流器,开展dq坐标系下的阻抗理论建模与Simulink仿真对比研究。通过建立储能变流器在dq域的数学模型,设计包含电感电流内环、电容电流中间环和电压外环的多环控制结构,并引入前馈补偿矩阵以提升系统的动态响应能力和稳定性。在此基础上,采用小信号分析法推导系统的输出阻抗模型,构建完整的dq域阻抗理论框架,并利用Simulink平台搭建高保真仿真模型进行频域扫频验证,实现理论建模与仿真结果的精确对比,深入分析控制参数对系统阻抗特性的影响规律,揭示其在抑制并网系统振荡、提升稳定性方面的关键作用,为新能源并网系统的稳定性分析与优化设计提供坚实的理论支撑和技术路径。; 适合人群:具备电力电子、自动控制理论基础,从事新能源发电、储能系统、微电网或电力系统稳定性研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握跟网型储能变流器在dq域的阻抗建模方法;②理解多环控制与前馈补偿对系统阻抗特性的影响机制;③实现理论阻抗模型与Simulink仿真扫频结果的对比验证,支撑并网稳定性分析。; 阅读建议:学习者应结合控制理论与电力电子变换器知识,重点关注数学推导与仿真建模的一致性,建议动手复现Simulink仿真模型并进行参数敏感性分析,以深化对阻抗重塑机理的理解。
内容概要:本文介绍了基于Matlab实现的基本雷达与干扰机仿真系统,旨在通过代码实践帮助读者深入理解雷达系统的工作原理及其在复杂电磁环境中与干扰机的相互作用机制。内容涵盖雷达信号的发射、传播、目标回波接收、微多普勒效应建模、干扰信号的生成与影响分析等关键环节,结合具体的Matlab代码实现了完整的仿真流程,并提供了详尽的结果可视化与性能评估,重点展示了目标探测、时频特征提取、干扰抑制策略等关键技术的实现方法,有助于掌握雷达系统动态特性与抗干扰能力的分析手段。; 适合人群:具备一定Matlab编程基础,对雷达系统、信号处理、电子对抗或通信工程等领域感兴趣的高校学生、科研人员及工程技术人员。; 使用场景及目标:①学习雷达系统的基本构成与工作流程;②掌握雷达回波信号与典型干扰信号(如噪声干扰、欺骗干扰)的数学建模方法;③通过Matlab仿真深入理解微多普勒特征、时频分析技术(如STFT、小波变换)及干扰抑制算法;④为开展雷达目标识别、抗干扰算法设计或电子战系统仿真等前沿研究奠定实践基础。; 阅读建议:建议读者结合提供的Matlab代码逐段运行并调试,重点关注雷达信号模型、目标运动建模、干扰生成模块及信号处理流程,配合文中仿真结果进行对比分析;同时可延伸学习现代信号处理技术如压缩感知、机器学习在雷达中的应用,以提升综合科研与工程实践能力。
基于星形耦合自均流机制的双三相LLC变换器变频调压与多模式切换控制策略研究(Simulink仿真实现)内容概要:本文研究了一种基于星形耦合自均流机制的双三相LLC变换器,重点探讨其变频调压与多模式切换控制策略,并通过Simulink进行仿真实现。该研究旨在解决双三相LLC变换器在不同工作模式下电流不均衡、电压调节不稳定等问题,通过引入星形耦合结构实现自动均流,提升系统效率与可靠性。文中详细分析了变频控制对谐振变换器输出电压的调节机理,设计了多模式平滑切换策略以适应负载变化,确保系统在轻载、重载及瞬态工况下的高效稳定运行。同时,建立了完整的Simulink仿真模型,验证了所提控制策略在动态响应、稳态精度和抗干扰能力方面的优越性。; 适合人群:从事电力电子与电力传动、新能源变换技术及相关领域研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①用于高效率、高可靠性的直流电源系统设计,如电动汽车充电、数据中心供电等;②为多相LLC谐振变换器的均流控制与模式切换提供理论支持和技术方案;③适用于需要高性能电源变换器的工业应用场景,推动先进控制策略在实际系统中的落地应用。; 阅读建议:读者应具备一定的电力电子电路与控制系统基础知识,建议结合Simulink仿真模型同步学习,深入理解控制逻辑的设计细节与参数整定方法,并可通过修改仿真参数验证不同工况下的系统性能,以增强实践理解和创新能力。

103

社区成员

发帖
与我相关
我的任务
社区描述
2501_CS_SE_FZU
软件工程 高校
社区管理员
  • FZU_SE_LQF
  • 木村修
  • 心态773
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧