需求内容
* 系统的所有输入都定义了吗?包括来源、精度、取值范围和频率?
* 系统所有的输出都定义了吗?包括目标、精度、取值范围、频率和格式?
* 所有的报告格式都定义了吗?
* 所有的硬件与软件接口都定义了吗?
* 所有的通信界面都定义了吗?包括握手、错误检查以及通信约定?
* 是否从用户的观点出发,定义了所有必要操作的反应时间?
* 是否定义了时间问题,如处理时间、数据传输率以及系统吞吐能力?
* 是否对用户所要求完成的任务都作出了规定?
* 每项任务所需要用到和产生的数据都规定了吗?
* 规定保密级别了吗?
* 规定可靠性了吗?包括软件出错的后果、在出错时要保护的至关重要的信息、以及错误测试和恢复策略。
* 规定所需最大内存了吗?
* 所需最大存储容量规定了吗?
* 对系统的维护性是否作出了规定?报错系统对运行环境、精度、性能以及与其它软件的接口等方面变化的适应能力规定了吗?
* 是否规定了相互冲突的设计之间的折衷原则,例如:在坚固性和准确性之间如何进行折衷?
* 是否指定了系统成败的标准?
需求的完善性
* 在开发开始前暂时得不到的信息是什么?是否规定了不够完善的区域?
* 需求定义是否已经完善到了可以成为软件标准的地步?
* 需求中是否有哪一部分让你感到不安?有没有根本不可能实现,而仅仅为了取悦老板和用户才加进来的内容?
关于需求的质量
* 需求是否是用用户的语言制定的?用户也这样认为吗?
* 需求中是否每一条之间都尽量避免冲突?
* 需求中是否注意了避免规定设计工作?
* 需求在详细程度方面是否保持了一致性;有没有应该更详细些的需求?有没有应该更简略些的?
* 需求是否明确得可以分为一些独立的可执行部分,而每一部分又都很明了?
* 是否每一条都与问题和回答相关?是否每一条都可以追溯到产生它的环境中?
* 是否每一条需求都可以作为测试依据?是否可以针对每一条进行独立测试以确定是否满足需求?
* 是否对可能的改动作出了规定?包括每一改动的可能性?
转载于:https://my.oschina.net/seraphln/blog/662462