个体软件过程思考题及答案

1. Explain how the number in the Plan column for "Total New & Changed" of the PSP Project Plan Summary form is determined.
    先把代码主要框架分成几个代码块,然后从历史数据中找到这几个代码块的平均代码行数,加起来。

2. Explain how the number in the Actual column for "Total New & Changed" of the PSP Project Plan
    自己新写的加上原先代码中修改过的。

3. Though many aspects of a software project contribute to its quality, PSP only uses one metric for quality. What is it? Why does PSP use a single number to measure quality?
   缺陷。
找到并修复defects对提高软件质量很重要,即使很多其他的代码数据也对质量很重要;但因为defect是客观的而且是易于计算的,所以使用它。


4. Explain why earned value tracking gives no credit for partially completed tasks.
    只有一个任务完全完成之后才可以计算积分,一个部分完成的任务没法计算积分。

5. Why is it usually faster to correct errors found in code reviews than in testing?
P159
课件上:最好在刚刚写完源代码之后和开始编译与测试之前更正错误,因为这时候你最有可能记得代码的意图并且知道如何修改问题。
课本上:一些软件defects是由于一些小疏忽引起的,它们容易在你刚刚完成设计和代码的时候被发现,这个时候你最有可能记得代码的意图并且知道如何修改问题。在代码复查时更正错误比编译和测试时在更正要节约很多时间。

6. How can a commercial software developer estimate the yield from software testing?
老师说的是  通过历史数据估计
一个commercial developer可以在产品发布后规定一段时间来收集积累缺陷数。
那时,开发商可以重新计算产品中存在的实际缺陷数和测试阶段的效益(和其他阶段)。


7. If two different CS 350 students count LOC differently, their data can be equally useful for projecting LOC in new projects. Explain why.
他们每个人使用各自的计数规则来计数代码行,只要它们在不同的工程中使用了一致的规则并且使用了一种合理的技术就可以。


  
Why can "unbiased" time estimates for a new project more useful than accurate time estimates?
在一个大工程项目中,经常要估计工程每一个部分所需的时间。
如果个人部分的估计至少在统计学上是公正的,那么每一个部分都可能是一致高或者一致低。
合计个人估计将会获益于删除较高或较低的估计。

这一个不大好翻译,下面是我看的课本上的。。

实际上  想要准确的估计时间是很困难的
我们应该学着做"unbiased" time estimates也就是做大约相同数目的高估和低估,并通过记录、研究这些估计来以后更好的估计,你就会知道高估和低估之间最大的范围,帮你判断承担一个你无法满足的项目的风险。
8. What is wrong with using the following statement as a project checkpoint: "On March 31, testing will be 50% complete."

     模糊 不具体
9. Explain why earned value tracking gives no credit for partially completed tasks.
10. Why should error logs change code review checklists?
    私人错误日志能确定个人写代码时产生的问题。最初的checklist太具有一般性,无法反映个人的特点。所以一个人可以使用能够反映个人特点的错误日志来改善他的checklist,通过添加他经常出现的问题。


11. Why does PSP require that code reviews be performed before code is compiled?
    不论编译前或编译后,进行完整的代码复查的时间大约相同;不论编译前或编译后,对检查语法有效性的效果是一样的;先做复查将节省大量编译时间,若不做代码复查,一般要花12%~15%的开发时间进行编译,一旦使用代码复查后,编译时间可以缩短至3%或更少;编译程序后,代码一般复查很难彻底的进行; 经验证明,在编译阶段有大量的缺陷时,一般在测试阶段也有许多缺陷。

12. Explain how code review yield is determined.
    100×(代码复查阶段发现的缺陷数目除以所有缺陷数目)

13. Is code reviews for Java should use a different checklist from those used for C++?
   是的


14. IS use of PSP techniques for estimating the time required for a new project will result in more accurate time estimates?
    是的

15. It is usually faster to correct errors found in code reviews than in testing, isn’t it?
   是的

16. A compiler can find syntax errors more efficiently than in a code review, isn’t it?
   是的

17. The quality of your programs is determined by the quality of your process. The quality of your process is determined by the way you work.
    是的


18. 解释Cost of Quality (COQ),AF/R 的含义。
   Appraisal COQ=100*(RA +CA +TA)/totaltime
Failure COQ=100*(RF +CF +TF)/totaltime
Appraisal COQ: sum of all review time as a percentage of total development time;
Failure COQ:  sum of all compile and test time as a percentage of total development time;


19. The first step in doing code reviews is to understand the kinds of defects you inject, isn’t it?是的
20. A checklist contains a series of steps we should to follow precisely, isn’t it?

  是的
21. Should use different checklists for different languages?
是的

22. 解释project plan与Period plan。
Period plan:阶段计划是关于这段时间内对时间的安排。
Project plan:产品计划是关于制作产品活动期间的时间安排。

23. 解释软件开发过程。
1. 制定目标
2. 分析目标
3. 了解过程
4.调整过程
5.分析结果
6.将结果与目标比对
7.如果结果与目标差距较大,则重复4~6步骤。

24. What a checkpoint is? 
Break the work into several parts.   将工作打破为几部分。    When each part is completed,you have made a defined level of progress.当每一部分完成,你就提升了一个高度。
Measurable schedule points like this are called checkpoints or milestones. 像这样的可测点被称为检查点或里程碑。


25. In time estimation, unbiased time estimates are more useful than accurate time estimates, isn’t it?

是的
26. Use of PSP techniques for estimating the time required for a new project will result in more accurate time estimates, isn’t it?
是的
27. 学会填表:时间记录日志,周活动总结表,缺陷记录日志,project plan summary

猜你喜欢

转载自king-lan.iteye.com/blog/1484258