这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/SE2024 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/SE2024/homework/13315 |
这个作业的目标 | 回顾软件工程实践内容,做出课程总结 |
学号 | 102201630 |
一、学期回顾
1.1回顾你对于软件工程课程的想象
学期初认为的软件工程:代码山、团队合作、学习
课程将结束认为的软件工程:屎山代码、团队合作、冲刺性学习、时间紧迫以及各种寻求帮助和排除万难
一学期下来,最直观的学习、练习收获就是各种AIGC的使用、工程化(社畜化)的软件开发流程、不间断地学习各种应用化的知识;其实,这些都是远超期待的内容,也是狠狠地达到了预
期的目标(3K行代码,算上全部删改补的代码得有6k行代码,去除的话实际展现代码就在3k行),虽然不及其余大佬经验的零头,但还是为坚持下来的自己喝彩。不足的方面太多,也无法
全部列举,主要还是在于软件开发经验和编码上的缺陷,思路理清的情况下,编码工作占比却不是占20%(40-20-40),而是30%往上走,也就是在编写代码方面还是缺乏实践,编码思路
在脑袋中不够清晰。
1.2回顾你在这门课程中的投入与产出
·我在该实践课程中编写约3k行代码,3kloc
·在团队项目中我参与了(speak with AI)的设计与开发,我在其中所承担的角色是前端开发
·软工实践的各次作业分别花费的时间:
作业 | 花费时间 |
---|---|
第一次个人作业 | 4小时 |
第二次个人作业 | 2天 |
第一次结对作业 | 1天 |
第二次结对作业 | 5天 |
第一次团队作业 | 5小时 |
第二次团队作业 | 10小时 |
现场编程作业 | 4小时 |
团队作业beta冲刺 | 40小时 |
·在软件工程课程上花费的时间
累计时间 | 实际周均时间 | 预计周均时间 |
---|---|---|
150小时 | 13小时 | 11小时 |
1.3令你印象最深刻的是哪一次作业或哪一场答辩?为什么这次作业或这场答辩令你印象深刻?
印象最深刻的当属第二次结对作业了。个人在交流上的主观能动性太差,所以结对作业其实也是个人作业,但开发所需的知识和时间需求较多,以至于在零星时间里连续工作再加上集中工
作5天,才在舍友的绵薄之力的帮助下成功完成。这也是给我编程带来的真正意义上的经验(相当痛苦啊),给后续参与项目开发留了心底,让我有信息参与开发。
二、总结收获
2.1 展开说说你的软工实践故事
·个人编程、结对编程(无结对队友,所以都是个人编程)
-
经验总结
-
- 按需及时学习
-
- 多学习使用工具
-
- 注重代码可维护性
-
- 余留一定的新鲜度,保持动力
-
- 坚持、坚持、还是××的坚持
-
- 卡关死磕不可取,寻求他人帮助
-
实例分析
学习使用Craiyon制作个人logo图片
在初步学习软件开发过程后,首先进行的相关思路流程图,根据我理解的题意需求进行了最初的概要设计,以防止后续实现中出现思路紊乱。然后根据这个概要设计进行精化,大概了解在
实现过程中所需要的知识和工具并开始相应的学习,同时设计中并没有太完整,也是因为在最初设想中,功能还可以再进行新的添加,可以在概要设计新增相应的内容后,再对整体进行编
码实现。
·现场编程
-
经验总结
-
- 团队协作
-
- 编码工作有进展时,及时共享
-
- 团队交流十分重要,集思广益实现开发
-
实例分析
在现场编程的记账本项目中,我负责实现的是前端框架的简单构建。在理解项目需求后,迅速结合AI做出简单的前端界面与后端的功能实现相照应;尽管最初的框架构架简单,但是在共享
设计编码后,团队各自分工负责一部分,最终也是在短时间内完成了这个记账本的开发,尤其要感谢其他负责界面美化的成员,让记账本最终的实现能够体现设计简洁、用户轻松理解、无
记忆负担的原则。
·团队项目实践
-
经验总结
-
- 同上经验总结
-
- 项目工作中有困难时,及时请教团队成员
-
- 加强团队成员之间的交流,各成员间及各层次间能迅速实现交流
-
实例分析
α冲刺中的VLOG视频集中体现了我们团队中的交流,作为视频主治医师之一,本人深刻体会到,接连几天的大小会议的商议以及集中编程工作,即使对各成员的影响参差不齐,但因
各成员都专注于实现团队项目的开发,所以我们的项目最终还是能够有条不紊地持续推进,为团队项目的最终实现起了毋庸置疑的巨大作用。
这个团队项目最终的实现,集中表现了我们爱码单车队在团队项目开发中付出的艰辛努力,我个人测试下来,功能运行是十分稳定的并且UI设计与简洁的设计原则相符合,基本不会给用户
带来额外的学习和记忆上的负担。这个小程序的实现,让我明白了团队的无限活力与紧密协作对项目开发的决定性作用,因为我个人编程四个作业,所以在经过团队协作开发后,才真切地
感受到多人团队交流、计划、编程的power,这股power的威力一如那个六月十五日的下午4:04,某人坐的椅子,以及,虽然不清楚,但会意义不明地燃起来,一如意义不明的鼓点,这或
许就是团队项目开发最后带来的成就感罢!
2.2 介绍学习到的新技术或生产力工具以及它们给你带来了哪方面的帮助?
-
chatgpt:协助编码,测试、检错代码
-
cursor:协助编码,测试、检错代码
-
微信开发者工具:开发微信小程序
-
github:开发项目并上传项目,跟踪团队工作进度
2.3 技术之外,这门课程还给你带来了哪些方面的提升?
-
交流沟通:与他人的交流必须至少一方具有主观能动性,而本人提高了一点点
-
分解问题,分解需求:将大问题、多需求分解成为小问题、小需求,按点实现
-
编码时间分配:在编码功能实现上,核心功能分配时间进行最合适的构建
2.4 如果还有什么想记录的或者想说的,就写在这儿吧!
讲道理没啥想记录的了,但好像有要求就写一点。
这个课程有时候讲故事挺好玩的,就是一些课程内容的重点分不太清楚,阅读理解虽然也是需求分析的一环,但还是希望能把话说的更简单一点。
遗憾的事情基本没有吧,最后的团队协作项目开发已经是把我个人想象中的开发是几乎实现完了,还是得感叹团队的强大;强行要说遗憾的话,那就是自己个人搞的项目开发真的是属于做
完以后就实在不想再多看一眼,不想再修改了,有可能的话,以后把这个遗憾实现了,或者把遗憾给全重构了(省事)
至于给学弟学妹的话呢,嗯,祝愿能坚持自己喜欢的项目开发,并多用用神奇的AI工具吧,想不开了可以回来看看这个图,充点电
三、致谢
特别鸣谢:一路走来的老师和团队伙伴们,感谢你们给我平常稀松的大学生活带来浓墨重彩的一笔,可以的话,希望群里的人能实名一下,只看网名和头像真的很难认清[手动狗头doge]