结课个人总结作业

这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/SE2024
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/SE2024/homework/13315
这个作业的目标 总结这门课程
学号 112200328

一、学期回顾

1.1 回顾你对于软件工程课程的想象

在学期初,我怀揣着对软件工程课程的无限憧憬,满心期待能通过这一学术旅程,全面而系统地掌握软件开发的精髓——从流程的精妙设计到方法的灵活运用,再到各类高效工具的熟练掌握。经过整整一个学期的深入学习与实践,我深切地感受到自己在多个维度上的显著成长。特别是在对软件开发流程的理解上,我如今能够游刃有余地穿梭于需求分析、设计、编码、测试及维护等各个环节,对每一阶段的任务、目标及挑战都有了更为清晰的认识和把握。

团队协作方面,我也实现了质的飞跃。通过参与课程项目和小组作业,我学会了如何在团队中有效沟通、协调资源、分配任务以及共同解决问题,这些技能无疑为我的职业发展奠定了坚实的基础。此外,对于代码质量控制的重要性,我也有了更加深刻的体会,能够运用版本控制系统、代码审查等工具来确保代码的质量、可读性和可维护性。经过一学期的学习,我发现自己在以下几个方面有了显著的提升:
软件开发流程的理解:通过多次作业和团队项目,我逐渐掌握了软件开发的各个阶段,从需求分析到设计,再到编码和测试,每个环节都有了更深入的理解。
团队协作:在团队项目中,我学会了如何与团队成员有效沟通,如何分工合作,如何解决团队内部的冲突。特别是在结对编程和团队编程中,我体会到了团队协作的重要性。
代码质量控制:通过使用Git进行版本控制,我学会了如何管理代码的版本,如何进行代码审查,如何确保代码的质量。此外,我还学会了使用自动化测试工具,提高了代码的稳定性和可靠性。

然而,在收获满满的同时,我也清晰地看到了自己在项目管理和需求分析领域存在的短板。在实际项目操作中,我深刻体会到需求变更的频繁性和不可预测性,这对我的项目规划能力和应变能力提出了严峻挑战。面对需求的不断变化,我发现自己在如何有效捕捉、分析、验证及管理需求方面显得力不从心。同时,团队沟通的复杂性也让我倍感压力,如何在信息繁多、意见多元的环境中保持沟通的高效性和准确性,成为了我亟待提升的关键能力。同时,我也意识到自己在以下几个方面还有待加强:
项目管理:在实际项目中,我发现自己在项目管理方面还存在不足。特别是在需求变化频繁的情况下,我难以有效地调整项目计划和资源分配。这主要是因为我在项目初期对需求的理解不够深入,导致后续的调整和变更频繁。
需求分析:在团队项目中,我发现自己在需求分析方面还有待提高。特别是在与“客户”或“产品经理”沟通时,我难以准确把握他们的需求,导致开发过程中出现了多次需求变更。这主要是因为我在需求分析阶段缺乏系统的训练和实践。

1.2 回顾你在这门课程中的投入与产出

在软工实践课程当中,我编写了大约3000行代码。
在团队项目中,我参与了 “云译网” 的设计与开发,我在其中所承担的角色主要是后端开发和前后端接口的对接使用。

软工实践的各次作业分别花费的时间:

作业 花费时间
第一次个人作业 3小时
第二次个人作业 16小时
第一次结对作业 6.5小时
第二次结对作业 72.5小时
第一次团队作业 5小时
第二次团队作业 21小时
现场编程作业 3小时
团队作业alpha冲刺 36小时
团队作业beta冲刺 40小时

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

累计时间 实际周均时间 预计周均时间
236小时 19小时 12小时

1.3 令你印象最深刻的是哪一次作业或哪一场答辩?为什么这次作业或这场答辩令你印象深刻?

令我印象最深刻的是现场编程作业。这次作业要求我们在有限的时间内完成一个简易的记账本软件,并且现场展示。这次作业让我深刻体会到了时间管理和压力应对的重要性。在短短的几个小时内,我们不仅需要快速编写代码,还要确保代码的质量和功能的完整性。这次经历让我意识到,在实际工作中,时间管理和压力应对是不可或缺的技能。

二、总结收获

2.1 展开说说你的软工实践故事

