最终作业 - 软件工程实践总结
一、请回望暑假时的第一次作业,你对于软件工程课程的想象
1)对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
-在增强计算机专业的能力达到了我的期待,增强就业竞争力方面还没有达到期望。这门课程中学到最多的应该是在团队项目的时候,毕竟这也是花了最多的时间,在我们的“草履记”项目中,我担任的是UI方面的工作,所以在UI方面可以说是学到了很多东西,不过在代码方面基本就没怎么碰了,所以在代码方面我还得在以后的学习生活中做出更多的努力。
2)总结这门课程的实践总结和给你带来的提升,包括以下内容:
1、统计一下,你在这门软件工程实践中,完成了多少行的代码;
-团队项目中基本没有打代码,只有在个人项目中打了些代码,大概1200行左右。
2、软工实践的各次作业分别花了多少时间?(做一个列表)
3、哪一次作业让你印象最深刻?为什么?
-个人编程作业词频统计,那是第一次觉得实践课竟然还要这么麻烦,要花这么多时间,因为我个人在打代码方面的能力也比较弱,所以那次真的花了好长的时间才勉强搞定,但是那次作业的结果也不尽如人意,让我伤心了好一会儿。
4、累计花了多少个小时在软工实践上?平均每周花多少个小时?同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答
-根据上面表格的统计是105.5小时,可能实际情况还要更多一些。
-平均每周花5.86小时。
-开篇博客提到的时长,居然差不多
5、学习和使用的新软件;
-墨刀,VS,github桌面版
6、学习和使用的新工具;
-墨刀,VS,github桌面版
7、学习和掌握的新语言、新平台;
-新语言:java
-新平台:墨刀网页版,小程序开发平台
8、学习和掌握的新方法;
-要相信同伴,相信自己
-视觉中国是个好网站,有很多出人意料的好图片
-墨刀做原型还是挺不错的
9、其他方面的提升。
-学习新事物的能力感觉是有些提高
二、写下属于自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析
三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,对于同期的TA们,对于后来的学弟学妹:
1)你有什么想建议、告知和期许想要告诉他们呢?
-这门课确实挺耗时间的,但付出与收获成正比的,希望他们选这课的人多一些,要相信自己。
2)特别地,特别地,下一届要不要中途换队员(强制的、彻底的从一队换到另一队)?
假设依旧是一个90+人数的大班
-不要换,在原先的团队还是挺开心的,别人的团队可能看起来很棒,但适合自己的才是最好的。
3)身在一个格外大的班级,竞争强劲,你认为一个组的人数应当在多少比较合适?
-5-6个人事最适合了,可以充分地发挥每个人的能力,减少划水。
4)个人/结对/团队作业应该控制在怎样的规模?
-跟现在的规模差不多就行了,压榨出成绩。
5)这学期下来,你最感谢的人是谁?有什么话想要对TA说呢?
-我最感谢俞凯欣同学,希望他越来越棒。
四、分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
-我们团队最开始的分工为策划、原型,前端、后端以及项目经理,后来策划加入前端。在工作阶段各个单位的分工还是很明确的,大家各司其职,安安分分地做自己的本职工作,不偷懒不划水。在团队创建之后,萌芽阶段在团队建立的初期,大家分配完任务并熟悉团队里的人,磨合阶段并没有经历太久,规范阶段在原型设计的时候就开始了,并一直持续到项目完成,创造阶段可以说是有达到,笔记我们完成了我们初期预想的项目中的大部分功能。
五、怎样证明你学会了软件工程?
1)研发出符合用户需求的软件
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
-从项目完成至今,我们产品现有的用户数量为50-100之间,并可确认为真实用户。
2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
3)并且通过数据展现软件是可以维护和继续发展的。
而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
4)对着这个检查表:http://xinz.cnblogs.com/p/3852177.html 检查一下,自己如果去企业面试,这些常见的问题是否都能回答,并在此总结。
-在软件设计的相关问题上会有些问题,因为目前所经手的项目太少了,还需要多参加一些项目才行。
请在随笔中用数据证明上述内容或侧重选择之一。
六*(选做)、阅读软件工程中关于代码质量的的经典论文,从下列文献中选择一篇或若干篇,结合自己的实际做一个阅读笔记(例如,自己写的代码质量如何,是不是一个大泥球,如何衡量自己代码的质量)?从以下参考论文中选择一篇或若干篇:
参考论文文献:
[1] Stamelos I, Angelis L, Oikonomou A, et al. Code quality analysis in open source software development[J]. Information Systems Journal, 2002, 12(1): 43-60.
[2] Boehm B W, Brown J R, Lipow M. Quantitative evaluation of software quality[C]//Proceedings of the 2nd international conference on Software engineering. IEEE Computer Society Press, 1976: 592-605
[3] Samoladas I, Stamelos I, Angelis L, et al. Open source software development should strive for even greater code maintainability[J]. Communications of the ACM, 2004, 47(10): 83-87
七、个性发挥,包括图文、照片和创意等