软工第二次团队作业

成群结队第二次团队作业

原型设计+概要设计


作业总览

项目 内容
作业所属课程 软件工程
作业要求 作业要求
作业目标 完成项目原型设计与概要设计,形成交互原型、UML模型、数据库结构,并制定开发计划与分工安排。
团队名称 成群结队
组长 102301304-余琪丽
组员 052301103-钟媛、102301107-蒋伊妍、102301301-钟扬、102301302-郑乐妍、102301305徐紫嫣、102301307姜品伊、102301309陈芳玲、102301405黄伊萍、102301406洪蓉玫、102301607方怡玥

一、原型设计

原型工具使用

团队使用 figma 原型设计工具绘制软件原型。

前台原型交互描述

用户登录

用户打开应用后,首先看到的是手捧绿植的卡通形象和标语:“小小植物,大大领悟”。点击“开始使用”按钮进入账号认证界面。
认证流程包括:

  • 注册:填写手机号、设置密码并确认,支持验证码注册。

  • 登录:已注册用户输入手机号和密码登录,支持找回密码。
    8cd426b9f504aa6e4fe7b3bfaa37c0a4_720

智能提醒与种植日记

成功登录后,进入主功能区域,核心是植物养护管理。主页动态展示植物列表,并提示浇水时间。系统根据植物状态和天气推送养护建议。 例如:提醒用户为多肉浇水或为长势不佳的满天星补充营养。同时用户可通过“加号”进入植物管理界面,查看和添加植物,输入植物照片、名称、品种、种植日期等信息。

a7154ad9c43ebfadba58d78a68630a9a_720

用户可以添加植物日记,记录养护活动以及植物照片,同时可以查看详细的“植物日记”,它按时间顺序记录了每株植物的每一次浇水、施肥等养护活动及笔记。

5019b1d2699825adb00caf8fa1f8461c_720

AI问答助手

内置“AI问答助手”,允许用户随时就养护难题(如“多肉要多久浇一次水”)进行提问,并能获得专业、细致的个性化解答,形成了一个完整的“记录-提醒-咨询”养护闭环。

d34a4d061cdff3eb7405e3f5670c7cf9_720

个人中心

用户可以通过底部导航栏“我的”切换到个人中心页面。页面顶部展示了用户的植物概览数据(如拥有4株植物、17天养护天数),下方则整合了“个人资料”、“更改密码”等账户设置选项。
3ef6c01c326bd2ad27373917f1e7a1a8_720

后台原型交互描述

应用的管理台界面核心目标是让运营人员能够掌握整个系统的健康状况与业务数据全景。界面采用了经典的左侧导航搭配右侧内容区的布局。导航菜单清晰地划分了后台的核心功能模块,包括“用户管理”、“植物档案管理”、“AI助手管理”等,使得管理员可以快速在不同业务模块间切换。

右侧的主内容区是信息展示的核心,设计为高效的数据驾驶舱形式。顶部以一系列关键指标卡片的形式,呈现了“用户总数”、“植物档案总数”等最高优先级的运营数据。下方则集成了多块数据可视化看板:“用户增长看板”通过折线图展示用户趋势;“功能使用占比”以环形图直观反映各核心功能的使用频率;“系统运行数据”则用进度条的方式,实时监控“AI问答成功率”等关键技术服务指标的健康度。

“异常待处理项”列表将需要人工介入的系统问题(如接口错误、提醒延时)汇总呈现,并为每一项都配备了“查看”和“忽略”的快捷操作按钮。
e25f50d60cf61ad7dc45cee33dcb60b2_720

规则描述

该应用的规则设计核心在于确保用户账号安全与提供智能化的植物养护指引。在账号管理层面,注册流程设有严格的验证机制:用户需输入符合格式要求的手机号,并设置满足一定强度规则的新密码,同时必须通过“再次输入密码”进行一致性校验。

进入应用后,核心的植物养护规则开始发挥作用。系统内置了智能提醒逻辑,它会综合植物的种类、历史养护记录(如最后浇水日期)以及实时环境数据(如当日温度)来生成个性化建议。

