原则40:立即确定需求

正确的做法是:立刻不计代价,尽可能多地获取需求信息。

> 需求难以理解,更难以说明。错误的办法是草率地完成需求规则说明,匆忙地进行设计和编码,然后徒劳地希望:

* 任何系统都比没有系统要好;
* 需求迟早会解决;
* 或者,设计师在开发过程中会明确可以开发什么。

> 正确的解决办法:
* 和客户交谈;
* 收集数据,把理解的需求记录下来,并规划构建一个满足这些需求的系统;
* 如果预期需求会发生很大变化,可以用增量的方式开发(原则14);
* 做好需求规格说明。

Boehm, B., "Verifying and Validating Software Requirements and Design Specifications", IEEE Software, 1, 1(Jan. 1984), pp. 75-88.

©️ 201 Principles of Software Development