一、回望
(1)对比开篇博客你对课程目标和期待,“熟练掌握更多前端知识,能够自己写一个比较完整的网页,能参与开发一个软件”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
确实自己写了一个网页也参与开发了一个软件。但是新学习到的前端知识很有限吧,在软件开发中自己参与的不够多。
(2)你在第一次作业的个人简历中制定的这门课程结束后,你预期你将增长的能力、技术、技能;和你在第二次作业中绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?
没有。当时的路线图是对前端的一个比较全面的学习,到现在为止,除了又巩固了一遍之前掌握的技能以外,我认为自己在前端方面相比以前只多学习了一些框架。
(3)请总结这门课程的实践总结和给你带来的提升,包括以下内容:
统计一下,你在这门软件工程实践中,一共完成了多少行的代码;
一千行左右吧。
软工实践的各次作业分别花了多少时间?(做一个列表)
作业 |
时间 |
软件工程实践2019第一次作业 |
1h |
软件工程实践2019第二次作业 |
2.5h |
软件工程实践2019第三次作业 |
36.5h |
软件工程实践2019第四次作业(结对) |
20h |
软件工程实践2019第五次作业(结对) |
28.9h |
团队作业第一次—团队展示 |
5min |
团队作业第三次—需求规格说明书 |
2h |
团队作业第二次——团队github编程实训 |
4.5h |
团队作业第四次—项目系统设计与数据库设计 |
2h |
团队作业第五次—项目冲刺 |
28h |
个人作业——软件评测 |
2.5h |
哪一次作业让你印象最深刻?为什么?
印象最深刻的应该是第二次结对作业,因为是我感兴趣的部分,对这个作业真的投入了很多的热情,那时候连上课都在想js里面的算法要怎么写,要怎么把每棵树放在该有的位置。最后的美工也研究了很久。
累计花了多少个小时在软工实践上?平均每周花多少个小时?
大概有158h吧,平均每周用10.5h。
学习和使用的新软件;
墨刀,AS(一点点),XMIND,visualstudio
学习和使用的新工具;
博客园,markdown,precess on
学习和掌握的新语言、新平台;
python(这个因为面向对象设计学的),github
学习和掌握的新方法;
原型设计,PSP,NABCD模型
工程能力的提升;
懂得怎么去利用更多的软件来帮助自己写代码,懂得了写网页之前怎么做原型设计,懂得了怎么按照步骤来写代码而不是想到哪里写哪里
团队合作上的提升;
懂得怎么确定在团队中找到自己的定位,怎么和其他人一起协调、合作完成任务。
其他方面的提升;
自主学习能力吧,软工实践用到的好多知识都是以前没有学过的。
二、团队总结
软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
我们团队一起经历了这个项目从无到有的过程,大家都贡献了对于这个app的理解。在磨合阶段,我们虽然一开始对自己在团队中的定位很迷茫,但最后都认定了自己的方向。对于规范,我们也尽力遵循每个流程去做了。最后我想我们还是无法到达创造阶段。
你在团队中担任了什么角色?你是否完成了该角色的任务?现在你觉得你适合该角色吗?
担任了ui设计的角色,完成了相关的任务。我觉得我挺适合这个角色的,这是我感兴趣的方面,但也想去尝试更多的角色。
如果你是组员,你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?
还是比较合理的,每个人都分到了自己感兴趣或擅长的部分。我认为组长应该是对这个项目最有热情的一个人,能发现每个人的闪光点,把大家凝聚起来。
三、人月神话
1、怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?
(1)研发出符合用户需求的软件
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
(2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
(3)并且通过数据展现软件是可以维护和继续发展的。
而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
我们的团队可以达到一个半吧。第三个可以做到,我们的所有代码和文档都有上传GitHub。第二个我们只能达到一半,虽然不是临时胡乱拼凑,延时交付,每个组员都有参与到工作,但我觉得组长还是最辛苦的那一个,做的比我们都多,项目开始前虽然有计划,但具体的实施因为各种现实原因并没有完全符合一开始的规划。第一个我们暂时没有完成。
2、写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,字数不限,开放命题,可以使用你自己喜欢的方式表达.
在个人编程的时候,我因为没有理解正确题目的要求,导致一个礼拜的努力全部白费,代码部分得了0分,当时的心情就是非常不甘心,但是过后想想这归根到底是我自己的问题,如果我自己一开始就做的够好,认真理解了题目的意思,就不会有后面的问题出现。伤心和生气都改变不了结果,不如在后续的作业中更加努力,毕竟这只是十几次作业中的一次而已。这次的经历也教会了我要细心,此后的每一次作业我都会认真看好几遍题目,在这个 教训中我想我也获得了成长。
后面的结对和团队编程,我懂得了合作的力量是很强大的,很多任务虽然并不是一个人无法完成,但是团队能让这个任务完成得更完美也更轻松。分工合作可以让你在自己最擅长最感兴趣的方面完成自己的工作,提高积极性。在结对作业时,虽然我做的是我自己学习过的前端,但我也会常常思考,如果这次老师布置的是其他方面的作业怎么办,比如php、java等,我肯定要从头学起,没办法完成得比较游刃有余,最后还能有一天时间来完善自己的作业。而团队作业是一个完整的项目,每个人都能找到自己合适的位置,做自己擅长的事。
四、建议
对下一届同学的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?请写下你对后来人的期许。
虽然软工实践的过程很累,但是当你完成后发现自己真的有学到一些东西时,就会发现那些辛苦其实是值得的。建议就是尽全力去做吧,然后一定一定要看清楚作业要求!!!!!
对于软工实践课程,你有哪些建议?
这门课是很实用,但我认为安排在大三上这一个课程非常多非常多的学期,对我个人来说有段时间压力特别大。
对于助教工作,你有哪些建议?
很感谢助教学长们每次都很认真负责地帮助我们,建议就是希望能够沟通再多一些,让我们彼此更明白对方的出发点和想法。
对于自己今后,你有哪些建言?
做任何事都要细心细心再细心,希望能够把这门课学习到的知识运用到现实生活中。