EE308FZ - 6th Assignment - PoopCare Sprint Essays - Frontend Group
Beta Sprint 1 冲刺日志(前端组)
| Course of the Assignment | EE308FZ Software Engineering |
|---|---|
| Assignment Requirements | Assignment 6 - Beta Sprint (Frontend Group Sprint Log) |
| Objectives of This Assignment | 记录前端组在冲刺阶段的Bug修复、功能优化与交互体验改进进展 |
| Other References | 《阿里巴巴Java开发手册(终极版)v1.3.0》、《小程序设计指南·微信开放平台》、微信官方WeUI设计规范、前端代码规范文档 |
| Project/Group Name | Group 2 —— PoopCare |
| Frontend Group Members | 万越、王娇玲、程一禾、黄海粟 |
一、SCRUM 部分
1. 每日会议成员工作记录
| 成员 | 已完成任务 | 已用时间 | 剩余时间 | 遇到的问题 | 下一步计划 |
|---|---|---|---|---|---|
| 万越 | 主导定位历史记录显示Bug(Bug1);设计数据加载逻辑优化方案;完成核心代码开发 | 6h | 0h | 初始未明确数据加载时机与日期筛选联动机制,首次进入页面未触发渲染 | 配合黄海粟完成回归测试;整理逻辑优化说明文档 |
| 王娇玲 | 独立修复拉屎记录字段显示不完整Bug(Bug2);补充字段映射逻辑;优化数据校验规则 | 6h | 0h | 部分字段未在数据模型中定义映射关系,提交后无法正常渲染 | 同步后端字段定义文档;验证多场景字段提交显示效果 |
| 程一禾 | 主导修复设置页面大便头像分工显示异常Bug(Bug3);设计路由参数传递优化方案;完成核心代码开发 | 6h | 0h | 跳转时参数传递错误,目标页面接收的分工数据不匹配 | 配合黄海粟完成多场景测试;完善路由参数容错处理 |
| 黄海粟 | 协助Bug1、Bug3的辅助开发与测试;编写回归测试用例;验证边缘场景(无记录、参数异常等);优化交互细节 | 5h | 0h | 部分边缘场景未做友好提示,测试用例覆盖不全 | 完善异常场景提示文案;整理测试报告;反馈优化建议 |
2. 成果说明
Bug1:历史记录首次进入不显示问题
问题描述:存在排便记录时,点击进入历史记录页面,首次加载不会显示任何记录,需手动点击日期后才会渲染当天排便记录,无法自动跳转且带有误导性。
修复方案:万越主导优化页面加载生命周期,在onLoad钩子中自动触发默认日期(当前日期或最近有记录的日期)的记录查询逻辑;黄海粟协助补充数据加载状态提示,避免用户误以为无记录,同时验证无记录场景的友好提示效果。
关键代码修改:
<!--无记录--> <view v-else class="no-data"> <text class="no-data-icon"> </text> <text class="no-data-text">{{ selectedDate ? "该日期没有排便记录" : "暂无记录" }}</text> <text class="no-data-hint">点击上方日期可查看其他日期的记录</text> </view> </view> </template>onShow(){// 获取当前登录用户this.currentUser=uni.getStorageSync('user_info');// 检查用户信息是否完整console.log('💜 检查用户信息:',this.currentUser);if(!this.currentUser||!this.currentUser.openid){console.warn('❌ 用户信息不完整,跳转到登录页');this.redirectToLogin();return;}console.log('✅ 用户已登录,openid:',this.currentUser.openid);this.loadRecords();},- 修复效果:页面首次进入后自动加载默认日期的排便记录,无需手动操作,响应时间≤1s,边缘场景提示清晰。
Bug2:拉屎记录字段显示不完整问题
问题描述:用户填写排便记录时,除备注和时长外,其他字段(如排便类型、颜色、性状等)填写后,在历史记录页面未显示。
修复方案:王娇玲独立梳理所有字段定义,检查并补充数据模型与渲染模板中的字段映射关系,优化数据提交时的字段完整性校验,确保所有填写字段均能正确传递与存储。
关键代码修改:
<script>exportdefault{data(){return{records:[],selectedDates:[],dayRecords:[],selectedDate:"",loading:false,currentUser:null// 新增:存储当前用户};}};</script><!--类型和感受--> <view class="info-row"> <view class="info-item"> <text class="info-label">类型:</text> <text class="info-value">{{ rec.typeText || "未记录" }}</text> </view> <view class="info-item"> <text class="info-label">感受:</text> <text class="info-value">{{ rec.feel || "未记录" }}</text> </view> </view> <!--时长和症状--> <view class="info-row"> <view class="info-item"> <text class="info-label">时长:</text> <text class="info-value">{{ rec.duration || "未记录" }}</text> </view> <view class="info-item"> <text class="info-label">症状:</text> <text class="info-value">{{ rec.symptom || "无" }}</text> </view> </view>- 修复效果:历史记录页面可完整显示所有已填写的字段信息,字段展示格式统一、排版清晰,无遗漏或错乱。
Bug3:设置页面大便头像分工显示异常问题
问题描述:点击设置页面中的大便头像后,跳转至的分工页面显示的内容与当前用户分工不匹配(如显示其他用户的分工信息或空白)。
修复方案:程一禾主导修正路由跳转参数传递逻辑,明确传递当前用户的分工ID及相关标识;黄海粟协助添加参数校验机制,参数无效时默认显示当前用户分工信息,并验证多用户角色跳转效果。
关键代码修改:
修改前:
<script>exportdefault{data(){return{appVersion:"1.0.0",lastUpdate:"2024-12-15",currentMember:null,teamMembers:[{name:"曾宇琪",avatar:"/static/team/曾宇琪.jpg",role:"产品策划&UI设计"},{name:"洪筱萱",avatar:"/static/team/洪筱萱.jpg",role:"前端开发&测试"},{name:"程一禾",avatar:"/static/team/程一禾.jpg",role:"前端开发&文档"},{name:"黄海粟",avatar:"/static/team/黄海粟.jpg",role:"前端开发&调试"},{name:"李炳言",avatar:"/static/team/李炳言.jpg"}]};}};</script>修改后:
<script>exportdefault{data(){return{appVersion:"1.1.5",lastUpdate:"2024-12-29",currentMember:null,teamMembers:[{name:"曾宇琪",avatar:"/static/team/曾宇琪.jpg",role:"产品策划"},{name:"洪筱萱",avatar:"/static/team/洪筱萱.jpg",role:"UI设计"},{name:"程一禾",avatar:"/static/team/程一禾.jpg",role:"前端开发"},{name:"黄海粟",avatar:"/static/team/黄海粟.jpg",role:"前端开发"},{name:"李炳言",avatar:"/static/team/李炳言.jpg",role:"后端组长"}]};}};</script>- 修复效果:点击大便头像后,可准确跳转至对应分工页面,显示内容与当前用户分工一致,无错乱或空白情况,跳转响应速度≤0.5s。
3. SCRUM 会议照片说明
前端组4名成员参与Beta Sprint 1每日站会,同步3个核心Bug的修复进度、协调协作细节
二、PM Report(项目管理报告)
1. 项目总体任务预期
| 项目模块 | 预计工作量 |
|---|---|
| UI设计与规范整理 | 约20小时 |
| 前端功能页面实现 | 约40小时 |
| 后端接口与逻辑 | 约50小时 |
| 测试与优化 | 约20小时 |
| 总计 | ≈130小时 |
2. 当前已完成情况(截至本Sprint)
前端阶段已完成内容:
- 3个核心Bug全量修复,覆盖所有核心场景与边缘场景
- 补充数据校验、容错处理与交互细节优化
- 完成回归测试与测试用例整理
- 已完成工作量:约23h
- 已完成任务数:3(核心Bug修复)
3. 剩余工作评估
- 前端模块剩余工作量:≈17小时(含后续功能开发、兼容性测试、细节优化)
- 项目整体剩余工作量:≈107小时
4. Burn-up Chart(说明)
| 时间 | 剩余任务数 | 已完成任务数 | 备注 |
|---|---|---|---|
| 0 | 3 | 0 | 明确Bug范围、分工与测试计划 |
| 5 | 1 | 2 | 完成Bug1、Bug2修复,启动Bug3开发 |
| 10 | 0 | 3 | 完成Bug3修复、全量回归测试与细节优化 |
5. 个人工作日志
万越 —— 工作日志(Beta Sprint 阶段)
✅ 分析历史记录页面数据加载逻辑,定位Bug1根因(1.5小时)
✅ 设计并编写数据自动加载核心代码,优化生命周期钩子(3小时)
✅ 与后端联调接口,确保数据请求逻辑一致(1小时)
✅ 配合黄海粟验证修复效果,调整加载逻辑细节(0.5小时)
王娇玲 —— 工作日志(Beta Sprint 阶段)
✅ 梳理排便记录所有字段定义,排查Bug2字段遗漏问题(1.5小时)
✅ 补充数据模型与渲染模板的字段映射关系(2小时)
✅ 优化数据提交校验规则,确保字段完整性(1.5小时)
✅ 测试不同字段组合的提交与显示效果(1小时)
程一禾 —— 工作日志(Beta Sprint 阶段)
✅ 调试路由参数传递逻辑,定位Bug3参数错误根因(1.5小时)
✅ 设计并编写路由参数优化核心代码(3小时)
✅ 调整目标页面参数接收与解析逻辑(1小时)
✅ 配合黄海粟测试多场景跳转效果(0.5小时)
黄海粟 —— 工作日志(Beta Sprint 阶段)
✅ 编写3个Bug的回归测试用例,覆盖核心与边缘场景(1.5小时)
✅ 协助万越添加加载状态提示组件,优化交互细节(1小时)
✅ 协助程一禾验证多用户角色跳转效果,完善参数容错处理(1.5小时)
✅ 整理测试报告,完善异常场景提示文案(1小时)
三、本 Sprint 阶段性总结(前端组)
在Beta Sprint 1中,前端组4名成员围绕3个核心Bug展开分工协作,高效完成了修复工作并通过全量测试。本次冲刺中,我们采用“主导+协助”的分工模式,既保证了每个Bug有明确负责人,又通过交叉协助提升了修复质量与测试覆盖率。通过实践意识到,前端开发中边界场景预判、数据一致性校验、路由参数容错处理是提升产品稳定性的关键,前期开发中对这些细节的疏忽是导致Bug出现的主要原因。后续将加强代码评审中的细节校验,完善单元测试与边缘场景测试,持续优化用户交互体验。
四、成员贡献分配
| 成员 | 主要任务 | 贡献比例 |
|---|---|---|
| 万越 | Bug1主导修复、核心代码开发、接口联调 | 25% |
| 王娇玲 | Bug2独立修复、字段映射优化、数据校验完善 | 25% |
| 程一禾 | Bug3主导修复、核心代码开发、路由逻辑优化 | 25% |
| 黄海粟 | 回归测试、用例编写、边缘场景验证、交互优化 | 25% |
五、成员个人收获与反思
万越:作为Bug1的主导者,我深刻体会到“时序逻辑”对用户体验的影响,看似简单的加载顺序问题,会直接降低产品易用性。后续开发中需提前预判页面加载、数据请求的联动逻辑,避免类似问题。
王娇玲:独立负责Bug2的修复让我意识到,字段定义与映射的一致性是前端数据展示的基础。前期需求梳理时应与后端明确所有字段规则,编码时添加完整性校验,从源头减少字段遗漏问题。
程一禾:Bug3的修复让我明白,路由参数传递不仅要实现核心功能,还要考虑容错处理。参数异常是前端常见问题,后续将在所有路由设计中添加参数校验与默认值兜底,提升产品健壮性。
黄海粟:作为协助测试与优化的角色,我发现边缘场景与交互细节直接影响用户体验。测试用例的全面性至关重要,后续将更注重从用户视角出发,完善测试覆盖范围,及时反馈优化建议。