2026秋软工实践 看懂每一步——项目原型设计+概要设计
| 项目 | 内容 |
|---|---|
| 作业所属课程 | 202601 软件工程 |
| 作业要求 | 第二次团队作业 |
| 作业目标 | 根据第一次团队作业中的需求分析和设计,完成原型设计和概要设计 |
| 团队名称 | 看懂每一步 |
| 团队成员学号—姓名 | 102401434包学丰 102401436冯玄 102401111郑瀚 102401615秦文贵 102401622吴圣洲 102401435乔震宇 102301225刘运昆 162501110蒋书瑞 102301230林为峰 102401629王元豪 |
团队协作记录
预期开发计划时间安排
| 周次与日期 | 主要工作 | 里程碑与验收标准 | 预期产出 | 负责人 |
|---|---|---|---|---|
| 第 1 周 · 11 月 9–15 日 | 完成第二次作业提交。确认各算法包的输入、步骤快照和视图需求;各包优先提交代表项。基于已合并的图算法和查找算法联调公共入口,推进正式图、树、链表和哈希视图。 | 代表项接入方式确定。 各包已有代表实现或明确的问题清单,能核对输入、结果和回放状态;已有功能回归通过。 | 第二次作业博客及两份 PDF、原型链接;代表项 PR;公共接口与视图对齐记录;本周进度表。 | 01 协调验收;02 负责视图;03 负责作业材料;04–10 负责各包代表项。 |
| 第 2 周 · 11 月 16–22 日 | 各包分批提交其余算法及正常、边界样例;01 分批接入工作台;02 按共用视图完成动画联调;核对源码高亮、变量、单步和回看。03 同步记录演示素材。 | 各包主要算法完成并分批合并。 每项有可追踪的 PR 和测试结果;已接入项能修改输入、运行并回看,遗留问题有负责人和计划。 | 批次算法 PR、工作台接入记录、视图回放样例、缺陷清单、演示素材初稿。 | 04–10 实现与交叉复核;01 接入和合并;02 动画联调;03 整理素材。 |
| 第 3 周 · 11 月 23–29 日 | 收尾本轮计划算法及工作台接入,检查笔记入口、步骤问答和现有练习的兼容性。完成跨算法切换、边界输入、浏览器适配与整条使用流程回归。同步 README、设计与演示材料。 | 程序功能完成。 以本轮 54 项任务清单逐项验收,已接入的二分查找、冒泡排序和自定义代码回归通过;阻塞运行、结果和回放的问题已修复。 | 功能完整的候选版本、逐项验收表、回归测试记录、更新后的说明文档、PPT 初稿与演示脚本。 | 01 组织验收;02 完成动画回归;04–10 修复各包问题;03 完成材料初稿。 |
| 第 4 周前半 · 11 月 30 日–12 月 3 日 | 11 月 30 日完成开发收尾并冻结功能范围;12 月 1 日起集中最终调试。用干净下载的仓库核对安装、启动、编译器和模型配置,检查完整演示路径,修复并复测缺陷。 | 候选版本通过最终调试。 下载后可按说明启动;默认样例、单步、回看和演示流程稳定;重要缺陷关闭并有复测证据。 | 发布候选提交号、最终缺陷与复测记录、环境配置说明、PPT 定稿、备用演示视频。 | 01 汇总并签收;02 和04–10定位修复;03 完成答辩材料;全员参与试用。 |
| 第 4 周后半 · 12 月 4–5 日 | 12 月 4 日进行完整彩排和设备检查,核对讲稿、PPT、演示视频及文档链接;12 月 5 日暂按课程最终答辩安排展示与提交。 | 答辩版本冻结并完成交付。 彩排符合课程规定时长,现场与备用演示均可使用,仓库版本和材料一致。 | 最终版本标识、提交链接清单、答辩 PPT、讲稿、演示视频和协作记录。 | 03 组织展示材料;01 确认版本与提交;全员参加彩排及答辩。 |
预期开发计划分工安排
| 编号 | 姓名/昵称 | 学号 | GitHub 用户名 | 最终阶段主责 |
|---|---|---|---|---|
| 01 | 包学丰 | 102401434 | tw1l1ghtcc | 统筹与最终集成 |
| 02 | 冯玄 | 102401436 | otto2-5-8 | 统一动画与播放 |
| 03 | 刘运昆 | 102301225 | kun123567 | PPT、博客与演示 |
| 04 | 郑瀚 | 102401111 | Kerical | A · 比较排序 |
| 05 | 林为峰 | 102301230 | Aidname | B · 图算法与并查集 |
| 06 | 秦文贵 | 102401615 | vg666-NiKo | C · 多路归并、外部排序与多路查找树 |
| 07 | 吴圣洲 | 102401622 | drkalerq | D · 查找与哈希 |
| 08 | 蒋书瑞 | 162501110 | jsr806 | E · 线性表与数组算法 |
| 09 | 王元豪 | 102401629 | hsjjsjajja | F · 字符串、栈与有向无环图应用 |
| 10 | 乔震宇 | 102401435 | 1530017982 | G · 二叉树、树与森林 |
协作记录
| 本轮编号 | 算法包 | 本轮交付 | 状态 | PR | 验收人 / 证据 / 阻塞 |
|---|---|---|---|---|---|
| 01 | — | 工作台公共入口、运行接口和分批集成 | 已接入 9 项本轮算法 | #53、#54 | 算法菜单按章节分组;7 项图算法支持编辑图输入,顺序查找和分块查找复用数组视图;下一批接入见 B、D 包 |
| 02 | — | 统一视图、动画与播放 | 数组查找复用现有视图;图算法已有 SVG 预览 | #53 | 正式图动画待联调;并查集、树、哈希槽位和桶链视图待接入 |
| 03 | — | PPT、团队博客、演示与课程材料 | 待记录 | — | — |
| 04 | A | 直接插入排序 | 已分配 | — | — |
| 05 | B | 8 项:BFS、DFS、Prim、Kruskal、Dijkstra、Floyd、拓扑排序、并查集(15 分) | 8 项算法已合并;7 项接入工作台预览 | #49、#53 | #49 验收记录;正式图动画待联调,并查集工作台入口待接入 |
| 06 | C | 最佳归并树(首个代表项) | 已登记负责人,待算法交付 | #51 | 登记已合并 |
| 07 | D | 8 项:顺序查找、分块查找、AVL 树、红黑树、哈希线性探测、平方探测、双散列、拉链法(14 分) | 8 项算法已合并;2 项接入工作台 | #50、#52、#53 | D 包 9 项专项测试通过;顺序查找和分块查找已接入。AVL、红黑树和四种哈希的工作台入口与视图待接入 |
| 08 | E | 单链表插入 | 已分配 | — | — |
| 09 | F | KMP | 已分配 | — | — |
| 10 | G | 二叉树层序遍历 | 已分配 | — | — |
原型设计展示
墨刀原型展示在线链接https://modao.cc/proto/3HJhnZvjtnx1qi8zOJuwJ2/sharing?view_mode=device&screen=rbpVZtVdCQxwcw14I&canvasId=rcVZvCWugvUqKI16
原型设计中的重要突出特点
1. 步骤被作为核心设计对象
页面命名直接出现“步骤辅导”“过程练习”“练习反馈”,说明“当前在第几步、这一步要做什么、做完之后去哪里”被显式设计进了界面结构,而不是藏在内容背后。
2. 反馈和后台让原型成为“系统切片”
“练习反馈”不是弹窗,而是有前后文的流程节点; “后台管理”则说明步骤内容、练习数据和反馈规则有可配置、可观察的入口。前台的分步体验,背后有系统支撑。
系统体系结构设计
系统由浏览器界面、Node.js 后端、内容与状态存储、外部模型服务组成 子系统职责
数据库设计
数据来源与存续
主要数据流
维护人员更新内容文件,学生从知识页和练习页获取公开数据。后端生成算法轨迹和判分结果。辅导读取当前步骤和短期会话,真实模式将必要上下文发往模型服务。浏览器保存练习历史。
拟建环境
采用支持事务、唯一约束和复合外键的关系数据库。初期可保留原文件作为内容导入源。运行与问答写入带到期时间的表,浏览器记录仅在启用同步并得到用户选择时导入。
提交材料
1.GitHub团队仓库链接 https://github.com/tw1l1ghtcc/datastructure-agent
2.看懂每一步系统设计说明书.pdf https://github.com/tw1l1ghtcc/datastructure-agent/blob/main/docs/design/看懂每一步_系统设计说明书.pdf
3.看懂每一步数据库设计说明书.pdf https://github.com/tw1l1ghtcc/datastructure-agent/blob/main/docs/design/看懂每一步_数据库设计说明书.pdf