这个作业属于哪个课程 |
课程链接 |
这个作业要求在哪里 |
作业要求 |
团队名称 |
TEAM PANTHER |
这个作业的目标 |
完成一篇总结项目过程中自己的心得体会的博客,回顾课程,做自己的解答者
|
学号 |
姓名 |
201731062109 |
陈君益 |
201731062112 |
刘易 |
201731062111 |
刘成 |
201731062110 |
杨天 |
201731062113 |
刘东升 |
201731062130 |
胡春晗 |
一.个人心得总结:
通过本学期的理论学习,结对编程,团队项目,发现可能真的不太适合编程,逻辑思维能力不足,动手能力低下。在结对编程时,本该由我完成的模块,迟迟实现不了,在队友的帮助下,才勉强完成,而在团队项目时,虽然想贡献自己的力量,可能编程对我而言实在太难,还是由队长帮我完成本该我完成的内容。回想最初上这门课的目标,掌握软件工程的思想,可能也并没有掌握到精髓。上万这门课,才感觉到差异这么明显,在想尝试代码编写时,无力感那么明显。希望这种现象不会持续到大学结束。。。
二.问题解答:
1.<4.4代码复审p73>,代码复审包括自我复审、同伴复审、团队复审,而软件开发又注重效率成本,团队复审会消耗大量时间,是不是可以只采取同伴复审来达到提高效率,节约时间成本?
答:不可以。代码复审的目的是1.找出代码错误;2.发现逻辑错误,程序可以编译通过,但是代码逻辑是错误的;3.发现算法错误;4.发现潜在的错误;5.发现可能需要修改的地方。而前几种错误,再自我复审及同伴复审时,不一定能完全发现,而团队可以集思广益,发现代码中潜在的,存在逻辑的错误,并且及时发现错误,是提高效率的关键因素之一。因此是有必要的。
2.<4.5结对编程>,结对编程中的人员往往都是能力有差异的,如何避免“抱大腿”现象,此外两人轮换角色时,编程能力的高低势必影响对代码的理解,当由编程水平弱的占主导时,如何避免出错?
答:结对编程是两个人同时在一台电脑上进行,人员技术能力的差异在编代码的过程中会体现出来,但整体思路是两个人共同协商的,两者是处于同等地位,没有谁能主导谁,而是共同进步,共同完成项目过程。
3.<8.1需求分析>,在找寻需求时,如何评判这个需求是否值得花费人力,物力,财力去开发一款软件,如果这个需求受众范围很小,但却对他们有很大帮助,还值得开发吗?
答:开发项目前,需要进行可行性分析,其要以全面、系统的分析,以经济效益为核心,围绕影响项目的各种因素,运用大量的数据资料论证拟建项目是否可行。对整个可行性研究提出综合分析评价,指出优缺点和建议。最后在来决定是否可开发。
4.<12.1.6用户体验和质量>,书中提到“用户体验和质量相矛盾”,软件是开发出来给用户使用的,用户体验不应该也是属于软件质量本身的范畴吗?软件质量不应该存在与用户体验相矛盾。
答:项目实际开发过程中,很难尽善尽美,只能在二者中间找到平衡点,而如何找寻这个平衡点需要开发人员结合用户实际体验而找寻。
5.<6.1敏捷流程>,敏捷流程中的冲刺阶段,如若上一阶段没有结束,那下一阶段怎么开始?如果一直卡在当前阶段,又该如何?
答:敏捷流程需要开发人员高质量的工作,快速反馈,小组成员定时汇报,项目组长及时调整,以推动项目持续进行。