软件基础第二次作业
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zjlg/rjjc20 |
|---|---|
| 这个作业的目标 | 通读《构建之法》中课程提出三个问题 |
| 姓名-学号 | <刘涛>-<2018330301159> |
问题一
为什么要结对编程?
这一问题从“在结对编程中,因为有随时的复审和交流,程序各方面的质量取决于一对程序员中各方面水平较高那一位。”——第四章p79
我查了资料以后,发现结对编程的目的主要就是提高代码的准确度,减少后期bug的出现以达到节省后期修复bug的费用的目的。
根据我的实践,写代码时可以说只有作者本人才能很好的理解自己所写代码的目的,当把自己的代码给别人看时,别人往往不能理解自己所写代码的意思。
如果要让两个人共写一个程序,为什么不让两个人各自写一段程序,在让另一个给彼此检查。
所以我的困惑是,结对编程的真正意义是什么?
问题二
是不是没有bug才是一个好软件呢?
这一问题从:“BUG的多少可以直接衡量一个软件的开发效率、用户满意度、可靠性和可维护性。”—— 第1章。p15
我查了资料,有这些说法:不能说绝对没有BUG的软件,应该说成是"找不到BUG的软件",有没有BUG不知道,只是目前没找到;实际上不能存在没有bug的软件,Bug和软件如影随形。
根据我的实践,我得到这些经验:完全没有BUG的软件是很少的,往往软件能够满足用户需求时基本足够使用了,软件的开发需要兼顾成本,要尽可能的缩短开发时间,因此软件开发者不可能为了完全解决BUG无限延迟软件的发布时间。
所以我的困惑是:什么才能直接决定软件的好坏呢?
问题三
怎样才能进行有效的分工?
这一问题从“我们期望他们一上手就能设计出高质量的测试用例,不应该给他们那些低级的手工操作任务。分工还可能会导致一个软件的灵魂被切碎分给各个角色,每个功能都做的很卖力,但是整体就是不太行。”第14章p315中得出
我查了资料后发现要进行分工主要是先在团队建设和团队目标实现过程中,要保证团队关键成员的分工是合理的、有效的,如何做到让团队关键成员的有效分工呢?本文从四个方面进行介绍,帮助团队管理者在分配团队关键工作任务时,保证团队关键成员的分工是有效的,即明确团队工作目标、梳理团队关键工作、设定成员考核指标、分析团队成员特点、制定团队工作机制。
所以我的困惑是:怎样才能有效进行分工?

浙公网安备 33010602011771号