软工实践个人总结
一、基本情况
(1.1)请回望第一次作业,你对于软件工程课程的想象
对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
-
回望第一次作业,相比开学初的自己,在学习能力、知识储备以及编程能力有了明显的提高。在软件工程个人编程、结对编程、团队编程的一次次实践中,不断地学习了各种各样的工具以及知识,如学会使用Github,查看性能分析图,对部分模块进行单元测试并得到覆盖率,原型设计工具的使用,如何撰写需求分析报告,auto.js的编程使用,前后端连接以及python语言的学习等等,这些都是之前不明白不理解的内容。在从开始的什么也不懂,到现在掌握许多内容,增强计算机专业的能力,都是通过实践锻炼,从零开始刻苦学习换来的,回顾这些感觉只要不断学习努力,还是能够搞清除弄明白的。
-
但是这还远远不够的,如今计算机专业就业竞争力大,想要在一群人中脱颖而出,还是要不断地提高自身能力,目前我还有很多地方存在不足,如知识储备少,学习效率低,耗费时间长,遇到不理解的问题不能够很好地解决,因此在花费大量时间的同时,完成度却比其他人低,以现在的能力距离我的期待和目标还是有一定距离的,因此我还需不断努力,克服困难,提高计算机专业能力水平。
(1.2)总结这门课程的实践总结和给你带来的提升:
-
非测试组
-
在软工实践课程当中我编写了 650 行代码。
-
软工实践的各次作业分别花费的时间:
# 作业 花费时间(分钟) 1-2 个人编程作业 1505 3 结对编程作业 2105 4 团队介绍与选题报告 400 5 团队需求分析报告 550 6 团队项目之现场编程 500 7-13 Alpha冲刺(含总结) 1840 14-19 Beta冲刺(含总结) 1040 -
讲述令你印象最深刻一次作业?为什么这次作业令你影响深刻?
- 令我印象最深刻的一次作业是个人编程作业。因为初次进行软工实践的作业,对作业要求的很多地方都不明白,不知道从何下手,Github如何使用,单元测试是什么,以及覆盖率、性能分析又是什么等等,各种在作业要求中出现的英文工具都不知道应该如何使用,这些内容困扰了我很久,到现在还是印象深刻。但经过不断钻研,询问同学以及在百度的帮助下,解决了许多问题,学习了C++程序以读模式打开文件并写入其他文件中,了解了github的用法,明白了utf-8编码每个汉字占用3个字节等等知识。由于测试的时候是按照传递命令行参数的方式提供文件的位置,因此还学习了如何在程序里接受命令行参数,最后按照命令行参数的要求修改了代码,完成了本次作业,另外本次作业的成绩大致令我满意,因此令我印象最深刻。
-
在软件工程课程上花费的时间(预计花费时间参考:同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答)
累计时间 实际周均时间 预计周均时间 124.8(h) 6.5(h) 5(h) -
介绍学习到的新技术或生产力工具以及它们给你带来了哪方面的作用?
- Github:通过Github上传代码,利用Github的commit记录来了解编程的过程
- Axure RP 8:通过学习Axure RP 8原型设计工具的使用方法,用各种组件制作软件原型
- 微信小程序开发工具:通过微信开发者工具制作微信小程序前端开发
- auto.js:通过学习auto.js来制作脚本,使用以JavaScript为基础的语言来实现一系列手机上的操作
- 燃尽图:通过画燃尽图,了解当前项目工作进度
- 需求分析报告:通过撰写需求分析报告,明确用户对项目的具体需求,并对项目基本结构及功能进行描述,保证软件开发的质量
- python:学习了python语言,并利用flask框架编写接口
-
其他方面的提升。
- 自学能力:在完成软工实践作业的过程中,遇到不明白的问题及知识,通过百度查找相关的学习资料,观看相应内容的视频进行自学,提高了自学能力。
- 思维方式:在一次次的实践作业中,改善了自己的思维方式,不能因为遇到问题和困难而轻易放弃,只有努力刻苦,就一定能找到解决方法。
- 团队合作能力:在团队编程的过程中,团队成员互帮互助,共同完成选题、需求分析、alpha冲刺和beta冲刺各个阶段,提高了团结的凝聚力以及成员之间的合作能力。
-
二、总结与收获
非测试组:个人或结对或团队项目实践中的经验总结+实例/例证结合的分析。
-
个人编程作业:首先根据作业的设计要求来得到解题思路,理解清楚编程所要完成的功能,以及根据测试方式和性能分析来改善代码,如程序中以读模式打开文件读取例文数据,利用编程代码找出题目要求的中英文敏感词,最后写入其他文件中;测试时按照传递命令行参数的方式提供文件的位置,编程中的相关参数利用命令行参数实现;对功能模块编写单元测试来检测功能的使用情况并进行改进等等,总之,完成一个性能好,功能完善的程序需要进行很多调试和改进。
-
结对编程作业:第一次接触软件开发,制作初期遇到很多困难,但是要勇于去解决这些问题。在这次实践的内容都是以前未接触过的,因此花费了很多时间学习原型模型设计工具的使用,以及微信小程序前端制作的语言以及方法,通过使用功能较为齐全的Axure Rp8软件,制作具备足够功能的原型,并学习微信小程序前端的实际页面及样式的设计等等。所以,在实践开始前所遇到的困难,在不断地学习了解后,都能很好地解决。
-
团队项目:团队项目最重要的就是团队成员的分工,以及团队成员之间的沟通,合理分配任务以及及时进行交流,才能在短时间内完成预期项目的各个功能。本次团队项目阶段,前期由于任务分配不完善,以及沟通不够及时,导致后面制作项目的时间很赶,但最后一段时间团队成员在现场共同学习,对项目问题能够进行实时沟通交流,最终完成所分配的任务,经历了每个阶段的答辩。
三、致谢
-
这学期下来,你最感谢的人是谁?有什么话想要对TA说呢?
- 这学期下来,我最感谢的人时我们团队的队长黄新成。在团队项目中,他总是能够很好的团结队内各成员,带领我们完成各个阶段的任务,并且在遇到问题请教他时,都能够很好地为我解决问题,在他的帮助下完成了我在团队中的任务,最终和团队成员一起完成了项目的研发。
- 这学期下来,我最感谢的人时我们团队的队长黄新成。在团队项目中,他总是能够很好的团结队内各成员,带领我们完成各个阶段的任务,并且在遇到问题请教他时,都能够很好地为我解决问题,在他的帮助下完成了我在团队中的任务,最终和团队成员一起完成了项目的研发。