学期总结
工程化基础与质量保障(第三讲、第十一讲):
单元测试 (Unit Testing): 强调其作为开发者自测、保障代码质量的核心手段。通过“最大值函数”案例生动展示了测试驱动开发(TDD)的理念:先设计测试用例(考虑边界、异常),再编码实现,通过测试验证和修正代码。认识到测试是开发不可或缺的部分,而非负担。
代码规范 (Coding Standards): 区分了代码风格规范(缩进、行宽、命名、注释等)和代码设计规范。良好的规范(如匈牙利命名法、Pascal/Camel大小写)是团队协作、代码可读性、可维护性的基石。避免写出“意大利面条式”代码是专业性的体现。
人机交互设计 (HCI & UX): 聚焦用户界面(UI)与用户体验(UX)。核心原则包括:以用户为中心(同理心)、一致性(记住用户选择)、平衡短期刺激与长期可用性、防止用户犯错(如飞机遥控器、医疗设备设计)。UI/UX设计直接决定软件是否易用、高效、令人满意。
个体效能与协作模式(第五讲、PSP):
结对编程 (Pair Programming): 介绍了驾驶员(Driver)与领航员(Navigator)协作模式的价值:实时复审、知识共享、减少缺陷、提升设计质量。理解了其适用场景(如复杂问题、知识传递)和挑战(初期效率、角色磨合)。成功的结对需要相互尊重、频繁沟通和角色轮换。
个人软件开发过程 (PSP): 强调软件工程师需量化评估自身能力(PSP0:时间/缺陷日志;PSP1/2:规模估算、设计/代码评审)。通过记录计划时间、实际时间、缺陷引入/排除数据,实现自我改进。PSP是理解团队流程(如Scrum)的基础,也是职业成长(技能提升、时间管理、承诺兑现)的关键路径。
需求把握与项目掌控(第七讲、第九讲):
需求分析与用户调研: 深入学习了用户场景分析(典型用户Persona构建、用户场景描述)和NABCD模型(Need需求, Approach做法, Benefit好处, Competitors竞争, Delivery交付)。NABCD是提炼创意、说服他人(如电梯演讲)的利器。认识到深入理解用户(痛点、动机、行为)是项目成功的起点。
软件项目估计: 辨析了目标(Goal)、估计(Estimate)、决心(Commitment)的区别。掌握了几种估算方法:宽频德尔菲法(Wide-band Delphi)促进团队共识、类比法参考历史数据、分解法(自底向上/回溯)。理解了估算不准的普遍性及改进方向(经验积累、数据记录、考虑风险)。
团队协作与敏捷实践(第六讲 - Scrum):
团队模式与流程: 了解了多种团队组织形式(主治医师、交响乐团、爵士乐、功能团队等),认识到没有万能模式,需根据项目特点和团队构成选择。
敏捷开发与Scrum框架: 这是本学期的重点实践内容。深入理解了Scrum的核心价值观(承诺、专注、公开、敬重、勇气)和核心要素:
角色 (Roles): 产品负责人(Product Owner - 定义需求优先级)、Scrum Master (移除障碍、保障流程)、自组织团队(Team - 跨职能、协作交付)。
工件 (Artifacts): 产品待办列表(Product Backlog - 用户故事)、冲刺待办列表(Sprint Backlog - 本迭代任务)、增量(Increment - 可工作软件)、燃尽图(Burndown Chart - 可视化进度)。
事件 (Events): 冲刺(Sprint - 固定周期迭代)、冲刺计划会议(Sprint Planning)、每日站会(Daily Scrum)、冲刺评审会议(Sprint Review - 演示成果)、冲刺回顾会议(Sprint Retrospective - 团队改进)。
Scrum通过短周期迭代、持续反馈、灵活调整,有效应对需求变化,聚焦于交付高价值的可工作软件。
总结与反思:
本学期的学习涵盖了软件工程从微观编码规范到宏观项目管理的全貌。深刻体会到软件工程不仅是技术活,更是“人”的工程:需要个体的严谨(单元测试、PSP)、高效的协作(结对编程、团队模式)、深刻的用户洞察(需求分析、HCI)以及适应变化的灵活流程(Scrum)。理论与实践相结合(如Scrum的课堂练习与实践)让我们对抽象的模型有了切身体会。未来的软件开发实践中,应持续应用这些原则和方法,追求高质量、高效率、用户满意的软件交付。软件工程的精髓在于将复杂问题系统化、工程化解决,并在持续的反馈与改进中臻于完善。
对课程的建议:
1:课程作业时间放在17周真的很困难,17周本来是复习周多个作业没什么事,但是17周多了两门考试,还有四六级的英语考试,事情有点多
2:当前ai盛行,可以增加AI+java的课程
3:上课只讲理论感觉有点空,希望可以多一些实际的操作讲解(有一次讲自己研究生那个绝对地址相对地址感觉帮助比较大)
浙公网安备 33010602011771号