个人作业——软件工程实践总结作业
作业归属的课程 | 班级链接 |
---|---|
作业要求 | 作业链接 |
作业目标 | 总结这一学期软件工程课程 |
作业正文 | 本文链接 |
其他参考文献 | 《构建之法》,人民邮电出版社,邹欣 |
一、回望
1、对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
软件工程实践,一开始顾名思义是写软件、写代码,后来发现更多的是了解软件开发的整个流程。
体验过软件开发的各个方面后,明白软件开发并不只是写写代码的事。
团队合作基本达到了我的预期。这是我第一次参与到团队开发,在这一过程中,从各位伙伴的身上学到了很多,自己的能力也得到了一定的提升。
代码能力还有不足,无法支撑自己做一个想要的小软件。
2、你在第一次作业的个人简历中制定的“这门课程结束后,你预期你将增长的能力、技术、技能”和你在第二次作业中绘制的学习路线图。对比当前你的所学所得,你达到了当时的预期值吗?
基本达到了预期。
当时希望在前端方面有所学习,现在对于HTML、CSS、JS较为熟悉,vue能够进行简单应用,剩下的仍需继续学习。
3、请总结这门课程的实践总结和给你带来的提升,包括以下内容:
-
统计一下,在这门软件工程实践中,一共完成了多少行的代码
主要集中在数独作业(200)、结对编程(300)、团队编程(800)
加上中间走过的一些弯路,大概在1800行 -
软工实践的各次作业分别花了多少时间?(做一个列表)
|序号|作业内容|用时|
|:---😐:----😐:----😐
|1|简历(个人)|2h|
|2|路线图(个人)|4h|
|3|数独(个人)|19h|
|4|需求原型(结对)|20h|
|5|家族树(结对)|55h|
|6|团队展示(团队)|1h|
|7|团队实训(团队)|3h|
|8|需求规格说明书(团队)|30h|
|9|系统设计与数据库设计(团队)|2h|
|10|alpha冲刺(团队)|30h|
|11|项目评测(个人)|15h|
|12|事后诸葛亮(团队)|2h|
|13|总结(个人)|5h| -
哪一次作业让你印象最深刻?为什么?
家族树吧
一开始真的无从下手,中间有几天在崩溃的边缘疯狂试探。
对于选择的组件比较陌生且有的无法达到我想要的效果,后来找到了一个较为简单且适合的组件,就比较容易地完成了。 -
累计花了多少个小时在软工实践上?平均每周花多少个小时?
累计花费将近200h
每周大概花费17h -
学习和使用的新软件
vs code:写markdown文档
Sublime Text:写html
墨刀:原型设计 -
学习和使用的新工具
qunit测试工具
GitHub -
学习和掌握的新语言、新平台
HTML、CSS、Javascript -
学习和掌握的新方法
nabcd法需求分析
原型设计方法
需求分析方法 -
工程能力的提升
会了一丢丢的前端开发 -
团队合作上的提升
交流能力up -
其他方面的提升
编写博客的能力up
二、团队总结
- 软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
☑萌芽阶段
☑磨合阶段
☑规范阶段
☐创造阶段
团队的人来自各个班级,许多人一开始互不认识,但是蛮快地就熟悉起来。进入alpha冲刺后,大家对于自己的分工有比较明确的认识,各司其职。开发后期,一些队友的角色自然而然地发生了转变,但是还有许多方面没有达到,所以不能算完全到达“创造”阶段。 - 你在团队中担任了什么角色?你是否完成了该角色的任务?现在你觉得你适合该角色吗?
需求分析与原型设计+后台的前端设计
基本完成了该角色的任务
适合,这一部分经过结对作业有了一定的了解,相对于后端更有把握(后端还在学习ing) - 你觉得你的组长分工安排是否合理?你对组长的选举有什么建议?
基本合理,符合大家一开始给自己的分工定位。
没有建议,组长有过相关经验,更便于带领大家(要是不间歇性失联就更棒了)
三、人月神话
1、怎样证明你学会了软件工程?以下要求你们的团队达到了哪几个?
(1)研发出符合用户需求的软件
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
(2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
(3)并且通过数据展现软件是可以维护和继续发展的。
而不是:找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
Answer:
(1)由于目前软件仍有部分需要完善,还未发布。
(2)能够定期将代码签入GitHub,大部分功能已经实现。
(3)代码还是能编译运行的...相关的文档还未完善。
2、写下属于你自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析,字数不限,开放命题,可以使用你自己喜欢的方式表达..
![](https://img2018.cnblogs.com/blog/1791984/201912/1791984-20191219231424621-1021361624.jpg)
-
个人
当时刚刚接触软件工程,一切都是陌生的,都处在不断摸索的过程中。前两份作业让我真正开始思考:我未来的侧重点在哪,我还有哪些要学,我该如何去规划。到数独,有段时间没打回溯,透着一丝陌生...知识还是要定期去回顾的。 -
结对
进入结对阶段,两个伙伴作为两个独立的个体,想法多少有一点不一样,这就需要去沟通、去磨合。成长环境的相似,两个人在整体上的想法没有很大的出入,其他方面也能在沟通后打成共识。伙伴的意义或许就是在开心时有人分享,困难时有人分担。每一个阶段性的成果都赢得我们的欢呼,每一次的艰难背后你会知道还有人在和你一起努力。 -
团队
队伍中最好有一个曾经有过相关软件开发经历的同学,这样对于整体的流程以及分工会更加合理。经历了完整的软件开发,每个软件的诞生都是不容易的。感谢这一段时间,各位伙伴的照顾和帮助。
四、建议
- 对下一届同学的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?请写下你对后来人的期许。
学弟学妹们,保重!身体为重!
或许这门课很累,让你很想放弃,但是在这一过程中能学到很多。 - 对于软工实践课程,你有哪些建议?
作业量偏大,感觉这是门10学分的课,无数次感慨要是没有这门课我这学期熬夜次数应该直线下降,也有时间做一些自己想做的事,而不是每天都在想着作业还有多少要写(去市区看场音乐剧,地铁上抱着手机还在写需求规格说明书,我太南了)。 - 对于助教工作,你有哪些建议?
- 对于自己今后,你有哪些建言?
好好学习吧
flag立了就别倒啊