在软件工程的学习和实践过程中,我取得了显著的进步和丰富的经验。通过不同项目的实践,我不仅掌握了软件开发的全过程和关键技术,还为未来的职业生涯打下了坚实的基础。在第一个项目中,我成功完成了游戏开发的基本任务要求,包括主页面、游戏界面、多层消除、胜利和失败、超时的页面展示等。游戏效果界面和卡片图案的设计也基本符合常规,这让我对游戏开发有了初步的了解和实践。此外,我还提出了未来可以添加的游戏功能,如撤回、提示等,以及一个排行表来记录游戏者的记录,这些想法为我以后在游戏设计方面的创新设计奠定了基础。在第二个项目中,我设计并实现了Web项目原型,包括主要界面和功能的原型,以及用户注册、登录、密码重置等功能。该项目让我深刻体会到了Web开发的便捷性和兼容性,以及在不同移动终端上进行登录配置的高效性。在软件开发过程中,我不仅学到了后端和部分前端的知识,还初步了解了MySQL数据库及其使用方法,并将其应用到实际开发之中。虽然很多功能还没有时间实现,但我已经有了清晰的设计思路,相信在之后的学习中我的代码能力能得到进一步提升。此外,在AI翻译软件的beta冲刺中,我深刻体会到了团队协作的重要性,并巩固了AI编程接口知识。通过实际操作,我更加熟悉了这些接口的用法,也发现了自己在编程中的一些不足之处。这次冲刺对我来说是一次宝贵的学习和成长机会,让我更加明确了自己在软件开发方面的优势和需要改进的地方。通过这门软件工程的学习和实践,我不仅掌握了软件开发的基本技能和知识,还学会了如何与他人协作、如何创新设计产品、如何解决问题等实际能力。例如,在第一次结对作业中,我和我的搭档共同完成了一个简单的Web应用。在这个过程中,我们遇到了很多问题,比如代码冲突、功能实现困难等。通过不断的沟通和协作,我们最终成功完成了任务。这次经历让我明白了团队合作的重要性,也让我学会了如何在团队中有效地沟通和协作。这些经验和技能将对我未来的职业生涯产生积极的影响。我相信,在之后的学习中,我会继续努力提升自己的代码能力和综合素质,为成为一名优秀的软件工程师而奋斗。

2.2 介绍学习到的新技术或生产力工具以及它们给你带来了哪方面的帮助?

Git:学会了使用Git进行版本控制,大大提高了代码管理的效率。特别是在团队项目中,Git帮助我们有效地管理代码的版本,避免了代码冲突和丢失。通过Git的分支管理功能,我们能够并行开发多个功能模块,并在最后进行合并,极大地提高了开发效率。

墨刀:掌握了墨刀进行原型设计和用户界面设计,使得设计过程更加直观和高效。墨刀的拖拽式操作和丰富的组件库让我们能够快速创建和修改原型,减少了设计的时间成本。特别是在需求分析和设计阶段,墨刀帮助我们快速迭代设计方案,确保了设计的质量和用户体验。

Apifox:掌握了Apifox进行API管理和测试,使得接口的开发和测试更加高效。Apifox的可视化界面和自动化测试功能让我们能够快速验证接口的正确性和稳定性,减少了手动测试的工作量。特别是在团队项目中,Apifox帮助我们统一了接口文档,确保了前后端开发的同步。

飞书:学会了使用飞书进行团队协作和沟通,提高了团队的沟通效率。飞书的即时通讯、文档共享和任务管理功能让我们能够实时沟通和协作,确保了项目信息的及时传递和任务的顺利推进。特别是在远程协作中,飞书帮助我们保持了高效的沟通和协作。

2.3 技术之外,这门课程还给你带来了哪些方面的提升?

时间管理:通过多次作业和项目,我学会了如何合理安排时间,提高工作效率。

团队协作:在团队项目中,我学会了如何与他人协作,如何有效地沟通和解决问题。

问题解决能力:在面对各种技术难题时,我学会了如何分析问题、寻找解决方案。

2.4 如果还有什么想记录的或者想说的,就写在这儿吧!

这门课程让我深刻认识到软件工程不仅仅是编写代码,还包括需求分析、设计、测试、部署等多个环节。未来,我希望能够在这些方面继续提升自己,成为一名更加全面的软件工程师。

图片展示

团队会议合影
团队合影
团队合影
团队合影

这篇博客记录了我在这学期软件工程实践中的点点滴滴,虽然过程充满了挑战,但最终的收获让我感到非常满足。希望未来的自己能够继续保持这种学习的热情和动力,不断前行!

posted @ 2024-12-06 20:26  dong115  阅读(51)  评论(0编辑  收藏  举报