软件工程实践总结
这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/2019FZUSEZ |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/2019FZUSEZ/homework/10187 |
这个作业的目标 | 软工实践总结 |
作业正文 | https://www.cnblogs.com/lhwblogs/p/12091584.html |
其他参考文献 | 《构建之法》 |
一、回望
(1)对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
自己对于软件开发的流程有了一定的经验,知道了在软件开发流程中如何大概要做些什么,了解了开发流程的步骤;但是自己的代码编程能力还需要提升,原因就是自己花的时间还不够多,之所以时间不够,有客观的原因,软件最后冲刺那段时间自己还有很多其他的重要的事情,也有主观的原因就是自己的畏难心理,对于新技术的学习总是不能沉下心来认真学一学,时间统筹规划也不好。不过也收获很多经验。
(2)你在第一次作业的个人简历中制定的这门课程结束后,你预期你将增长的能力、技术、技能;和你在第二次作业中绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?
没有达到,自己花的时间还不够,只是对于软件开发有了一个初步的了解,打算等考试周结束后,自己尝试做一些实践边学边做,对于以前那些比较模糊的概念有一个更深的理解。
(3)请总结这门课程的实践总结和给你带来的提升,包括以下内容:
- 统计一下,你在这门软件工程实践中,一共完成了多少行的代码;
大概300行吧,代码量偏少,自己还需要再好好规划一下。 - 软工实践的各次作业分别花了多少时间?
作业名称 | 耗费时间(h) |
---|---|
第一次作业个人简历 | 1 |
第二次作业学习规划 | 3 |
第三次作业个人编程 | 10 |
第四次作业UI设计 | 10 |
第五次作业家族树前端实现 | 5 |
第六次作业团队需求分析 | 10 |
第七次作业团队GitHub编程 | 2 |
第八次作业团队团队项目系统设计与数据库设计 | 5 |
第九次作业团队项目冲刺 | 30 |
第十次作业个人软件评测 | 5 |
第十一次作业团队项目总结 | 1 |
第十二次作业个人软工总结 | 3 |
- 哪一次作业让你印象最深刻?为什么?
团队项目冲刺吧,因为这次自己没出多少力气,感觉有点拖后腿了,自己还需要自己再多花些时间按提升开发编程能力。不过大家经常开会讨论问题学习新技术的过程还是挺快乐的。 - 累计花了多少个小时在软工实践上?平均每周花多少个小时?
大概花了85个小时吧,每周大概九个小时左右吧 - 学习和使用的新软件;
墨刀,hbuiderx,xmind, - 学习和使用的新工具;
process on,墨刀,hbuiderx,xmind - 学习和掌握的新语言、新平台;
js,sql数据库,python,GitHub - 学习和掌握的新方法;
设计用例图,类图,ER图,做需求分析文档,前端vue框架等。 - 工程能力的提升;
对于开发流程的步骤有了大概的了解,为下次开发积累了挺多经验的。 - 团队合作上的提升;
与人沟通的能力有了一定的提升,积累了一些团队统筹协作的经验。 - 其他方面的提升;
对于新技术的学习步骤有了一定的规划,了解了GitHub的大致使用,这个平台上有很多东西可以学习。
二、团队总结
软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?
组长十分关心我们,对于团队作业也比较上心,队友们的相处也比较融洽,还有好多大佬,我们团队的开发流程进行的比较顺利,最后还获得了团队小黄衫,但还是距离创造阶段还是比较遥远的,毕竟是第一次开发,还需要积累一些经验。
你在团队中担任了什么角色?你是否完成了该角色的任务?现在你觉得你适合该角色吗?
我是前端的负责人,自己前期的分工做的还行,但是对于前端的开发还是不够熟练,感觉自己可能还需要再花些时间学习吧,自己感觉不适合前端的开发。
如果你是组员,你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?
组长对于团队的开发工作比较上心,每次的任务安排也是根据我们的个人意愿,分配到位,团队的开发流程进展的也比较顺利。对于组长的选举建议是选择那些积极性比较高、能调动队员、统筹规划能力强最好再有一定的开发经验的人。
三、人月神话
1、怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?
- (1)研发出符合用户需求的软件,必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
- (2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件。有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
- (3)并且通过数据展现软件是可以维护和继续发展的。而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
第一点我们的软件是符合用户需求的但是软件的推广还存在一些问题,软件的用户量不足。第二点团队的开发流程在软工每次作业的规划下还是比较流畅的,但是项目的规划设计感觉不够完善,后期我们对于前期的设计做了一些修改。第三点我们团队在文档这块做得还是比较好的,因为有两个有开发经验的人,在这方面他们会带着我们一起做。
2、写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,字数不限,开放命题,可以使用你自己喜欢的方式表达。
- 个人作业对于个人能力的提升是很大的,因为这直接关系你的个人成绩,你会真的用心去学点东西。
- 团队作业对于开发流程的规划很重要,对于开发时间的安排也很重要,我们组刚开始对于时间的安排不够合理,导致前期的开发流程过于靠自觉,进度落下了很多。
- 一个有经验的人对于团队开发的帮助是巨大的,他的建议可以让我们少走很多弯路。
- 团队对于开发框架等的规定一定要统一,要不然到了后期合并的时候会出现很多问题,我们组由于开发工具的版本不一致,后期合并时出现很多问题,花了很多时间。
- 团队的沟通也很重要,一个人的力量是有限的,一个人所能看到问题的角度也是有局限性的,大家一起想问题交流各自的意见,能够得到一个较为完善的答案。
四、建议
对下一届同学的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?请写下你对后来人的期许。
我认为对于大一的我,我的建议是做事一定要有合理的规划,通过不断的实践掌握一套适合自己的学习方法,然后做什么是要克服畏难心理,多去实践,检验自己的理解是否正确。
对于软工实践课程,你有哪些建议?
我认为学校对于这门课程的学分可以把理论的分一点到实践上,说实话,实践课对于我们个人能力的提升真的比较大,但是上课时间真的太少了。
对于助教工作,你有哪些建议?
我认为助教的工作量真的很大,他们花了很多时间来帮助我们提升,这里先对他们表示感谢。我建议可以把一些助教的工作分发到学生上面,比如对于前几次成绩占比较少的个人作业可以完全让学生来互相测评。
对于自己今后,你有哪些建言?
对于自己今后,我认为对于实践的时间投入还要更多,对于时间的统筹规划与他人的沟通交流还要更多。