个人作业5-----软工个人总结
一、请回望开学时的第一次作业,你对于软件工程课程的想象
1、对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
(1) 达到的目标:在课程结束的同时,我们团队所做的小程序发布。在这过程中,我们都学会了软件的开发步骤以及开发一个软件所要经历的几个阶段,虽说过程是十分艰难的。但最后也尽自己的努力完成了该项目。
(2)不足的方面:写代码的能力还是很欠缺,小程序的功能还有所欠缺,因为前期的准备很不充分,还有很多东西不会,导致项目最后很托,时间安排也不合理。
2、总结这门课程的实践总结和给你带来的提升,包括以下内容:
- 1)统计一下,你在这门课程中,完成了多少行的代码
我做的是前端的开发,代码差不多500行吧。
- 2)软工的各次作业分别花了多少时间?(做一个列表)
作业 | 时间/h |
个人阅读作业1 | 2.5 |
结对编程练习 | 6 |
人阅读作业2——提问题 | 4 |
软工网络15团队作业1——团队组队&展示 | 1 |
个人作业3——案例分析 | 2 |
团队作业2——团队计划 | 2 |
团队作业3——需求分析与设计 | 2 |
Alpha阶段敏捷冲刺 | 40 |
团队作业5——测试与发布 | 2 |
团队作业6——展示博客 | 2 |
alpha阶段项目复审 | 2.5 |
团队作业7——alpha阶段之事后诸葛亮分析 | 1.5 |
个人作业4——alpha阶段个人总结 | 1 |
团队作业8——敏捷冲刺(Beta阶段) | 35 |
团队作业9——项目验收与总结 | 2 |
beta版验收互评 | 1.5 |
个人作业5——软工总结 | 2 |
- 3)哪一次作业让你印象最深刻?为什么?
印象最深刻的应该是两个冲刺阶段:alpha冲刺阶段之前我们并没有做小程序的基础知识,所以这个阶段遇到的问题超级很多,这个阶段做了界面的设计,功能也没有写。还有就是beta冲刺阶段,这个阶段相对于alpha阶段好了一点,基本实现了我们小程序的预期功能,虽然还有一些没做出来,但是已经进步很大了
- 4)累计花了多少个小时在软工上?平均每周花多少个小时?
没有算过感觉好多大概150小时左右,每周大约4小时左右
- 5)学习和使用的新软件;
leangoo看板、墨刀原型设计
- 6)学习和使用的新工具;
微信小程序开发工具、码云、知晓云
- 7)学习和掌握的新语言、新平台;
新语言:js/wxml/wxss 新平台:微信小程序开发工具、知晓云
- 8)学习和掌握的新方法;
代码规范,代码管理
- 9)其他方面的提升。
体会到了软件开发的过程,完成了小程序的开发,代码能力有一点点提升。
二、写下属于自己的人月神话——个人或结对或团队项目实践中的经验总结+实例/例证结合的分析
(1)关于个人项目:规划好自己的时间,努力完成自己的项目,上课认真听讲,遇到问题多提问。平时多写代码,提高自己的能力
(2)关于结对项目:跟自己熟悉的人进行,最好能力比自己强的,可以弥补自己的不足。在实践过程中有问题也可以比较好的解决
(3)关于团队项目:选择适合自己团队的项目,每个人都承担起自己的责任,努力完成自己的任务,很好的跟团队成员沟通和交流,但遇到问题时,积极提出来,一起解决,一定要配 合好,不要有矛盾
三、对下一届实践的建议,或者对于开学初的你,对于大一的你,对于开学初的我,你有什么想建议和告知的呢?对于后来人的期许。对于换人机制,有什么样的建议?
对自己的建议:好好学习编程,提高自己的编程能力,对这个专业多点爱
对后来人的期许:好好学好基础知识,多多编程,多多实践
对于换人机制:团队之间商量好就好了。
四、分析一下自己所处的团队。软件工程实践是大学里少有的认真的团队协作经验。《构建之法》上说团队的发展有几个阶段,你的团队都经历过么,最后到达了“创造”阶段了么?(参考《构建执法》第17章 人、绩效和职业道德)
团队的发展有四个阶段:萌芽阶段、磨合阶段、规范阶段和创造阶段。我们的团队经历了前三个阶段,没有到创造阶段。
五、怎样证明你学会了软件工程?
1、研发出符合用户需求的软件
- 必须公开发布,有实际的用户,一定的用户量和持续使用量 (3 天后能保持10 - 100个用户);而不是: 做没有用户使用的软件
我们的小程序发布的比较晚,用户量很少,而且后期也没有宣传
2、通过一系列工具,流程,团队合作,能够在预计的时间内发布 “足够好” 的软件
- 有项目规划/需求/设计/实现/发布/维护,有定时的进度发布 ; 而不是: 通过临时熬夜,胡乱拼凑,大牛一人代劳,延迟交付等方式糊弄
可以通过团队博客看,还是用了leangoo看板:(https://www.leangoo.com/kanban/board/go/2404218)
Alpha阶段:(https://www.leangoo.com/kanban/board/go/2376778)
Beta阶段:(https://www.leangoo.com/kanban/board/go/2404218)
3、并且通过数据展现软件是可以维护和继续发展的。
- 而不是 找不到源代码,代码无文档,代码不能编译,没有task/bug 等项目的发展资料
码云地址:(https://gitee.com/whting/word_wechat_applet/tree/beta/)
六*(附加题)、阅读软件工程中关于代码质量的的经典论文,从下列文献中选择一篇或若干篇,结合自己的实际做一个阅读笔记(例如,自己写的代码质量如何,是不是一个大泥球,如何衡量自己代码的质量)?从以下参考论文中选择一篇或若干篇:
参考论文文献:
- [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