在“我的”页面,规则进一步体现在数据记录与交互功能上。AI问答助手并非简单的关键词匹配,而是基于一个结构化的知识体系进行响应。当用户询问“多肉要多久浇一次水”时,助手会依据品种、养护环境等多重变量,输出详细参考指南,而并非一个固定的答案。同时,“植物日记”功能自动记录用户的每一次养护操作,如浇水、剪枝,并据此动态计算和更新“距离下次浇水还有X天”这样的状态信息,形成了“记录-分析-提醒”的完整数据闭环。


二、概要设计

1. 功能模块与运行逻辑

​ 整个应用以“智能植物养护”为核心,构建了一个前后端分离、服务化的软件架构。前端作为用户交互的入口,通过响应式界面统一承载了四大功能模块:用户中心、智能养护提醒、AI养护助手、种植日记。这些功能模块并非孤立存在,而是围绕“植物档案”这一数据核心,形成了一个有机的整体。

​ 在运行逻辑上,后端采用基于Python FastAPI的微服务架构,确保了各业务模块的高内聚与低耦合。当用户在前端进行操作时,请求会被路由至不同的后端服务。例如,查看提醒时,“提醒引擎服务”会协同工作:它首先从MySQL中查询用户的植物习性及历史养护记录,同时通过集成的MCP天气服务获取实时环境数据,最后运用内置的规则模型进行综合计算,生成个性化的浇水或日照建议。而当用户向AI助手提问时,请求则会被发送至“AI服务”,该服务不仅会调用大型语言模型,更会精准检索本地的植物知识库,确保返回的建议既通俗易懂又科学准确,同时支持多轮对话以模拟真实的专家交流。

​ 数据流是系统协同工作的生命线。所有结构化的用户信息、植物档案和日记日志都持久化存储在MySQL主数据库中,而高频访问的提醒规则或会话数据则缓存在Redis中,以提升响应速度。用户上传的植物图片等静态资源由云存储服务托管。最终,重要的提醒和通知会通过第三方推送服务触达用户,从而在用户、植物、环境数据与AI智能之间建立起一个闭环的、不断优化的智能养护生态系统。

数据流:

  • 结构化的用户信息、植物档案和日记存储在 MySQL 数据库中。

  • 高频访问数据缓存于 Redis,植物图片由云存储托管。

  • 提醒和通知通过第三方推送服务发送。

    系统整体架构图:

    6d8416f41949d7a2a1d7c0ba02baebac_720

2. UML设计

需求分析用例图
image

业务流程活动图
d3ae4fd8faea66023b1236356867e475_720

后端类图
image

用户中心时序图
image

智能养护提醒时序图
image

AI养护助手时序图
image

种植日记时序图
image

系统整体结构协作图
d412fe35d6d92bf775c016b84dcd4fcf


三、数据库设计

E-R图

f9d800767a31ab2077b1fe73bf092b39

关系数据模型

1.users(用户表)

字段名 类型 长度 主键 允许空 默认值 说明
user_id bigint 20 AUTO_INCREMENT 用户ID
username varchar 50 用户名
email varchar 100 邮箱
phone varchar 20 NULL 手机号
password varchar 255 密码
avatar_url varchar 255 NULL 头像URL
location_city varchar 100 NULL 所在城市
notification_preferences json NULL 通知偏好
created_at datetime CURRENT_TIMESTAMP 创建时间
updated_at datetime CURRENT_TIMESTAMP 更新时间
is_deleted tinyint 1 0 删除标记

2.plants(植物表)

字段名 类型 长度 主键 允许空 默认值 说明
plant_id bigint 20 AUTO_INCREMENT 植物ID
user_id bigint 20 用户ID
plant_type_id int 11 植物种类ID
nickname varchar 100 植物昵称
personality_signature varchar 255 NULL 个性签名
plant_date date 种植日期
initial_photo_url varchar 255 NULL 初始照片
location varchar 100 NULL 摆放位置
status varchar 20 healthy 生长状态
created_at datetime CURRENT_TIMESTAMP 创建时间
updated_at datetime CURRENT_TIMESTAMP 更新时间

3.plant_types(植物种类表)

字段名 类型 长度 主键 允许空 默认值 说明
plant_type_id int 11 AUTO_INCREMENT 种类ID
name varchar 100 名称
scientific_name varchar 100 NULL 学名
water_freq_days int 11 7 浇水频率
light_need varchar 50 光照需求
optimal_temperature varchar 50 NULL 适宜温度
description text NULL 养护说明
care_instructions json NULL 详细指南

