课下作业1-扩展阅读
1.Steve McConnell 软件估计的 10 种罪:http://www.ewh.ieee.org/r5/central_texas/austin_cs/presentations/2004.08.26.pdf
2.Quora精选: 为什么软件开发周期总是预估的2~3倍:http://jandan.net/2013/07/16/quora-software-development.html
个人理解:首先软件开发有许多难以预知的事情,比如开发人员的失误,管理不到位,或者方法不对。比如需求分析的周期是挺长的,如果没有用户的亲身投入那么需求有可能不完全,这样后面再回过头来解决需求问题,成本变高了,周期相应也变长了。软件开发周期是一个多阶段的过程,每个阶段都要需要完成相应的任务。如果一个阶段的问题不能够及时的发现到下一个阶段或者最后才发现,成本、代价会更高,周期也会变长。
总结:这两篇文章说明了软件估计的难度