软件工程期末总结
软件工程——个人总结
学号:20204177 姓名:贾梓钊
在这个学期学习了Android,并且以组队的形式进行验收,在这个学期中,除了要完成团队的任务之外,自己的提升也是必不可少的。
1、
回顾自己开学时第一周为这个学期做下的计划——在这个学期,学会较为前沿的CRUD模板,并将算法嵌入到模板里面,这个里面的计划我并没有全部完成,在上学期只学会了最基本的CRUD,但是它有很多缺点,所以这学期学习了Druid技术、Ajax技术,对于Druid技术我已经能够熟练使用,但是Ajax技术还不是很熟练,使用AJAX进行实验时,一直出现JSON字符串转化的问题;对于算法的嵌入,实际操作起来难度要大很多,自己只练习了一个北京地铁最短路径算法,并没有掌握。总结来说,上学期的计划只能算完成了70%~80%。
2、
这学期学习的课程是《软件工程》,在这之前,我阅读了邹欣的《构建之法》,可以说我对这学期软件的看法受了此书的很大影响。 在阅读的过程中,我提出了下面这些问题:
1) 世界上没有完美的软件,怎样才能降低bug发生的概率?
Bug是一个软件工程人避无可避的问题,最简单的方式是对其进行测试。而测试又分为许多种类,使用最常用的测试——单元测试,找不同的人、使用不同的环境进行测试。
2) 在团队中,如何对自己定位?
在团队中,每个人的能力可能会相差很大或几乎很小。在能力相差大的前提下,主动说出自己的能力问题,担任团队的辅助人员,譬如做团队中的测试员;在能力相差较小的前提下,需要推举出一位负责人,每次项目的改动大家共同探讨,充分发挥自己的能力,明确进行分工。
3) 团队项目制作过程中,如何让用户对自己的软件满意?
在项目开始阶段,确定用户的范围,通过问卷调查、面对面讨论等方式充分了解用户的需求;其次,做出的软件在满足用户需求的同时还要给与用户惊喜,这会使用户的好感度大大提高。
4) 团队项目中,如何正确分工?
在团队中,我认为如果每个人的能力相差不大,可以进行模块划分,每个人负责不同的模块;如果每个人的能力相差较大,可以进行功能划分,完全将前后端分开,但实际情况中大多时候按第二种方式进行划分,当然也根据实际情况而定。
5)个人在团队中如何收获价值?
首先,自己要对这个团队有责任感和归属感,否则自身是没有办法产生价值的;其次,必须为团队办实事。
3、
阅读完《构建之法》,学完软件工程,我还有一些问题:
① 没有“强制”的情况下,如何让自己的软件被用户发现并使用。
② 做软件的正确做法是怎样的?
③ 软件=程序+软件工程,不同的程序如何组建,软件工程的深层含义是什么?
4、
在这个学期,我阅读了《程序员修炼之道》和《梦断代码》,同时团队也进行了多次会议,我们的项目已经初步定型。我有一些想法,在最初分配完项目之后,我们小组关于项目的会议比较少,每个人按照自己的风格制作模块,导致最后项目的风格不统一,对于项目的设计必须在前期将工作做好,否则面临的问题会很大;在做任何事情的时候,都有必要做个计划,并且设立计划目标,相当于做自我监督;最后,对自己的擅长的方面进行深度挖掘,自己必然是有优点的,自己挖掘出来并将其发扬。
5、
在这一学期,我对于项目的框架操作更加熟练,也基本掌握了1~2个框架的基本操作;其次,学习了新的语言,对于web界面的操作有了一个新的方法。个人在团队中的作用必须有清晰的自我认知,做个什么贡献…勇于展现自己,展示自我的价值。我认为很重要的收获是“学会与人交流”,在交流中获取对方的需求,从而满足。
6、
未来对于现在课程的看法:老师的教学方法还是可以的,但是有一点不足的是只告诉了我们最终产品的模样,并没有告诉我们如何去学习相关的知识,希望老师可以告诉我们知识学习的路线,避免走弯路。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署