4.care_logs(养护日志表)

字段名 类型 长度 主键 允许空 默认值 说明
log_id bigint 20 AUTO_INCREMENT 日志ID
plant_id bigint 20 植物ID
care_type varchar 50 养护类型
care_date datetime CURRENT_TIMESTAMP 养护时间
notes text NULL 备注
image_url varchar 255 NULL 图片链接
weather_condition varchar 100 NULL 天气状况
created_at datetime CURRENT_TIMESTAMP 创建时间

5.reminders(提醒任务表)

字段名 类型 长度 主键 允许空 默认值 说明
reminder_id bigint 20 AUTO_INCREMENT 提醒ID
user_id bigint 20 用户ID
plant_id bigint 20 植物ID
reminder_type varchar 50 提醒类型
reminder_content text NULL 提醒内容
scheduled_at datetime 计划时间
is_completed tinyint 1 0 是否完成
is_urgent tinyint 1 0 是否紧急
trigger_condition varchar 100 NULL 触发条件
completed_at datetime NULL 完成时间
created_at datetime CURRENT_TIMESTAMP 创建时间

6.sensor_data(传感器数据表)--未来实现设备拓展

字段名 类型 长度 主键 允许空 默认值 说明
data_id bigint 20 AUTO_INCREMENT 数据ID
sensor_id bigint 20 传感器ID
soil_moisture decimal 5,2 NULL 土壤湿度
temperature decimal 5,2 NULL 温度
humidity decimal 5,2 NULL 湿度
light_intensity decimal 8,2 NULL 光照强度
recorded_at datetime CURRENT_TIMESTAMP 记录时间
created_at datetime CURRENT_TIMESTAMP 创建时间

7.ai_conversations(AI对话记录表)

字段名 类型 长度 主键 允许空 默认值 说明
conversation_id bigint 20 AUTO_INCREMENT 对话ID
user_id bigint 20 用户ID
plant_id bigint 20 NULL 植物ID
user_message text 用户消息
ai_response text AI回复
message_type varchar 50 general 问题类型
conversation_context json NULL 对话上下文
created_at datetime CURRENT_TIMESTAMP 创建时间

四、团队协作记录

时间安排

时间 预期开发计划 产出
10.10-10.23 智能体开发 成功完成天气智能体开发
10.24-11.4 需求调研、选题 成功完成选题报告+需求分析文档
11.5-11.20 原型设计、概要设计 成功完成《系统设计说明书》+原型模型
11.20-11.24 实现初步前端及后端框架搭建
11.25-11.30 基本实现预期功能
11.31-12.8 测试和完善

分工安排

成员 分工
102301304余琪丽 PM
102301107蒋伊妍 原型设计
102301301钟扬 后端开发,撰写系统设计说明书
102301302郑乐妍 后端开发,撰写系统设计说明书
052301103钟媛 后端开发,撰写随笔
102301305徐紫嫣 后端开发,撰写数据库设计说明书
102301307姜品伊 前端开发,原型设计
102301405陈芳玲 后端开发,撰写数据库设计说明书
102301406洪蓉玫 前端开发,撰写系统设计说明书
102301607方怡玥 测试,撰写随笔

协作过程记录

讨论协商记录

​ 团队开展线下与线上讨论协商,对于每一个项目节点合理地对每位成员进行分工安排,展示了团队在项目实施过程中的沟通交流、问题研讨及决策过程,也体现了团队合理划分任务、充分利用成员专长的协作模式,为项目的高效推进提供了坚实保障。
image

专业项目管理软件

​ 团队在整个开发过程中使用 PingCode 项目管理平台进行任务分解、进度追踪与协作管理。通过该平台的需求管理、任务看板、迭代计划等功能,团队成员能够清晰掌握项目当前状态,及时同步进展,并确保每一项任务都按照既定时间节点顺利完成,从而有效提升了整体的协作效率与开发质量。

304210491d46d431f4f097e262c54281

image


原型设计展示

GitHub仓库链接

设计说明书下载链接

posted @ 2025-11-20 00:19  YQL0130  阅读(2)  评论(0)    收藏  举报