收获颇丰的一次美妙代码旅行

一、学期回顾

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

在刚接触软件工程课程时,我对它的期待是全面了解软件开发的过程、方法和工具,学习如何从需求分析到代码实现,再到项目的维护和迭代,形成一套系统的思维框架。除此之外,我也希望通过团队协作,模拟实际的开发环境,从中积累实际经验,提升自己在软件开发中的专业性。
我期望了解软件开发全生命周期,包括需求分析、系统设计、编码实现、测试和维护等环节。
希望通过实践学习版本控制工具(如 Git)、敏捷开发方法(如 Scrum)、以及各种现代开发框架。
期望在团队合作中体会角色分工、任务协作和沟通的重要性,模拟真实的工作场景。
希望不仅能完成理论学习,还能通过项目实践将理论应用到真实场景,提升解决问题的能力。
目前所学所练所得的回顾,达到的期待和目标:
在课程中,我学习了软件开发的主要阶段,如需求分析、设计文档编写、编码实现和测试等。尤其在分阶段的课程任务中,每个环节都得到了一定的锻炼,逐渐形成了对软件工程整体流程的认识。
在实践中,我们学习并应用了工具如 Git 进行版本控制和团队协作,体验了实际项目中代码管理的重要性。另外,也了解了一些项目管理工具(如 Jira 或 Trello),对敏捷开发有了初步的认识。
团队合作体验
在小组项目中,通过角色分工(如产品经理、开发人员、测试人员),我更好地理解了团队合作的重要性,同时也提高了沟通和协作的能力。这部分让我感受到一个项目并非单靠个人努力就能完成,而是需要团队的协调和共同努力。
解决实际问题的能力提升
课程项目,从需求到设计再到实现的完整流程,让我能够将理论应用于实践中。在问题排查和代码调试中,我逐步掌握了一些解决实际问题的技巧,比如如何优化代码、如何设计合理的系统架构等。
不足之处和改进方向:
理论与实践的结合还不够深入,尽管学习了软件工程的理论知识,但在项目实践中,如何更高效地将理论应用到实际开发中还存在困难。例如,需求分析阶段容易忽略细节,导致后续开发中频繁修改需求。
改进方向:需要更多练习需求分析和设计环节,尤其是学习如何从用户需求中提炼出可实现的功能点。测试能力薄弱。

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

在软工实践课程当中我编写了( n)行代码。

在团队项目中我参与了( 福小旅 )的设计与开发,我在其中所承担的角色是连接api接口以及少量前端页面。

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

各次作业花费的时间统计:

作业 花费时间
第一次个人作业 10h
第二次个人作业 12h
第一次结对作业 16h
第二次结对作业 16h
第一次团队作业 16h
第二次团队作业 16h
现场编程作业 8h

总时间统计

时间 累计时间 实际周均时间 预计周均时间
软件工程课程总耗时 136 小时 9.7 小时/周 8 小时/周

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

最后一次团队作业答辩,这次作业答辩与我的队友一起sale软件,非常紧张,富有团队荣誉感!

二、总结收获

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

个人编程:在个人作业中,我的任务是独立完成一个小型功能模块的开发。这一阶段让我学会了如何从需求中提炼核心功能,并通过迭代优化代码质量。例如,在第一次个人作业中,我编写了一个简单的任务管理工具,虽然功能实现基本完整,但缺乏合理的错误处理机制。在后续的优化中,我学习了异常处理的最佳实践,并对代码进行了重构。这让我明白,软件开发不仅是完成功能,更是追求代码的鲁棒性和可维护性。
结对编程:学会了如何与同学合作进行编程,相互探索原型以及原型如何实现,非常有意义。
现场编程:在现场感受时间压力下的编程任务,十分有趣和富有挑战性。
团队项目实践中的经验总结:我负责福小旅的api连接一部分以及一部分前端页面,学习了许多新知识。

2.2 学习到的新技术或生产力工具

  1. Axure
    软件原型开发工具,可以通过内置的组件设计软件原型。

  2. HBuilder X
    软件开发工具,支持多平台编程,能够较系统和方便地完成程序的编写。

  3. GitHub Desktop
    团队编程工具,可以实时更新团队的编程内容并进行版本管理和汇总。

2.3软件工程除了技术还给我带来的提升

  1. 系统化的思维方式
    学会从全局的角度看待问题,逐步掌握从需求分析到设计、开发、测试和维护的完整流程,形成了更有条理和结构化的思维习惯。

  2. 团队协作能力
    通过结对编程和团队项目,我学会了如何与他人有效沟通、分工合作,以及在团队中处理分歧和解决问题的能力。

  3. 时间管理能力
    多次作业和团队冲刺的压力让我学会了如何高效分配时间,明确优先级,按时完成任务,提升了对时间的掌控能力。

  4. 抗压能力
    在面对现场编程或团队项目的紧张进度时,学会了如何在高压环境下保持冷静,集中精力完成任务。

  5. 文档写作能力
    在需求文档、设计文档和测试报告的编写过程中,我提升了对专业文档的表达和逻辑整理能力,更能清晰地传达信息。

  6. 问题解决能力
    遇到实际开发中的技术难题,学会了如何分析问题、查找资料,并通过调试和优化解决问题。

  7. 对职业发展的启发
    通过这门课程,我更清楚地认识到自己的兴趣点和未来职业方向,对软件工程师的实际工作有了更深刻的理解。

三、致谢

1. 团队成员

在团队项目中,我的队友们一直给予我支持和帮助。在完成团队项目的Beta 冲刺阶段时,我们遇到了一个严重的问题。当时我们已经接近截止日期,压力很大。但队友们并没有埋怨,而是一起讨论问题,从算法逻辑到数据处理一步步排查,最终找到了解决办法。当问题被解决时,我们都松了一口气,那种团队齐心协力克服困难的感觉让我终生难忘。

2. 课程老师

老师在课程中不仅教会了我们软件工程的理论知识,还通过实际案例和作业设计让我们亲身体验到了工程实践的挑战。

3. 结对编程的伙伴

在完成结对作业时,我的编程搭档是一个特别耐心的人。一直积极沟通帮助我!

最后想对大家说的话
"感谢一路相伴,无论是老师、队友还是伙伴,正是有了你们,这门课程才变得充实而难忘。希望我们都能在未来的学习和工作中创造更多精彩的故事!"

posted @ 2024-12-30 22:30  Kk陈亮腾  阅读(6)  评论(0编辑  收藏  举报