310
社区成员




本学期是软件工程实践课采用《构建之法》提倡的“做中学”方法的第8个年头,师生交流的平台由博客园,更换至CSDN教学社区第三年。
本轮教学一点总结:
一、坚持结合时事,设计系列从浅入深的作业
这几年我们采用结合同一时事背景,构建四次难度逐级递增的编程&设计作业,每次实践作业所锻炼的专业能力各不相同,但是将几次作业前后贯穿起来,就能够全面提升学生解决复杂工程问题的能力:
课程初期受到世界游泳锦标赛的吸引,与助教们讨论后一拍即合–本学期就结合它啦。
第一次作业的问题很简单,针对助教提供的跳水项目中的比赛信息和参赛选手信息文件,设计实现一个能够对赛事数据进行统计的控制台程序。这个简单的背景,训练学生对问题的分析能力、设计能力。作业中还设计了进阶的要求:对已完成的程序进行性能分析,检查在高压环境下程序的性能,并提出优化方案。这个要求训练了学生的优化设计能力,同时也让学生提前了解单元测试相关的内容,为和后续课程学习做好铺垫。此外,本次作业要求以博客方式发布,训练了学生沟通写作能力和对GitCode环境的使用。
第二次作业要求同学们结对,在协作的前提下,完成世界游泳锦标赛赛事信息发布网站的原型设计。本次作业问题比第一次复杂,要求学生运用所学的需求分析知识,自学原型工具,在实践过程中体会需求表达的作用。同时训练了学生的分析问题能力、设计能力和初步的团队协作能力。
第三次作业是对前一次的进阶,通过本次作业,让学生完成从产品设计到产品实现的转换。重点训练学生的协作能力、沟通能力、分析问题能力和设计能力。
第四次作业任务比起前三次更为综合,要求团队(本次作业之前,同学们已经组成项目开发团队)在一天内开发一个世界游泳锦标赛竞猜平台。通过这次强度较大的协作开发,要求团队成员密切协作,共同努力完成目标。这有助于增强团队的凝聚力和合作能力。通过设定明确的时间目标,团队被迫在有限的时间内完成特定任务,从而避免拖延和无效的时间管理,训练项目管理能力。同样还训练了问题分析能力、设计能力。
二、结合国产软件的尝试
本轮教学初期,课程申请了华为”智能基座”课程建设项目,由此接触了华为云相关课程和产品。经过课程组讨论,本轮教学在Beta冲刺环节,要求学生将项目部署在华为云上。不出所料地,这一要求受到不少小组的质疑。最普遍的反映是“Alpha冲刺已经部署在**云上,现在还要花时间去学习华为云部署、花钱买华为云服务!”包括有些助教页不太能理解。为此教学团队首先疏导助教们的想法–“在实际开发中,部署在哪里不取决于开发者擅长什么,而是取决于客户要求是什么”,作为开发者,需要具备的首先是”大局观”,其次是“善于学习”。接着课程组承担各项目组的华为云服务费用,来消除学生们的顾虑。收获不少做的不错的小组作业可遇可球——Beta阶段置顶集合随笔、共享之舟——Beta阶段置顶集合随笔。下一轮教学课程组将深化软件开发过程与国产软件结合的深度。
三、历次作业中涉及各个课程目标的分值,应作出适当调整
有多次作业中均涉及沟通和协作能力方面的分值,从这几轮教学结果上看,应有所调整,适当降低,以突出对学生分析和设计能力的评价。在下一轮教学中,我们将做一些探索。
四、团队规模设置上限
前两轮教学,平均团队人数基本在10人,导致仅通过贡献度难以拉开差距的情况。本轮教学我们限制小组人数上限为8人,这样相比于前两轮,能够适当拉开贡献度低于贡献度高两者的分值差距。当然,最理想的是小组人数在5人左右,但目前来看还是难以做到。
五、保持开放
软件工程这个学科的特点使得软件工程师不能停滞不前、不能闭门造车,要训练同学们开放的心态,对新知识、新技术、新事物关注学习的心态。然而只有这个还不够,还需要有对技术评判的能力。因此,本轮教学我们设计了对“文心一言、通义千问、讯飞星火和kimi”的技术评测作业。
很有幸,我们请到邹欣老师为同学们的这次软件评测进行点评,并请邹欣老师作了题为“AI校园讲座—《AI 时代的软件创新》“讲座:
邹欣老师也指出同学们在软件评测中的不足之处:不够深入,未充分暴露问题。这些建议,将在下一轮的教学中考虑增加一些内容。
获奖的同学们!
第一次领骑者:222100414李文斌 、222100125钱元城、222100132谢凌云、222100133蓝有润
第二次领骑者:222100423林磊 、222100136戴聪、222100135熊桂根、222100132谢凌云、222100314吴宇晨
蓝有润同学总成绩第一,获得大礼包!~
感谢人民邮电出版社提供的奖品!感谢本学期兢兢业业、辛苦付出的助教团队何浩然、郑至博、查贤、张宇梦、鲍仁俊、邓雨红、杨蕊蘭。时间悄然流逝,我们的软件工程实践之旅已接近尾声。这段充满挑战与收获的历程中,我们共同面对了无数的难题和考验,智慧与汗水交织成一幅珍贵的画卷。课程不仅仅是知识的传递,它更点燃了你们对编程的热情,激发了深入探索的动力。从最初的困惑到如今的从容应对,你们以坚定的信念和不懈的努力,展现了卓越的团队协作精神和敏锐的思维能力,令人倍感欣慰。
在软件工程的实践课程中,我们仿佛踏上了一段精彩的征程。从课程伊始,我们就怀抱信念,共同踏上了这段知识探索的旅程。正如“独行快,众行远”,在这段旅程中,我们不仅积累了丰富的知识与经验,还通过团队的力量领悟到了知识的真正价值。每一次的编码、每一次的调试,都是你们“Push Through”困难的证明。记住,“非学无以广才”,这不是结束,而是新的起点。这段旅程虽然暂时落下帷幕,却正如“日行千里,不止于足下”,是我们追求卓越的开端。愿你们在未来的道路上,继续勇往直前,创造属于自己的辉煌!
序号 | 起止时间 | 实践习题 | 覆盖课程目标 | 优秀作业博客 |
---|---|---|---|---|
1 | 1.28-2.16 | 准备篇–技术路线 | 1 | 222100108庄伟中 、222100133蓝有润、 222100134赛依旦木·艾合买提江 |
2 | 2.17-3.3 | 个人热身–文件读取 | 1、2、3 | 222100310许家榕、 222100123姚磊、 222100132谢凌云 |
3 | 3.4-3.10 | 结对作业第一次–原型设计 | 2、3、5、6 | 052101425龚舒言、 222100111张逸、 222100125钱元城 、222100133蓝有润 |
4 | 3.11-3.19 | 团队作业第一次—种子队选拔和团队展示 | 1、7 | 可遇可球队、 汪星人猫咪联盟队 |
5 | 3.21-3.26 | 结对作业第二次——编码实现 | 2、4、5、6 | 222100125钱元城、 222100417余承烨 |
6 | 3.28-4.9 | 团队作业第二次–需求分析 | 2、5、6、7 | 共享之舟队、 成双成队队 |
7 | 4.11-4.16 | 个人作业–软件评测 | 4、5 | 222100133蓝有润 、222100213何智锦 |
8 | 4.17-4.24 | 团队作业第三次—概要设计和数据库设计 | 3、4、5、6、7 | 可遇可球队、共享之舟队 |
9 | 4.30-5.14 | 团队作业第四次—团队作业α冲刺 | 2、3、4、5、6 | 共享之舟队、 学无止境队 |
10 | 5.8-5.9 | 团队作业第五次—团队协作编程实战总结 | 2、3、4、5、6 | 流光悦影队、 共享之舟队 |
11 | 5.15-5.28 | 团队作业第六次—Beta冲刺+事后诸葛亮 | 4、6、7 | 可遇可球队、成双成队队 |
12 | 5.30-6.6 | 个人作业—个人总结+项目总结 | 1、4、5 | 222100418张星航、222100306洪朗晨、222100133蓝有润 |