回顾你的课程计划,你完成的程度如何,请列出具体数据和实际例子
在课程计划中,我认为比较重要的技能有Overall, Comprehension, Design, Implementation, Communication, BigData. 通过这次软件工程课程的学习,我觉得在Overall, Implementation, Communication方面有了较大的提升,平均每周的投入时间大概在8~9个小时,时间投入方面基本符合预期。
你在课程开始快速浏览了《构建之法》,提了5个问题,请回顾那些问题,自己回答它们,如果不能回答,为何软件工程课不能让你回答这些问题?
- P79 第四章 两人合作
通过这次黄金点游戏的作业,我感受到了结对编程确实可以提高任务完成速度,但同时也产生了一个疑问,完成任务的过程中对于出现的问题,如果有两个人都不能立刻给出解决方案,都需要思考学习,那么在这种情况下如果一起学习或者思考,会不会由于学习习惯和知识储备不同导致效率太低呢。
通过实践体会到了,两人合作并不是之前什么准备都不做,而且遇到的一些小问题,解决的人多了,思路开阔,反而更快。
2. P105 第五章 团队和流程
我认同用户反馈是十分重要的,但是个人觉得用户的反馈也不能全部相信,有太多不确定或者不真实的可能性,所以我很好奇在真实的企业软件开发流程中,是否会处理这个问题,如果有的话,具体会怎样去做呢。
用户反馈确实存在一定的不确定性,可以通过增加反馈数量等减小风险
3. P280 第十三章 软件测试
对于探索式测试,如果测试流程不可重复,那么怎样来保证测试出来的bug已经被修复了呢。
项目中没有遇到这个问题,暂时无法回答
4. P158 第八章 需求分析
我觉得这类做法还有一个问题,就是用户如果对两者都不是很赞同/喜欢,也同样会被迫选择一项,这样问卷发起者就会得到一部分并不真实的信息,影响最终的决策。可以加一个“都不想选”的选项,用来过滤掉一些没有参考价值的信息。
这次课程中并未进行大规模的需求分析调查
5. P253 第十二章 用户体验
这的确是一个发现问题的好方法,但是如果由于内部测试版不稳定从而丢失重要的数据,会不会造成损失呢,感觉这样子反而得不偿失了。
邹老师对此进行了评价,我十分认同,虽然两者都有风险,但相对来讲,还是要选择风险小的那一个,并且如果内部有备份,很大程度上提供了保障。
看看还有什么新的问题产生,请列出来(2-3个)
暂时没有
你看了一些软件工程的文献, 你的团队也做了一两次 “事后诸葛亮”分析,可以再去看一遍,现在有什么新的感想?
有一个很深的感悟是既然打算先做MVP,那就首先要坚定的做完之后再添加其它的功能,而不可以在明知存在一些小bug的情况下,急于添加功能。还有对于一个产品来讲,不能像之前完成大作业一样,只求功能实现就可以了,架构也是十分重要的。
对比一些技能评价表,你有什么提高? 还有什么收获是不能用数字衡量的?
在Overall, Implementation, Communication方面有了较大的提升,另外对待软件工程的认识和态度也有了很大的改变。
设想一年之后, 你到了你职业发展的下一个阶段(高年级, 读研,工作),回头看这门课, 你对于这门课的教学方法, 老师和助教的工作,和其他课程的衔接,有什么意见和建议?
首先我觉得收获很大的是在这几周的时间内体会到了如何完成一个完整的项目,包括具体的技术方面和与队友的沟通交流方面,建议的话,想了解真正的有实际意义的项目是如何进展和规划的,希望可以有这方面的案例展现。