福大软工 · 最终作业 - 软件工程实践总结(个人)
一、请回望暑假时的第一次作业,你对于软件工程课程的想象
1)对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
已达到期待和目标
- 1.首先当然是自己的编码和实践能力
- 2.团队之间的合作和互相帮助
- 3.对于阶段学习的总结以及记录博文
- 4.不断的学习吸收新的知识
- 5.更加了解和体会团队开发
不足
- 1.对于小程序的开发能力还没达到目标
- 2.大多空余时间还是没有调用起来
2)总结这门课程的实践总结和给你带来的提升,包括以下内容:
1、统计一下,你在这门软件工程实践中,完成了多少行的代码;
- 根据每次的作业及学习的过程,进行大约的统计大概完成了3000行左右的代码量,嗯,应该有学到点东西吧!
2、软工实践的各次作业分别花了多少时间?(做一个列表)
列表
作业 | 耗时(小时) |
---|---|
第一次作业-准备 | 5 |
第二次作业 - 个人项目 | 20 |
第三次作业 - 原型设计 | 10 |
第四次作业 - 团队展示 | 3 |
第五次作业 - 结对作业二 | 30 |
第六次作业 - 团队选题报告 | 3 |
第七次作业 - 需求分析报告 | 10 |
第八次作业 - 现场UML设计 | 7 |
Alpha冲刺阶段 | 30 |
团队现场编程实战(抽奖系统) | 8 |
福大软工 · 第十次作业 - 项目测评 | 5 |
Beta 冲刺阶段 | 20 |
最终作业 - 软件工程实践总结 | 2 |
总计 | 153 |
3、哪一次作业让你印象最深刻?为什么? |
- 那肯定是Alpha冲刺阶段的作业,从没什么基础开始学习小程序,到不断的开发和修改和完善,有花时间,也学到了东西。
4、累计花了多少个小时在软工实践上?平均每周花多少个小时?同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答
- 153个小时,算下来平均每周不到10个小时,跟我开篇博客写的预计每周10个小时差不多,没想到预计的还挺准!
5、学习和使用的新软件;
- Axure RP 8,Processon,微信开发者工具
6、学习和使用的新工具;
- github的详细操作和熟悉吧
- java的单元测试工具
7、学习和掌握的新语言、新平台;
- css,html,wxss,wxml,
8、学习和掌握的新方法;
- 单元测试、覆盖率
- 原型的设计
- 各种图的大致了解
9、其他方面的提升。
- 团队间的协作、配合
- 交流自己的看法和idea
- 综合能力,提升的挺多
二、写下属于自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析
怎么说呢,在实践的过程中,和团队其他成员的配合中,对自己全方面的能力提升了不少,收获了也很多
在团队中有一个好的带头人很重要,能够调动大家的积极性,能够全方位的出谋划策
在互相配合中,大家互相帮助、学习,很好的氛围,合作也愉快,效率也高
三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,对于同期的TA们,对于后来的学弟学妹:
1)你有什么想建议、告知和期许想要告诉他们呢?
- 我觉得选这门课是一个不错的选择,虽然你会花掉挺多时间,但是你收获的肯定和你花的时间成正比
- 如果你学习的自觉性不高,或者不知道学点什么,或者想提升下综合能力,选这门课不会错
2)特别地,特别地,下一届要不要中途换队员(强制的、彻底的从一队换到另一队)?
假设依旧是一个90+人数的大班
- 我觉得可以,和新的人配合协作,也算是一种锻炼,不错的方式
3)身在一个格外大的班级,竞争强劲,你认为一个组的人数应当在多少比较合适?
- 8-10人
4)个人/结对/团队作业应该控制在怎样的规模?
- 我觉得这学期这样的规模还挺好的
5)这学期下来,你最感谢的人是谁?有什么话想要对TA说呢?
- 我团队的队长,在他的带领下,我们一起协作一起付出也有得到真正看得见成果,是一件比较开心的事情
四、分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
**萌芽阶段: **
- 一开始大家都处在这个阶段,对于选题的争论和考虑,对于大量未知不太可预测事情的焦虑,但最终度过这个阶段,事情大部分都定下来了。
磨合阶段:
- 在两次版本的冲刺中,不断的进行互相的配合和交流,大家一起协作,一起共同开发的气氛很好,但是有些事情还是会存在不同的看法,还需要进行不断的磨合才能让团队变得更加好
五、怎样证明你学会了软件工程?
1)研发出符合用户需求的软件
- 在团队的不断合作和配合开发下,研发出了“草履记”,一款记录、分享你旅游足迹、故事的产品。
- 用户量还是有的,而且问过都对ui的设计较为喜欢
必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
2)通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
- leangoo上的记录,每次例会的说明,大家都能够很清楚的知道自己在现阶段该做什么,还有什么没做,不会觉得很迷茫,不会感觉自己什么都没做然后不知道做什么
- 团队一起开发,大家的互相配合,都很有积极性,而且氛围很好
有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
3)并且通过数据展现软件是可以维护和继续发展的。
- 团队建设有功能优先图,UI规范文档,Bugs清单以及优化清单,通过github展示维护代码。
而不是 找不到源代码,代码无文档,代码不能编译,没有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
七、个性发挥,包括图文、照片和创意等
草履记小程序