[软工] 提问回顾与个人总结
第一部分:问题回顾
1.对于结对编程4.5.2(P79)中引发的疑问如何解决?
问:对于“我习惯一个人写程序,不喜欢被别人盯着工作,这样我不自在,无法工作”等疑问,书中有提出,但并没有明确的解决方案。是否有着消除个人因素影响的办法,还是只能通过时间磨合?
答:结对编程并不一定要时刻都盯在一起,可以拿出一部分时间高效编程,其余时间可以有一定分工。时间有一定效果。
2.对于典型用户和典型场景10.1(P203)中用户需求的疑问?
问:漫画中理发师百分百执行了用户的要求,但是用户好像并不满意。但是,工程师根据用户的动机做了改动,最后却又不符合用户的心意,责任该判给哪方?此点是否有驳面向对象编程“指导书至上”原则?
答:我坚持百分百执行要求,我会给客人提示以重复确认,不背锅
3.对于用户体验12.1.1用户的第一印象(P250)的疑问?
问:第一印象是否值得花时间去考虑?个人认为重要的还是要看实用性。在百度搜回答强推的广告,下载页面都很好看,也避免不了下载安装完后狂喷辣鸡。
答:只要第一印象不是太差就好,实用性才是能留住用户的实质功能。
4.关于goto语句的使用?
问:在大一,老师就强烈反对使用goto这种极不稳定的语句。goto造成的后果可能是很严重的,是否值得为了程序逻辑舍弃一部分稳定性?
答:可以在一些地方使用,但是一定要谨慎并全面测试。goto用起来还是很方便的,既然有这种语法,就可以谨慎使用。
5.关于3.3.1考级之路的疑问?
问:计算机等级考试真的能反映一个人的真实水平吗?一些其他学校的同系同学都在考各种这样的计算机等级证书,但我航同学却不怎么热衷于这些证书。在现在这样考过了四级却不一定会英语,考到了驾驶证却不一定会开车的环境下,证书是否还和以往一样让人信服?
答:不管是级也好什么也好,总要有一些能实质性证明自己能力的东西,私以为项目经历比考级靠谱。
6.关于2.1.2单元测试谁来写?
问:单元测试如果让程序的作者来写,如何解决程序作者对于需求理解不明确导致单元测试不完善的情况?
答:对于这个问题,我仍保留疑问
第二部分:需求/设计/实现/测试/发布/维护阶段中都学到的知识点
1.需求
一定要充分调研,需求是整个系统的基石,需求不明确很难进行多次迭代扩展
2.设计
提前确定好框架结构,定好统一标准,有利于对接也能避免忙等待
3.实现
结对编程很需要,特别是后端实现上,能提高一倍的质量
4.测试
测试一定要趁早,大的bug极容易在发布前击溃已有工作
5.发布
前期的用户量还是主要取决于宣传工作的,能不能留得住用户就要看实际功能了
6.维护
在课程中也出现了很多被攻击的网站,维护还是要做好防护工作以及压力测试
第三部分:理解与心得
结对编程时期工作还比较顺利,毕竟学期之初,也是抱到了大腿,总体开发还是很轻松愉快的,人数也不是大团体,没有出现合作上的偏差。在这个阶段,打下了合作编程的基础,也算是对团队工作的铺垫。
团队编程时期担任了PM,介于本人比较划水,时间也是由于参加了竞赛而紧张,技术上的收获有限,主要还是学到了一些团队相处的经验。团队的磨合与合作还是主要的问题,一定要认真仔细的交流,否则很容易出现对接偏差。这门课程是这学期耗时最长的课程,也是收获最多的课程。
总体来说,经过一学期的学习,对软件工程有了新的认识,如果能重来,定能从容应对。