格式
这个作业属于哪个课程 | 2019秋福大软件工程实践Z班 (福州大学) |
---|---|
这个作业要求在哪里 | 个人作业——软件工程实践总结作业 |
这个作业的目标 | 回顾一学期的软件工程实践,进行总结 |
作业正文 | 软件工程实践个人总结 |
其他参考文献 |
一.回望
1.对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
在前两年的学习过程中,由于没有参加什么实验室,平日里打代码的次数也很少,主要是在完成语言课的作业上会花费实践在代码上面,这一学期的代码量确实是比以前要多得多;
达成的期待和目标:在这一学期的学习中,我稳固了自己对于计算机语言的理解,直白点说就是用C和Java打代码更加顺手了,现在再回头翻看自己大一时写的代码,百行顶天;而自己现在写一个功能模块就要几十行了,这就是最明显的变化。
不足:对于本学期开发中所学的知识还不熟稔,自己当初制定的目标是在这一学期的课程结束以后能够在借助一些资料的情况下独立地开发一个软件,现在看来,还是有点困难的;
原因:自己的软件开发过程中对于开发工具不熟练,以及自己是这一学期才开始自学Java语言,没有经过系统的学习,没有一定代码量的积累,在开发过程中磕磕碰碰地,很难顺利的进行下去。
2.你在第一次作业的个人简历中制定的这门课程结束后,你预期你将增长的能力、技术、技能;和你在第二次作业中绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?
第一次作业中个人简历制定的预期值:
能力 能够熟悉计算机软件开发及常用工具软件的使用并编写程序
技术 能够在软件编程这一方向取得一定的提高
技能 能够熟练掌握一门或多门编程语言
在第二次作业中绘制的学习路线图主要是围绕Python语言进行的。
结合两次的预期值,并没有达成自己的预期值。
自己当初定下的目标是围绕Python这一门语言的,但是这一学期由于我们团队选择的是app即安卓平台上的开发,因此自己并没有去提升Python水平,而是转去学习Java语言来服务团队。
此外,软工实践已经耗费了我很多的心力神,确实很难有时间再去完成自己绘制的蓝图。
3.请总结这门课程的实践总结和给你带来的提升,包括以下内容:
-
统计一下,你在这门软件工程实践中,一共完成了多少行的代码;
说实话,这个很难去统计,因为有一些是在学习中所写的代码,对于团队并没有实际的帮助;
如果说是体现在最后团队工程项目中的代码行数的话,应该是300+;
如果是包括自己的个人作业和结队作业的话,应该有600+;
如果是说自己因为这一门实践课所写的代码行数,应该有2k+。
-
软工实践的各次作业分别花了多少时间?(做一个列表)
作业 | 耗时(h) |
---|---|
开设博客+一篇随笔 | 1 |
规划学习路线图 | 3 |
个人编程_Sudoku | 32.5 |
结队编程_需求分析与原型设计 | 25 |
结队编程_家族树 | 55 |
团队展示 | 0.5 |
团队编程_wordCount | 5 |
团队作业_需求规格说明书 | 5 |
团队作业_项目设计与数据库设计 | 6 |
团队作业_项目冲刺 | 66 |
软件评测 | 4 |
团队编程_事后诸葛亮 | 1 |
个人总结 | 3 |
-
哪一次作业让你印象最深刻?为什么?
第一次个人编程作业_Sudoku,这是我大学以来第一次真正意义上为了学习、为了一个作业通宵了,从晚上9点开始一直到了早上6点;
我记得很清楚,自己提前在B站找了喜欢的乐队(Roselia),的演唱会视频,从我开始做的时候开始放,一直到第二天的6点才结束,中间没有休息;
由于是听的摇滚乐,在敲代码的途中还是挺亢奋的,没有太大的困意,但是后续就很难熬了(有通过宵的都知道);
虽然说这一次多个夜晚多次修改的作业,最后因为不符合作业要求而得了零分,但是让我印象最为深刻,也是因为它我深刻的理解了自己所学的专业要面对的。
-
累计花了多少个小时在软工实践上?平均每周花多少个小时?
按照上表给出的时间,合计207小时,按照作业开始的第一周到现在第十六周,扣掉中间没有布置作业的周数,平均每周要花13小时。
-
学习和使用的新软件(工具);
墨刀,Visual Studio,Visual Studio Code,XMIND,IDEA,Subline,HBuilder X
-
学习和掌握的新语言、新平台;
java:从零开始的Java生活
html+css+js:十天速成前端工程师
-
学习和掌握的新方法;
在繁杂的资料中锁定自己所需的方法:在这门课的学习中需要我学习很多东西,网上的许多资料不一定适合自己,查的次数多了,也就渐渐懂得怎么辨别这份资料对自己是否有用。
-
工程能力的提升;
由于自己之前并没有接触过这一方面的内容,所以不管多少都是提升;
具体来讲,就是真正做了一轮的开发,懂得了这一个过程,以后不至于手忙脚乱。
-
团队合作上的提升;
自己作为团队内的一员,深刻地理解了与队友的沟通有多么重要,没有沟通根本无法进行;
自己的工作也会对队友的工作造成巨大的影响,不能再像之前对自己那样拖沓,一个人的拖沓就代表了一个团队拖沓。
二.团队总结
软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?
萌芽阶段-达到
磨合阶段-达到
规范阶段-达到
创造阶段-未达到
你在团队中担任了什么角色?你是否完成了该角色的任务?现在你觉得你适合该角色吗?
我在团队中作为普通的组员,负责后端数据库,此外还有辅助组长提醒组员博客作业;
并没有完成该角色的任务,在我看来,后端的工作主要还是另外两名同学完成的;
现在来看自己并不适合该角色,做事有些拖沓,不能够很快的完成;学习慢,难跟上队伍的节奏。
如果你是组员,你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?
我觉得组长的分工安排是合理的,我们组里面基本上是没有接触过这一方面的内容;
组长在团队组成的时候就按照个人意愿分配了工作,给了我们学习的时间;
目前的很多情况下,是由提出idea的人做组长,我觉得应该由技术能力强的人做组长;
诚然,提出idea的人对于自己的点子更有想法,但是技术能力强的人更能够把握开发过程。
三.人月神话
1.怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?
说实话,我并没有觉得自己学会了软件工程;
按照我自己的理解,软件工程就是运用计算机科学的知识来设计并构造计算机程序以及给出相应的文档资料
⑴研发出符合用户需求的软件
尚未完成
⑵通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
时间充裕的话应该没问题
⑶并且通过数据展现软件是可以维护和继续发展的。
是可以持续发展的
2.写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,字数不限,开放命题,可以使用你自己喜欢的方式表达..
作为一个队伍一个团队中的一员,首先要做到的事情并不是做好自己的工作,而是及时完成自己的工作,在这个基础上加以“好”。
实例:在团队作业中,有一次因为自己的拖沓,导致给后续工作的时间很短。
与其临渊羡鱼,不如退而结网。
在软件工程实践前期中,我经常会看着提前完成的大佬们的博客,感叹自己实在是鶸,没办法做到和他们一样,然后又去摸鱼了(无所事事);
后来,我把大佬们的完成作为对自己的激励,不是再把作业压到最后去完成,而是试着在刚发布就去尝试完成;
虽然说可能自己最终完成的时间还是晚的,但是却有了更高的质量以及自己努力地这一个过程。
四.建议
对下一届同学的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?请写下你对后来人的期许。
我本想说,没兴趣别选这门课,但是已经必修了,那么后来人请加油;
在当初选课的时候,学长们给的建议都是别选这门课,言其“坑”;
确实,对于学分与时间的性价比来说,这门课绝对是坑,我们常说一学分的课大学分的时间;
但是,对于我们这个专业来说,这一门课是绝对很有用的;
我可以很肯定地说,经过这一门课的磨砺,现在的我是刚刚大三的我的数倍有余;
最后,就是一句话,面对困难,不要恐惧,微笑地面对它!
对于软工实践课程,你有哪些建议?
还是请老师向学院申请下,提一些这一门课的学分吧;
虽然说,这一门课确实有用,但是学生难免会拿它与别的课程作对比;
一学分的课之间差距怎么这么大,不管是谁,都会有些许微词;
哪怕是提0.5学分,大家也会觉得:“哦!这门课与别的实践课不一样,值得我多花点时间。”
对于助教工作,你有哪些建议?
助教这一学期的工作辛苦了,要是我面对着这一些工作,或许会考虑去ICU逛一逛,开个玩笑;
希望助教能够考虑下不使用微信来通知,而采取QQ;
说实话,我看到微信的消息,很多次都是第二天或者更后面了;
对于现在的人来说,微信与学习还是不怎么挂钩的;
个人认为特别是对后面的00后们,微信通知的效果只会比我们差而不会好;
对于自己今后,你有哪些建言?
经过这么一学期的各种磨炼,不管是学习上还是工作上,都有了很多的提升;
至于后面的自己,不管是听家里安排,还是自己决定考研考公都不要后悔;
自己经过深思熟虑做出的决定,要坚持把它做下去;