2026/6/23 22:16:57

阿尔伯塔软件项目管理 VI 笔记(二)

阿尔伯塔软件项目管理 VI 笔记(二) 团队意识到当前冲刺的故事点可能已超负荷需要在重新制定发布计划时移除一些功能。总结本节课中我们一起学习了产品开发中的一个关键环节客户演示与待办事项优化。我们看到了如何有效地向客户展示产品、获取有价值的反馈并将模糊的需求转化为具体的用户故事。通过评估故事点、风险并排定优先级团队能够清晰地规划下一步工作确保开发资源集中在最能产生价值的功能上。这个过程是敏捷开发中持续交付和响应变化的核心实践。037模拟冲刺回顾会议https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/a42a98009168ad66d81874a941b36b6c_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/a42a98009168ad66d81874a941b36b6c_2.png在本节课中我们将通过一个模拟的团队对话学习如何有效地进行一次冲刺回顾会议。冲刺回顾是敏捷开发中用于反思和改进团队工作方式的关键活动。概述冲刺回顾会议旨在让团队反思刚刚结束的冲刺周期总结做得好的地方和需要改进的地方并制定具体的行动计划以便在下一个冲刺中做得更好。这是一个协作、非指责性的过程。会议开场上一节我们介绍了冲刺回顾会议的目的本节中我们来看看会议是如何开始的。团队领导需要引导会议并确保每个人都感到舒适和安全。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/a42a98009168ad66d81874a941b36b6c_4.png团队领导提议进行一次快速的回顾会议认为团队可以从中学习并对未来的工作有益。在获得团队成员同意后领导建议了会议的基本流程首先头脑风暴讨论做得好的和不好的地方然后基于讨论结果找出改进方法。总结成功经验以下是团队认为在本次冲刺中做得好的方面完成了所有预期的用户故事这是一个显著的成就尤其是在第一个冲刺中。坚持了每日站会虽然不是每天早上的第一件事但团队总能找到时间完成。**用户故事均符合“完成的定义”**所有工作成果都达到了团队预先设定的质量标准。交付了可工作的产品团队最终交付了一个令人印象深刻的可运行产品。识别改进领域在肯定成绩之后团队需要以建设性的态度审视可以做得更好的地方。这个过程不是为了指责而是为了持续改进。以下是团队识别出的待改进事项单元测试编写滞后有成员承认在开始编写功能源代码之前没有先写好单元测试。验收测试和标准定义较晚团队应该在开始开发之前就写好验收测试和标准。任务板使用不足任务板在冲刺期间多次未能准确反映实际进度需要更勤勉地更新任务状态。故事点估算的准确性有待验证虽然所有任务都按时完成但个体故事点的估算精度可能需要更多冲刺周期来验证。制定改进措施基于识别出的问题团队接下来需要商讨具体的、可执行的改进方案以便在下一个冲刺中实施。以下是团队为下一个冲刺制定的改进措施列表提前编写验收测试和单元测试确保测试活动先行。更积极地使用任务板及时更新任务状态保持信息透明。增加结对编程通过结对编程来加强知识共享、代码质量和团队沟通。持续关注并改善团队沟通将沟通改善作为一个持续的目标。会议总结与结束在制定了明确的改进计划后团队领导对会议进行了总结。大家一致认为这次回顾非常有帮助并对下一个冲刺的工作感到兴奋。会议在积极的氛围中结束。总结本节课中我们一起学习了冲刺回顾会议的完整流程。从会议开场、总结优点、识别不足到最终制定具体的改进措施每一步都旨在促进团队的反思与成长。记住有效的回顾会议核心在于心理安全、聚焦改进和行动导向其目标是让每个后续的冲刺都比前一个更加高效和顺畅。038模拟站立会议周一https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/18e9f153008e73942ae08d6fdb2fedd2_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/18e9f153008e73942ae08d6fdb2fedd2_2.png在本节课中我们将通过一个模拟的周一站立会议场景学习敏捷开发团队如何规划冲刺Sprint初期的工作。我们将看到团队成员如何同步进度、识别依赖关系并协作解决问题。上一节我们介绍了冲刺规划会议本节中我们来看看团队如何在冲刺开始后的每日站立会议上同步工作。以下是模拟会议中每位成员的发言与计划。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/18e9f153008e73942ae08d6fdb2fedd2_4.png项目经理PM我将从今天开始着手处理数据库连接。因为我们这个冲刺中需要完成的大部分用户故事都在某种程度上依赖于这个数据库连接。乐观估计我应该在今天结束前完成它最晚不超过明天。鉴于今天是冲刺的第一天我目前没有遇到任何阻碍。设计师Wilson既然你将负责数据库连接那么我们可以同步完成一些设计元素并创建验收测试和标准。前端开发Alexa好的接下来我来说。我将开始设计浏览和书签功能的界面。同时我也会为“浏览书籍封面”和“书签”功能创建验收标准和测试。我目前唯一的阻碍是最好能有数据库连接。不过我可以像上个冲刺那样先使用硬编码的材料开始编程所以几天内应该没问题。后端开发Josh我需要数据库连接才能完成我的任务。我的意思是我也可以用模拟数据但我觉得等数据库弄好会更方便。所以我可以先创建验收测试并开始编写单元测试。测试工程师我也可以帮你做验收测试Josh。这样你可以把所有精力都放在数据库连接上。Josh这听起来不错。团队让我们开始工作吧。本节课中我们一起学习了敏捷团队在周一站立会议上的典型沟通模式。我们看到团队成员如何明确各自任务、识别对共享资源如数据库的依赖并通过主动协作如分担测试工作来确保冲刺目标顺利推进。这种简短的每日同步是保持团队信息透明和快速响应障碍的关键。039站立会议模拟周三https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/4985600081bb56cb1c6190ff9c65c271_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/4985600081bb56cb1c6190ff9c65c271_2.png在本节课中我们将通过一个模拟的周三站立会议场景了解软件开发团队在冲刺阶段如何同步进度、识别障碍并协调工作。我们将重点关注团队成员之间的沟通与任务更新。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/4985600081bb56cb1c6190ff9c65c271_4.png好的各位我们来看看目前的进展。我意识到我们的进度有些落后因为我们刚刚才把数据库连接设置好。不过值得庆幸的是这部分工作已经全部完成所以我们可以顺利进行了。希望从现在开始一切都能顺利运行。是的抱歉各位昨天花的时间比预期长得多但我已经完成了数据库连接并且也编写了相关的单元测试执行时全部通过了。希望这个连接对大家都能正常工作。今天我将着手开发搜索功能目前没有任何阻碍。好的我昨天在编写浏览和选择功能包括书籍封面和书签的源代码。所以我今天会继续这项工作。如果我今天能完成布局程序那么我将开始将其与数据库连接起来。所以目前我也没有阻碍。不过乔希我之后在连接时可能需要你的帮助。没问题到时候告诉我就行。好的。我今天将开始为“本地保存”功能编写源代码。昨天我在等待乔希完成连接时为几个功能编写了文档。既然现在连接完成了我就可以真正开始开发这个功能了。现在连接已完成我没有任何阻碍让我们开始工作吧我们有很多进度要追赶。本节课中我们一起观察了一个软件开发团队在站立会议上的交流。会议中团队成员同步了各自的任务进度如完成数据库连接、编写单元测试、开发搜索与浏览功能确认了当前没有重大阻碍并规划了当日的重点工作。这展示了团队如何通过简短高效的每日站会来保持信息同步、解决问题并推动项目前进。040周五站会https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/4db02173ca5507dbb6e5033639986329_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/4db02173ca5507dbb6e5033639986329_2.png在本节课中我们将通过一个模拟的周五站会场景了解敏捷开发中每日站会的实际流程与沟通要点。我们将看到团队成员如何同步进度、识别风险并协调工作。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/4db02173ca5507dbb6e5033639986329_4.png会议开始让我们看看目前的进展。我不确定我们是否能在今天下午演示前100%完成所有工作。成员进度汇报以下是团队成员依次汇报的工作状态成员A负责搜索功能昨天我正在编写搜索功能的源代码。我已经实现了一个搜索函数searchDatabase(query)它可以查询数据库。但我仍需将其连接到前端应用程序。这是我今天上午要完成的主要工作。成员B负责本地保存功能我即将完成本地保存功能。昨天结束时我运行了单元测试发现了一些错误但我认为修复起来不会太难。这是我今天上午要处理的工作。该功能的其他部分均已完成。一旦这些测试通过我的任务就完成了。目前没有阻碍。成员C负责浏览与书签功能我完成了浏览功能书签也能显示出来但视觉效果不佳尺寸比例有问题。我所有的单元测试都已通过。今天上午我会花些时间尝试让书籍封面的显示效果更好一些。我应该在会议前完成所有文档的编写。我这边也没有阻碍。会议结束那么我们开始工作吧。本节课中我们一起学习了敏捷站会的模拟场景。我们看到了三位团队成员如何清晰地汇报昨日成果、今日计划以及遇到的障碍。有效的站会沟通有助于团队保持同步、快速发现问题并集中精力完成冲刺目标。04116_04_5-5 客户演示模拟https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/933ff0d10b3c7900a63ee2f0c5775c56_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/933ff0d10b3c7900a63ee2f0c5775c56_2.png概述在本节课中我们将通过一个模拟的客户演示场景学习如何向客户展示产品功能、收集反馈并规划下一个开发冲刺。我们将看到开发团队如何演示一个电子书阅读应用的核心功能以及客户如何提供关键反馈来指导产品的未来方向。演示开场与核心功能展示https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/933ff0d10b3c7900a63ee2f0c5775c56_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/933ff0d10b3c7900a63ee2f0c5775c56_2.png感谢各位今天到场。我们的产品进展非常顺利许多核心功能已经完成因此这将是一次令人兴奋的演示。我将请Alexa开始介绍。是的我负责的是浏览功能。现在用户可以从数据库中浏览所有资料可以滚动查看所有书籍并看到每本书的封面。当用户决定要读哪本书时可以选择它。如果用户之前从未读过这本书选择后会直接进入书籍开头。如果用户之前已经开始阅读应用现在会自动保存阅读进度并将用户带回上次离开的地方。这意味着应用现在具备了自动书签功能。此外用户还可以搜索书籍。他们只需输入任何内容浏览页面的结果就会根据搜索内容进行筛选。用户可以按流派、书名、作者或任何相关关键词进行搜索。同时你可能已经注意到我们的应用已经连接到数据库。这意味着你们提供的所有资料在无线网络连接下都可以通过应用供用户使用。离线阅读功能演示我们的最后一个功能是本地保存资料的能力。当用户在浏览资料时每本书旁边都有一个小的保存按钮。如果用户按下它这本书就会保存到他们的设备上。这样即使没有无线连接用户也能查看和阅读这本书。让我们来测试一下。我们选择这一本。现在我们将设备切换到飞行模式断开无线连接。然后我们返回应用。如你所见除了我选择的那两本所有其他书籍都已从浏览功能中消失。然后你可以像平常一样打开并阅读它们。以上就是我们的演示。你们有任何问题吗客户反馈与未来规划你们再次让我感到震惊。我简直不敢相信仅仅两周时间你们就完成了所有这些工作。现在我有一条关于这个项目未来的消息。但在谈这个之前Daniel你有什么想说的吗你们确实做得非常出色。我认为一个可能非常有价值的功能是在浏览页面和实际阅读页面之间增加一个页面。我想读者会希望看到一个包含简介或评论等的页面这样他们才能真正决定是否要读那本书。另一件需要记住的事情是孩子要关注孩子。所有这些功能都对儿童友好但在上一次演示中你们更多地关注了儿童。如果你们需要帮助让这些功能对儿童更友好请随时联系我。是的我们不想忽视儿童用户这将非常重要尤其是在下一个冲刺阶段。这引出了我要宣布的消息。我过去可能跟你们提过一个教育贸易展。我们曾试图获得一个展位但没有成功。现在有一个展位空出来了他们提供给了我们。问题是展会就在下下周所以我们需要一个相当扎实的原型在下一个冲刺阶段进行演示。鉴于你们刚刚展示的工作成果我认为这不是问题。但我们应该讨论一下你们下一个冲刺要开发的功能。考虑到贸易展的性质我认为我们应该专注于产品的教育功能方面。Daniel你有空留下来帮我们决定下一个冲刺要开发哪些功能吗当然可以。太好了太棒了。那么你们大家觉得怎么样我认为这听起来绝对太棒了。这是一个展示我们所有辛勤工作的绝佳机会。听起来很酷。我同意。好的我认为最合理的做法是回去讨论下一个冲刺的功能。你们觉得怎么样听起来很棒带路吧。总结本节课中我们一起学习了一个完整的客户演示与反馈收集流程。我们看到了开发团队如何清晰地展示浏览、搜索、自动书签和离线阅读等核心功能。更重要的是我们学习了客户反馈如何提供关键的产品改进方向例如增加书籍详情页和深化儿童友好设计。最后我们看到了外部机会如贸易展如何影响产品路线图并促使团队围绕新的目标教育功能规划下一个开发冲刺。这个过程体现了软件产品管理中持续沟通、灵活调整和以用户为中心的核心原则。042待办事项列表优化周五https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/5830d83f28da2e26df9dbf140782e94e_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/5830d83f28da2e26df9dbf140782e94e_2.png概述在本节课程中我们将通过一个视频模拟场景观察一个产品团队如何为下一个冲刺阶段优化他们的产品待办事项列表。我们将看到团队成员如何讨论功能优先级、权衡取舍并最终确定冲刺计划。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/5830d83f28da2e26df9dbf140782e94e_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/5830d83f28da2e26df9b9f140782e94e_2.png根据我们之前的计划在下一个冲刺中我们计划开发账户功能包括登录和密码维护。我们还将添加浏览已读材料的功能。此外我们计划添加收藏夹列表、待读列表和弹出式词典工具。然后我们将添加好友列表以及与好友连接的功能。另外还有上一个冲刺中被移出的排序功能。这些功能中有许多能为产品带来很酷的体验但我认为它们不会产生最大的教育影响力。你知道同伴阅读功能会很重要但我们需要更多。我认为弹出式词典工具是下一个冲刺的必备功能。我还希望看到我最初建议的阅读理解测试工具被实现。这个想法听起来不错。那么阅读理解测试会包含哪些功能呢此前与理解测试相关的功能优先级较低但我们绝对可以重新提高它们的优先级以匹配我们新的关注点。与理解水平相关的功能包括测试流利度和阅读理解水平的能力以便根据你的理解水平为你推荐材料应用程序可以跟踪阅读理解的进步情况这些进步可以通过语音识别来跟踪。你认为这些功能你们能完成吗说实话我认为我们无法实现语音识别。要在一周内实现它太困难了。编程识别哪些声音和语速不仅需要大量研究还需要大量编程工作。不过所有其他功能都是完全可以完成的。我同意。但是如果不使用语音识别我们如何跟踪阅读理解水平呢丹尼尔是否已经存在一个我们可以用作功能的阅读理解测试我想到一个测试它是书面和多项选择题的结合基于一个用于阅读理解测试的标准文本。否则如果不听读者朗读测试阅读流利度是相当困难的。好的那太好了。我认为我们应该实现多项选择和书面测试。那么我们必须去掉哪些功能呢如果我们添加测试理解能力、根据阅读水平提供建议、跟踪进步情况以及根据阅读水平匹配用户这些功能。那么这意味着我们必须从当前为冲刺3制定的计划中移除价值11个故事点的工作量。我考虑去掉浏览已读材料、与好友连接以及好友列表这些功能这应该能释放出8个故事点。是的我同意。等等阅读材料是否已经有对应的难度等级我们可以用来根据用户的阅读理解水平匹配材料不还没有。而且我认为我们无法在这个冲刺中完成这个功能。有道理。我会记下来为未来的迭代研究如何为数据库获取这些信息。好的我们现在还超出了一个故事点所以必须再削减一个故事。重置密码功能怎么样我认为这对贸易展览来说不是必需的。我同意。这听起来没问题。等等我们上个冲刺移出的那个排序功能呢我们还会创建它吗我认为我们并不真正需要它。我更愿意完成其他功能。好吧我本来真的很期待创建那个功能的。那么我们将要完成账户功能、待读列表、收藏夹列表、弹出式词典以及阅读理解测试和匹配功能。我认为这听起来很棒。你觉得呢丹尼尔我同意。我认为我们既有一些很棒的教育功能也有一些其他很酷的功能。我会把那个理解测试发给你如果你需要帮助我可以过来或者你可以随时打电话或发邮件给我。好的团队我迫不及待想看看成果了。祝你们顺利。好的待会儿见。总结在本节课中我们一起观察了一个产品团队进行待办事项列表优化的过程。我们看到了团队如何根据产品目标教育影响力重新评估功能优先级。对功能进行权衡取舍决定增加哪些高价值功能如阅读理解测试并移除或推迟哪些功能如好友列表、排序功能。考虑技术可行性如放弃语音识别。最终确定下一个冲刺的、范围明确且可行的计划。这个过程展示了敏捷开发中持续规划和调整的重要性以确保团队始终致力于交付最高价值的产品功能。043冲刺回顾会模拟https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/7d6f49b4883b36114b3d0e2ca883f6b4_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/7d6f49b4883b36114b3d0e2ca883f6b4_2.png概述在本节课程中我们将通过一个模拟的冲刺回顾会视频学习敏捷开发中冲刺回顾会的标准流程和核心要点。回顾会是团队反思与改进的关键环节。会议开场与目的团队完成了冲刺应用看起来很不错。团队对成果感到自豪。项目经理提议进行一次快速的回顾会因为接下来有一个重要的冲刺需要确保团队处于最佳状态。回顾会第一部分做得好的方面以下是团队在本冲刺中表现良好的方面完成了用户故事团队坚持不懈最终完成了所有用户故事。提前编写测试这是一个巨大的改进。沟通顺畅站会富有成效项目经理始终清楚项目状态这是从上个冲刺以来的一项积极改进。保持积极与团队合作尽管遇到了一些困难但团队共同协作克服了它们。回顾会第二部分出现的问题上一节我们总结了团队的优点本节中我们来看看需要改进的地方。以下是团队在本冲刺中遇到的问题依赖关系管理不足数据库连接本应在之前的冲刺中设置好因为本冲刺的许多工作都依赖于此。如果当时没有完成整个冲刺可能失败。结对编程减少由于时间紧迫团队减少了结对编程。故事点估算不准确幸好团队在开始前发现了这个问题。回顾会第三部分改进措施在分析了优点和问题后现在我们来制定具体的改进计划。以下是团队为下一个冲刺提出的改进措施增加结对编程尝试在分配下个冲刺任务时以结对形式进行。如果一两天后效果不佳可以恢复原来的方式。保持良好沟通目标是维持当前的沟通水平避免倒退。会议总结团队认为这次回顾会很有成效并为下一个冲刺做好了准备。总结本节课中我们一起学习了冲刺回顾会的模拟过程。回顾会通常包含三个核心部分总结做得好的方面、分析出现的问题、并共同制定改进措施。有效的回顾会能帮助团队持续反思、协作并提升后续冲刺的效率。044模拟站立会议周三https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/9efbc5076c38acc50269d9b4b85e9f1e_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/9efbc5076c38acc50269d9b4b85e9f1e_2.png概述在本节课程中我们将通过一个模拟的周三站立会议场景来观察一个敏捷开发团队在日常站会中如何同步工作进度、讨论问题并规划当日任务。你将了解到站会的基本流程、有效的沟通方式以及如何处理开发过程中的优先级冲突。会议内容实录与分析会议开始团队成员逐一进行汇报。以下是第一位成员的汇报昨日完成完成了Daniel布置的阅读理解测验并将其开发成了一个完整的功能。所有测试均已通过文档也已编写完毕。今日计划开发基于阅读水平为远程用户进行匹配的功能。所需帮助希望相关账户能在其开始跟踪阅读进度改进功能前设置好以节省时间。阻塞问题无。接下来第二位成员进行汇报。昨日完成完成了账户系统和登录功能并根据Daniel的建议使登录流程对儿童更友好。开始了“单词释义”功能的开发找到了儿童词典数据库并从Lisa处获得了必要的授权。目前实现了长按单词弹出窗口但尚未连接释义数据。今日计划开始将释义数据连接到弹出的窗口。阻塞问题无。随后第三位成员开始汇报但内容引发了关于任务优先级的讨论。昨日完成一直在开发浏览材料排序功能。今日计划原计划继续此工作。阻塞问题无。此时其他成员提出了疑问“等等你不是应该在做‘收藏夹’和‘待读列表’功能吗我以为排序功能已经被砍掉了。”该成员解释说自己对排序功能有很多想法并认为“收藏夹”和“待读列表”功能只需要很少时间就能完成。这引出了一个关键的项目管理问题个人兴趣与项目优先级冲突。另一位成员明确指出“不这很重要。”团队决定暂时搁置争议提议“我们稍后再单独讨论这个问题”。由于上述讨论该成员调整了计划“好吧我昨天是在做那个排序功能。现在我也不太确定今天要做什么了。”总结本节课我们一起模拟观察了一次敏捷团队的站立会议。会议中团队成员同步了开发进度如“完成登录功能”、“通过所有测试”并明确了当日任务如“连接释义数据”。同时我们也看到了一个典型的团队协作挑战当个人想继续从事被搁置的功能排序功能而团队优先级要求他转向其他任务收藏夹和待读列表时如何妥善处理。有效的解决方式是及时识别冲突并约定在会后进行专门讨论以确保站会高效、聚焦。045模拟站立会议周五https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/c9aa75664fa71fabdef527dcede56edf_1.png在本节中我们将通过一个模拟的周五站立会议场景来观察一个敏捷团队如何同步工作进度、讨论障碍并规划当日任务。你将看到团队成员如何简洁地汇报工作、寻求帮助并协调任务优先级。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/c9aa75664fa71fabdef527dcede56edf_2.png会议内容以下是团队成员在站立会议中的发言记录展示了各自的工作进展、计划及遇到的挑战。Josh:昨天我按照Daniel的建议将识字能力测试功能与账户创建流程连接了起来。我花了整个上午来实现这个功能。我还增加了允许用户重新参加测试的功能以便他们可以重新评估自己的理解水平。今天我计划编写基于水平的远程匹配功能的文档。此外如果任何人需要我也可以帮忙审查代码或运行验收测试。我目前没有遇到阻碍。Samantha:昨天我基本完成了弹出式定义功能。在一天结束时我运行了单元测试发现似乎还有一个小问题需要修复。修复之后这个功能就可以进行验收测试了。Josh如果你能帮我做验收测试我将非常感激。Josh:太好了谢谢。我是一边开发一边编写文档的所以测试完成后这个功能也就彻底完成了。我这边没有阻碍。Daniel:好吧各位我的进度严重落后了。那些列表功能花费的时间比我预想的要长得多。我在整个排序功能上花了大量时间。我想我今天只能完成其中一个列表的删除功能。这个功能已经与允许本地保存到设备的功能连接好了。我们应该先做哪个列表Samantha:我个人认为“待读”列表可能比“收藏夹”列表更重要。Josh:是的我也是这么想的。你同意吗DanielDaniel:同意。我应该在接下来几个小时内能完成它。另外有人能帮我整理文档吗我已经有很多笔记了只是需要把它们更正式地写出来。Samantha:我可以做这个。Daniel:好的谢谢。伙计们我很抱歉我感觉自己像个傻瓜。Josh:嘿别担心。我相信完成一个列表也没问题。如果有任何我能帮忙的请告诉我。Samantha:好了团队让我们把这件事完成吧。核心实践与要点上一节我们介绍了站立会议的基本形式本节中我们通过具体对话看到了其实际应用。以下是本次模拟会议中体现的几个关键敏捷实践要点进度同步每位成员清晰地陈述了“昨天做了什么”、“今天计划做什么”以及“遇到了什么障碍”。障碍识别与解决Daniel公开提出了进度延迟的问题团队立即协作通过优先级讨论优先完成“待读”列表和任务分担Samantha协助整理文档来应对。保持简洁与专注会议围绕任务进展展开没有深入技术细节符合站立会议短小精悍的原则。团队支持氛围当Daniel表达挫折感时团队成员给予了鼓励和支持这有助于维持团队士气。总结本节课我们一起学习并模拟了一个典型的周五站立会议。我们看到了团队成员如何通过结构化的沟通昨日成果、今日计划、当前阻碍来保持同步如何协作解决优先级和资源问题以及如何维持积极支持的团队环境。有效的站立会议是敏捷开发中确保信息透明、快速响应变化和保持团队前进动力的重要仪式。046客户演示模拟https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/bf39a96f11e32c582276cfef6f8d1af3_1.png概述在本节课中我们将观看一个客户演示的模拟场景。这个演示展示了一个为儿童设计的阅读应用涵盖了账户管理、阅读水平测试、配对功能、词典工具和书单管理等核心功能。我们将通过这个演示来了解如何向客户展示一个软件产品的核心价值与用户体验。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/bf39a96f11e32c582276cfef6f8d1af3_3.png演示开场与账户系统演示者首先回顾了本周的进展并向客户展示了一款功能完善的产品。以下是账户系统的主要功能点家长账户创建家长可以通过点击按钮为自己创建账户。登录功能家长可以登录自己的账户。管理子账户登录后家长可以看到关联到自己账户下的孩子账户列表。添加子账户家长可以通过点击指定按钮添加新的孩子账户。儿童登录与阅读水平测试上一节我们介绍了家长端的账户管理功能本节中我们来看看儿童用户如何登录以及应用如何评估他们的阅读能力。儿童登录过程非常简单他们只需点击列表中自己的头像即可。如果是首次登录系统会引导他们完成一个阅读理解测试。以下是阅读理解测试的流程测试内容儿童阅读一小段文本并回答几个相关问题。动态调整如果文本对孩子来说太难或太容易系统会根据他们的得分将他们重定向到更难或更简单的文本段落。生成阅读等级最终系统会给出一个分数该分数直接对应孩子的阅读水平。重试机制儿童可以随时在主屏幕上通过按钮重新参加测试。基于阅读水平的配对功能在确定了儿童的阅读水平后应用可以利用这一信息来优化社交阅读体验。儿童可以选择基于阅读水平进行配对。当他们像往常一样尝试连接时会弹出一个窗口询问他们是否希望根据阅读水平进行配对。如果周围没有阅读水平完全相同的人系统会将他们与分数最接近的可用用户进行配对。内置词典与书单管理除了核心的阅读和社交功能应用还包含了一些提升阅读体验的实用工具。接下来展示的是弹出式词典功能。当儿童在阅读任何书籍时如果遇到不认识的单词只需长按该单词词典定义就会立即弹出。这是一个儿童词典定义非常易于理解。要退出词典只需点击弹出窗口外的区域即可。应用还允许儿童管理自己的阅读计划。以下是书单管理的具体操作添加到“想读”列表儿童可以通过点击每本书旁边出现的星形按钮将书籍添加到“想读”列表。本地保存“想读”列表中的所有书籍都会自动本地保存到设备上以便他们随时随地阅读。删除项目可以通过点击每本书旁边的小垃圾桶按钮从列表中删除书籍。客户反馈与讨论在功能演示结束后客户团队与开发团队进行了交流并提供了反馈。客户首先确认了一个功能点“不是应该还有一个收藏夹列表吗” 开发团队承认这原计划中但由于时间限制未能完成并认为目前一个列表已经足够。客户表示同意认为两个列表可能会让应用变得过于复杂并称赞了当前的设计。客户对应用的整体成果给予了高度评价认为它将在贸易展上大获成功。他们特别赞赏了以下几点阅读理解测试认为它比人工测试方便得多。功能的教育影响力相信所选择的功能将产生巨大的教育影响。弹出式词典认为它能帮助孩子在阅读时顺畅地查询生词。同时客户也提出了一个改进建议可能需要一个入门教程来引导孩子们发现并使用这些功能。开发团队认为这是一个好主意但可以留待后续实现。总结本节课中我们一起观看并分析了一个软件产品向客户演示的完整模拟过程。我们看到了一个儿童阅读应用从账户系统、智能测试、社交配对到阅读辅助工具的全功能展示。演示不仅清晰地呈现了产品价值还通过客户互动环节展现了如何处理反馈、调整优先级以及规划后续改进。这体现了软件产品管理中沟通、演示和灵活响应需求的重要性。047项目回顾模拟 https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/44bdfaa1d5bfa48280da379a7046d47e_1.png在本节课中我们将通过一个模拟场景学习如何进行一次完整的项目回顾会议。项目回顾是敏捷开发中的重要环节旨在总结经验、识别改进点以帮助团队在未来做得更好。上一节我们介绍了项目收尾的各项工作本节中我们来看看如何通过结构化的回顾会议对整个项目进行复盘和反思。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/44bdfaa1d5bfa48280da379a7046d47e_1.png这次项目旅程相当精彩希望大家都乐在其中。现在我想进行一次项目回顾。我知道我们过去做过冲刺回顾但你们中有多少人做过项目回顾我没有。我听说过但从未实践过。这个项目的成功离不开团队每一位成员的辛勤工作。我个人想说能与你们所有人共事我感到非常自豪。第一步营造安全氛围任何项目回顾的第一步都是确保每个人都能舒适地、开放地谈论自己的想法。因此我想先做一个快速的匿名投票。请在一张纸上写下一个1到5的数字这个数字代表你在此次会议中参与开放对话的安全感程度。1表示非常不舒适5表示非常舒适。很好。我本以为不会有什么问题确实没有人给出低于4的分数。我们继续。第二步分享意义物件大家都带了自己的“意义物件”吗我们该如何处理这些物件呢我希望每个人谈谈哪个物件对他们意义最大。以下是团队成员分享的物件乔什我带来了一张截图是我第一次单元测试失败时的打印件。我喜欢它因为它提醒我我的代码并非总是完美的单元测试也很重要即使它们会占用更多时间。哦我还带来了亚历克莎给我买的一罐“杀虫剂”是个玩笑。亚历克莎我带来了这张有人留在我桌上的便利贴上面写着“今天干得不错继续加油”。我不知道是谁写的请别告诉我我有点喜欢这种未知的感觉。它帮我度过了一个艰难的日子被欣赏的感觉很好。所以谢谢写它的人。产品经理我当然也带了东西。我带来了我们项目的燃尽图。我认为我们共同完成的工作量是惊人的我想提醒大家这一点。我还带来了一本童书的实体版就是我们为坎达塔项目使用的那本我特意去买了一本。它是这个项目的纪念品希望未来能将这样的书籍带给全世界更多需要的孩子。也许之后我们可以作为一个团队和我们的物件一起拍张照片。第三步评估项目成功与否那么我们来多谈谈这个项目。它成功吗我不知道。我们完成了所有预定任务但我只是希望我们能继续做下去。我感觉我们没有打造出我们能打造的最好的产品。我明白你的意思但你必须记住我们在专注于重要事项和按时交付方面确实做得非常好。而且我们必须在仅仅几个冲刺内为贸易展交付一些东西。在这么短的时间里你不能期望完成太多。你说得对我们本可以做得更多。乔什你怎么看实际上我认为它相当不错。我的意思是确实没发生什么大事。第四步构建项目时间线那么下一个练习是构建我们的项目时间线。考虑到项目周期很短这应该相当简单。我们每个人在一张便利贴上写下一个事件然后贴在这张纸上。之后我们再写下其他重要事件也贴上去。我来从项目开始我们所有人开始一起工作的时候写起。第一个重大事件应该是我们开始构建应用程序的时候对吧我认为我们应该先写下需求分析过程。我们可以把两者都写下来这是一个协作的过程。第五步结构化讨论现在让我们思考一下这个时间线。我们可爱的产品经理给了我们一些讨论主题。我们来谈谈它们。什么对我们很有效我们的流程。我认为我们很好地遵循了敏捷实践。我认为我们作为一个团队合作得非常好并且在所有事情结束后我们的沟通也相当不错。我们学到了什么我学到了编写测试用例并没有那么难。我学到了在未与所有人沟通前不应只做自己认为正确的事。我学到了Scrum可以成功应用于小型项目。我还学到了我在团队中工作得比我想象的要好。下次我们会有什么不同的做法伙计们你们太棒了。知道吗这有很多内容。哇我们在这个项目中确实做了很多不是吗好了差不多就这些了。我认为没有其他需要讨论的了。你们还能想到什么吗没有我想不到了。第六步会议收尾那么就这样吧。这次很有趣。我们拿着所有这些物件拍张照片怎么样然后我可以马上发给你们。太棒了谢谢你们和我一起完成这次回顾。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/44bdfaa1d5bfa48280da379a7046d47e_3.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/44bdfaa1d5bfa48280da379a7046d47e_3.png本节课中我们一起学习了项目回顾会议的标准流程。从营造安全氛围开始通过分享意义物件建立情感连接进而评估项目整体成败并可视化项目时间线。最后通过结构化讨论聚焦于“什么做得好”、“学到了什么”以及“下次如何改进”这三个核心问题从而系统性地完成项目复盘促进团队持续成长。048毕业祝贺与总结在本节课中我们将一起回顾并总结整个毕业项目的学习历程并对未来的职业发展致以祝福。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/ec04338365cf26a617f9c5c7d2966bf9_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/ec04338365cf26a617f9c5c7d2966bf9_2.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/ec04338365cf26a617f9c5c7d2966bf9_1.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/ec04338365cf26a617f9c5c7d2966bf9_3.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/ec04338365cf26a617f9c5c7d2966bf9_2.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/ec04338365cf26a617f9c5c7d2966bf9_3.png你成功完成了课程我们表示祝贺。阿尔伯塔大学为你在此专项课程中付出的辛勤努力感到无比自豪。我们希望你能将所学知识应用于未来职业生涯的每一个阶段。我们珍视你发布的每一条论坛帖子和发送的每一封邮件。与你共同学习的这段旅程非常精彩我们感谢你的全心投入。我们非常享受为你制作这些课程的过程并希望你也同样享受学习的过程。我们祝愿你在未来的所有努力中都能获得最好的运气。因此请随时告知我们此专项课程将你带向了何方。再次感谢你并祝贺你成功毕业。https://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/ec04338365cf26a617f9c5c7d2966bf9_5.pnghttps://github.com/OpenDocCN/cs-notes-pt3-zh/raw/master/docs/albt-swpjmgt6/img/ec04338365cf26a617f9c5c7d2966bf9_5.png本节课中我们一起学习了毕业项目的最终总结。我们回顾了整个学习旅程强调了将知识应用于实践的重要性并对未来的职业道路表达了美好祝愿。恭喜你完成这一重要的学习阶段。