3.13阅读笔记6
整体部分
13.1 许多失败完全源于哪些产品未经确定以的地方。
13.2 在编码前,规格说明必须提高给外部测试小组,以详细检查说明的完整性和明确性。
13.3 好的自上而下的设计从四个方面避免了bug。
13.4 有时必须回退,推翻顶层设计,重新开始。
13.5 结构化编程中,程序的控制结构仅仅由支配代码块给定的集合组成,可以有效避免bug。
13.6 系统调试相对于单元测试所花费的时间会比预料的更长。
13.7 必须有人对变更和版本进行控制和文档化,团队成员应使用开发库的各种拷贝在工作。
13.8 系统测试期间,一次只添加一个构件。
祸起萧墙
14.1 一天一天的进度落后比起重大灾难更加难以识别、不易防范,难以弥补。
14.2 根据一个严格的进度表控制住大型项目的第一步是制定进度表,由里程碑和日期组成。
14.3 里程碑必须是具体、特定和可度量的事件,能进行清晰的定义。
14.4 PERT的准备工作是PERT图使用中最有价值的部分。必须有评审机制来获取真正状态。
14.5 对于大型项目,一个对里程碑报告进行维护的计划和控制小组非常可贵。
另外一面
15.1 对于软件编程产品来说,文档和代码同样重要。
15.2 即使对于完全开发给自己用的程序,描述性文字也是必须的。
15.3 最小化文档负担的3个关键思路:借助名称和声明等来附加尽可能多的信息;使用空格和格式来表现从属和欠条关系,提高可读性;以段落注释,特别是模块标题,向程序中插入必要的记叙性文字。