数据分析与资产库模块需求拆解日期2026-04-03成员孙靖凯负责模块数据分析、我的资产库一、本阶段目标确定数据分析和我的资产库两个模块的边界、共用数据结构和前后端工作流。 这一阶段的工作不是单独完成一个按钮或一个接口而是要把我负责的模块放进整个科研智能平台中考虑。平台面向学校课程实验用户是多个学生因此每个功能都必须能和登录用户、任务历史、文件存储、资产沉淀以及 DeepSeek Agent 调用结合起来。我负责的两个模块分别处在科研平台的数据处理层和成果沉淀层。数据分析负责把用户上传的数据转成清洗结果、统计结果、模型结果、图表和 AI 建议我的资产库负责把这些结果长期保存下来支持标签、备注、收藏、下载和恢复。两个模块共同解决的是“科研过程能否复现和持续管理”的问题。我在开始编码前先把验收标准拆成四类第一后端接口必须真实可运行不能只写静态 mock第二前端展示必须让普通学生看懂不能直接显示原始 JSON第三任务结果必须能保存刷新页面或退出登录后不能丢失第四和其他模块交界的地方要预留扩展例如资产库、任务恢复、AI 助手解释和 storage 文件访问。二、需求理解和方案选择本阶段我先根据用户需求梳理了输入、处理、输出和持久化四个环节。输入部分要尽量贴近用户语言避免把技术实现细节暴露给用户处理部分由 Spring Boot 服务编排并在需要时调用 DeepSeek输出部分必须结构化方便前端渲染成表格、卡片、步骤或下载链接持久化部分则通过 MySQL 保存元数据通过本地 storage 目录保存文件。如果数据分析只返回一次结果刷新后就丢失如果资产库只是文件列表又无法表达分析目标和报告内容。所以两个模块必须一起设计。 这个问题也提醒我Agent 应用不能只追求“模型能回答”而要追求“用户能继续使用”。如果用户拿到结果后不知道下一步做什么或者刷新页面后结果消失那么功能就没有形成真正闭环。因此我在设计时一直检查三个问题用户是否知道当前步骤的含义系统是否保存了关键数据后续页面是否能继续处理这些数据。三、后端实现过程数据分析后端规划 DataWorkbenchService、DataAgentService、PythonScriptSecurity、StorageService。资产库后端规划 AssetService把文献、代码、论文、数据报告统一保存。 后端实现时我尽量保持 Controller、Service、Prompt、Repository、Storage 的边界清晰。Controller 只负责接收请求和返回统一响应Service 负责业务编排PromptTemplates 负责模型提示词StorageService 负责文件路径任务服务负责记录任务状态。这样即使模块越来越复杂也不会把所有逻辑堆在一个方法里。我还特别关注异常处理。外部 API、DeepSeek、Python 执行、文件下载、ZIP 解压、DOCX 生成都可能失败。失败时不能让前端只看到空白也不能把大段堆栈直接展示给用户。后端会把详细错误记录到任务历史把简洁错误返回给前端并尽量保留可恢复的信息例如输入参数、任务 ID 和输出目录。四、前端实现过程数据页面规划为左侧配置、右侧结果的工作台资产库规划为按类型分区展示支持标签、备注、收藏、下载和继续处理。 前端开发时我遵循一个原则用户看到的应该是业务结果而不是后端数据结构。对于数组优先用表格或列表对于长文本用可换行段落对于文件用下载按钮对于风险用标签和评分对于长任务用状态提示或流式预览。这样页面更像一个科研管理后台而不是接口调试工具。在交互上我尽量让操作按钮靠近对应数据对象。比如某篇文献的精读按钮放在文献卡片上某个代码工程的下载按钮放在工程结果区某个论文版本的继续处理入口放在版本卡片里。这样用户不需要在页面上来回寻找下一步操作也能更自然地理解功能流程。五、联调问题和修复记录数据分析成功后生成数据报告资产资产库可以重新查看图表、脚本和建议任务历史可以恢复输入配置。 联调时我重点检查了前后端字段是否一致、文件路径是否能下载、任务是否能保存、刷新页面后是否能找回结果。很多问题不是语法错误而是产品流程错误。例如某个字段后端返回了但前端没有展示某个结果能在当前页面看到但没有进入资产库某个操作在技术上能执行但用户不知道为什么要点。我把这些问题按优先级处理影响主流程的先修例如接口无响应、结果为空、下载失败影响理解的随后修例如字段命名、页面排版、按钮位置最后处理体验优化例如默认文案、空状态提示、截图材料。这样的顺序能保证项目在课程验收前一直保持可运行。六、阶段成果本阶段完成后数据分析与资产库模块需求拆解 对应的功能已经能在系统里形成可展示成果。后端有明确的服务类和接口前端有对应页面或组件任务历史中能看到执行记录必要文件能在 storage 中找到。更重要的是这一阶段的实现为后续模块联动打下了基础结果可以进入资产库AI 助手可以解释操作任务历史可以恢复输入用户可以在下一次登录后继续处理。从课程实验角度看这些过程比单纯展示最终页面更重要。博客中记录的不是“做完了什么”而是为什么这样设计、遇到了什么偏差、如何修正、最终怎样和系统其他部分连接。这些内容能体现我们对 Spring Boot、Vue3、DeepSeek Agent、文件存储、任务状态和科研业务流程的综合理解。