软工第三次作业
校园失物招领小程序 —— 软件工程第三次结对作业
学号姓名:
【尼玛顿珠】-【102401635】 (计算机学院 2024 级)
学号姓名:【杜佳伟】-【102401623】 (计算机学院 2024 级)
一、作业背景与学习成果
动工前我们阅读了《构建之法》第 3 章和第 8 章,运用其中的结对协作、用户场景与 PSP 方法完成本次作业。
二、需求分析
2.1 主要用户及其需求
主要用户是校园学生,分三类:失主快速发布寻物信息、拾主方便发布招领信息、查找者按关键词定位信息。现状是信息分散在班级群与朋友圈,易被新消息覆盖,拾主与失主难以匹配。
2.2 软件解决的问题
本软件将寻物与招领信息集中到统一平台,提供发布、浏览、搜索等功能,解决信息分散、查找不便的问题,提高失物找回与归还效率。按课程要求定位为轻量方案,不实现后台管理、实名认证、即时聊天、地图定位等功能。
2.3 需求小结
功能需求包括浏览、发布寻物 / 招领、搜索、查看详情、修改信息状态;非功能需求包括界面简洁、操作直观、证件类信息注意隐私保护。
三、软件主要功能
-
浏览信息:首页按时间展示,支持失物 / 招领筛选;
-
发布寻物 / 招领:填写名称、类别、地点、时间、描述、图片与联系方式;
-
搜索物品:按关键词搜索,支持筛选;
-
查看详情:查看照片与完整信息,联系发布者;
-
修改状态:在 “我的发布” 中更新为已找到 / 已归还。
四、原型设计
4.1 原型开发工具
原型展示在线链接:
墨刀在线链接(点开即进入原型):
https://modao.cc/proto/KynWIX3Ctm0retOuQIQwbw/sharing?view_mode=device&screen=rbpVWPtMtvd4vOVMj&canvasId=rcbodyVWPtNK7o3kxyn5 #校园失物招领小程序-分享
4.2 原型页面说明
原型共 5 个主页面:首页、搜索页、信息详情页、发布信息页、我的发布页,另演示校验、上传、发布中 / 成功 / 失败等状态。首页浏览与筛选;搜索页支持关键词、最近 / 热门搜索与区域筛选;详情页展示照片与信息,提供联系发布者、标记已归还;发布页通过必填校验与图片上传完成发布;我的发布页管理信息、修改状态并编辑。统一绿色主色调与卡片式布局,操作直观。
4.3 页面清单
| 页面 | 主要内容 |
|---|---|
| 首页 | 顶部搜索栏、发布寻物/发布招领入口、信息列表与筛选 |
| 搜索页 | 搜索框、最近/热门搜索、类型区域筛选、搜索结果列表与空态 |
| 信息详情页 | 物品大图、标签、信息卡、联系发布者(三步)、标记已归还 |
| 发布信息页 | 寻物/招领切换、名称、类别、地点、时间、描述、照片、联系方式与必填校验 |
| 我的发布 | 实名卡片、数据统计、我的发布列表、编辑与状态修改 |
4.4 原型展示





五、、基本使用流程
完整业务流程图如下,用户从首页进入后分「发布」和「查看 / 搜索」两条路径,最终在状态维护处汇合:
发布流程:首页点击「我丢东西了」/「我捡到东西了」→ 选择发布类型(寻物 / 招领)→ 填写名称、类别、地点时间、描述图片、联系方式 → 必填不完整标红提示,完整则「立即发布」→ 发布成功,同步到首页与搜索结果。
查看 / 搜索流程:浏览首页列表或搜索关键词 → 查看结果 → 无匹配显示空态调整关键词,有匹配进详情查看大图与发布者信息 → 判断是否自己的物品:不是则继续浏览,是则联系发布者,线下核对归还 / 领回。
状态维护:发布者在「我的发布」标记已归还 / 已找回,信息不再对外展示,流程结束。

六、PSP 表格
| PSP 阶段 | 预估耗时(分钟) | 实际耗时(分钟) |
|---|---|---|
| 需求分析与讨论 | 60 | 70 |
| 绘制流程图 | 40 | 50 |
| 原型设计与制作 | 120 | 180 |
| 撰写博客 | 60 | 60 |
| 总结与检查 | 30 | 40 |
| 合计 | 310 | 400 |
七、结对过程记录
我们 9 月 26 号晚上开始,先各自把作业要求和《构建之法》第 3、8 章过了一遍,第二天上午碰头定方向。一开始想法挺多,定位、举报、实时聊天都想塞进去,后来对照作业要求一删,只留浏览、发布、搜索、详情、改状态这五块,清爽不少,后面做原型基本没返工。分工没分得很死,大体上我负责需求整理和流程梳理,搭档负责在墨刀上搭页面,每个阶段做完互相看一眼。最开始的流程图画得又复杂又丑,泳道、分支全堆在一起,自己都看不懂,干脆推倒重画成三张简单的,每张一条主线加一个判断。原型那边也是,第一版不够干净,统一换成浅灰底、物品配上图才顺眼。中间也折腾,墨刀 AI 生成的页面导出后入口顺序不对、截图尺寸不统一,两人排查了半天才弄好。到 9 月 27 号晚上,三条流程在演示模式里都能走通了,再分工写博客,最后才收尾。
八、个人总结
这次结对作业让我对 "先想清楚再做" 这件事体会比较深。一开始我们俩都觉得功能越多越好,定位、举报、聊天记录全都想加进去,结果一对照作业要求才发现大部分用不上,最后删得只剩浏览、发布、搜索、详情、改状态这五块。删完之后整个原型一下子清爽了,后面做页面基本没走弯路,这也让我意识到需求分析不是走个过场,它真的能决定后面要少干多少活。做原型的过程也踩了一些坑。第一次画的流程图又复杂又乱,泳道、分支全堆在一起,自己看着都头疼,干脆推倒重画,每张图就一条主线加一个判断,反倒一目了然。用墨刀做原型时,一开始只想着把页面搭出来,忽略了页面之间的跳转关系,演示的时候点了按钮没反应,才发现交互连线没做全,又回头一个个补上。还有导出链接、截图尺寸不统一这些小问题,两个人一起排查了大半天才弄好,虽然费时间,但也算把墨刀的基本用法摸熟了。和搭档配合的过程中,我最大的收获是学会了沟通要有分工、也要有检查。我们虽然没有把任务分得特别死,但每个阶段做完都会互相看一眼,很多问题就是在这种交叉检查里发现的,比如流程图漏了 "怎么确认东西是自己的" 这一步,就是搭档看的时候指出来的。这种互相挑毛病的方式比一个人闷头做效率高很多,也为后面第二次结对作业用 GitHub 协作打了底。总的来说,这次作业让我把结对合作、需求分析、原型设计真正用了一遍,遇到问题知道该往哪个方向查了,收获挺实在的。

浙公网安备 33010602011771号