一、基本情况

(1.1)请回望第一次作业,你对于软件工程课程的想象

“这是一门一个学分却能当十个学分上的课”,这是上过这么课的学长学姐们对这门课的统一评价。
遥想开学之初,我怀揣着如此忐忑不安的心情,走进了软件工程这门课的课堂。虽然经过大学前两年的知识,以及暑假两个月学习深度学习的经验积累和成长,但是我在学习这么课程之前并未真正亲手完整开发过一款属于我自己的软件。不仅缺乏软件开发的各种技能,更是缺乏“自己能做得到”这种自信心。而软件工程,顾名思义,是一门教会我们软件是如何被开发出来的课程。所以我坚信,这门课程将是我专业技能的一个转折点,是能够充实自己的技能栈、开阔自己的眼界、并能带给自己与努力付出相匹配的,甚至超过付出的收获的课程。
在第一次作业之前,我机缘巧合地加入了测评组。没有相关知识储备,甚至不知道测评组具体的工作到底有哪些,以至于刚开始我十分犹豫与不自信,怀疑自己是否胜任这份工作。最重要的是,我并不确定参与测评组的工作能不能让我真正学习到软件开发的知识。因为原本我以为在这里只会被大佬们带飞(然而也确实很多地方一直在被带飞),但是真正加入测评组之后,从评审工作和意见交流中,我仍真切从课程、组内大佬们、各组同学的作品中以及自己对这门课程的付出中感受到,自己从个人技能到团队合作能力等各方面能力有了质的提高。

(1.2)总结这门课程的实践总结和给你带来的提升:

  • 在软工实践课程当中我编写了1153行代码。

Ps.指跟着第一次编程作业和结对作业写的代码,团队编程单人实在跟不下去

  • 评审哪一次作业让你印象最深刻?为什么?
    目前为止,在经历过第一次博客作业、第一次编程作业、结对编程和团队的Alpha、Beta冲刺后,我个人印象最深刻的还是结对编程。

    相信很多同学也和我是一样的想法。因为结对编程要求的作品是要求完成完成一个功能相对完善的、真实的卡牌游戏。这无疑对编码水平存在一定挑战。当时我一边参与测评组的工作,一边自己尝试完成这项作业。最开始当然我也是如同毫无头绪的无头苍蝇一样,对突如其来的“游戏开发”根本无从下手。但“实践是检验真理的唯一标准”,本着凡是都应该从实际出发,自己逐渐发现其实曾经畏惧的、没有自信尝试的东西,花费时间钻研学习,大多数的问题都是可以迎刃而解的。这也就使我的思想第一次明确地从“不敢做”向“做得到”实现转变。

    而在评测工作中,结对编程的要求确实详细地描述了“猪尾巴”卡牌游戏的规则。但是这次作业的评审过程还是异常地坎坷。

    首先,在博客的标题划分上出现问题的博客,从第一次作业到结对作业都出现了一部分,处理这些纠结这些博客的处理方式,已经快是组内每次批改博客作业的日常事项了。再者,因为结对编程作业所要求的卡牌游戏并不限制各小组用什么方式实现,所以看得出各小组都希望各尽其长,展现出最好的游戏效果。所以这就产生了我们对各个作业程序评价标准难以统一的问题。同时,这次作业测评在具体分工上也是一大挑战,要根据各小组的实现方向分成安卓方向、微信小程序方向、Web方向等等不同的方向,并安排人员测评。前前后后还有例如申诉问题等待,导致测评报告的ppt几乎死亡冲刺,差点让我实现了看到凌晨四点福大的梦想(nope)。最后,在本次作业的最大亮点——对战环节上,因为我们实现很多细节和管理实现方式考虑不周全,所以也造成了例如题目要求部分改动、重要环节“人机对战”最终无奈取消等令人颇感遗憾的结果。这也令测评组内对于结对作业进行了较为深刻和透彻的反省,从而在后面的团队作业中,对作业及活动流程、可行性评估方面有了更加周期的考量。也因为这次作业,让我真正明白测评组并不是表面上看起来那么轻松。

  • 在软件工程课程上花费的时间

  • 累计时间 实际周均时间 预计周均时间
    85h 5.4h 5h
  • 介绍学习到的新技术或生产力工具以及它们给你带来了哪方面的作用?

  1. 亿图图示:画各种图YYDS,大幅提高画图效率(大概)
  2. Auto.js:为开展现场编程的组织,学习了Auto.js的使用。了解到了JavaScript作为脚本语言的另一种使用方式,加深了对于现有脚本语言的认识和运用。
  • 其他方面的提升

    从各个小组的团队作业开发的过程中,我也从中学习了解到许多我个人特别希望了解的前后端开发知识。例如我从我每个小组博客和代码之中,学习到了一些前端的知识和技巧,例如使用Vue.js,Swiper.js等框架和库便捷快速布置界面,同理对后端的Django、Spring等框架了解也更加深刻了。甚至还顺便从隔壁班"偷师"了一点微信小程序的用法(我就是偷师带师)。而且软工团队作业的开展时间和数据库实践大作业挨得比较近,所以我也得以将所学知识,最终付诸实践,也算是曲线救国了吧。

二、总结与收获

在测评组中,我主要参与和负责后勤、博客批改、作业测评汇报等工作。
在这个学期中,通过参与测评组的作业评审工作,我不仅学习和了解到程序软件的测试、评价方式,还在测评组内再次了解和体会到了团队合作的重要性,以及分工合理、团队高效交流协作是顺利完成工作任务的必要条件。最重要的是,通过与组内成员沟通交流,我也了解到了许多不同看待问题的角度和实践经验。十分庆幸自己当初加入了测评组。

三、致谢

最后,我想感谢柯老师,感谢老师给我们这样一个难得的亲身实践机会,让我们在这门课程中能够体验软件开发的过程,磨练自身技术。也让我可以作为测评组的一员,参与软件测试评估的工作。使得我在本门课程中不仅收获技术,更收获了真正的成长。

更多文章请关注《万象专栏》

本栏目由《康祺惠购APP》独家赞助